VnlnHub Nagini
字数 1905 2025-08-12 11:34:46

VulnHub Nagini 靶场渗透测试教学文档

靶场概述

Nagini 是 VulnHub 上的一个基于哈利波特主题的渗透测试靶场,难度中等,涉及多种渗透技术。

靶场搭建

  1. 下载靶场

    • 下载地址:https://download.vulnhub.com/harrypotter/Nagini.ova
    • 文件格式:下载后为 ZIP 压缩文件,解压后得到 .ova 虚拟机文件
  2. 导入虚拟机

    • 使用 VMware 导入 .ova 文件
    • 网络模式:建议设置为 NAT 模式(与攻击机 Kali 保持一致)
  3. 启动配置

    • 导入后重启虚拟机完成靶场搭建

信息收集

  1. IP 发现

    • 扫描 NAT 网段(如攻击机 IP 为 192.168.1.128,靶机可能为 192.168.1.146)
    • 使用工具:nmap -sn 192.168.1.0/24
  2. 端口扫描

    nmap -sV -p- 192.168.1.146
    
    • 开放端口:
      • 22/tcp - SSH 服务
      • 80/tcp - HTTP 服务 (Apache 2.4.38)

Web 渗透

  1. 初步访问

    • 访问 http://192.168.1.146 仅显示哈利波特图片
  2. 目录扫描

    • 使用工具:dirb, gobusterdirsearch
    • 发现:
      • CMS 页面:使用 Joomla CMS
      • note.txt 文件
  3. note.txt 内容分析

    • 提示将使用 HTTP3 与特定域名进行进一步交流
    • 需要将域名添加到 /etc/hosts 文件
  4. HTTP3 访问尝试

    • 常规浏览器不支持 HTTP3
    • 可选方案:
      • Firefox Nightly (Windows 版)
      • 使用 quiche (HTTP3 官方工具)
    • 安装 quiche 失败后,发现可直接访问 /internalResourceFeTcher.php

SSRF 漏洞利用

  1. 漏洞确认

    • 访问 /internalResourceFeTcher.php
    • 测试协议:
      • file:///etc/passwd - 成功读取
      • http://localhost - 成功访问
    • 确认存在服务器端请求伪造(SSRF)漏洞
  2. 协议利用

    • file 协议:读取任意文件
    • dict 协议:获取软件版本信息
    • gopher 协议:构造特殊请求(最强大)
    • http/s 协议:探测内网
  3. 配置文件获取

    • 使用 Joomscan 扫描:
      joomscan -u http://192.168.1.146
      
    • 发现配置文件备份:/joomla/configuration.php.bak
    • 从中获取:
      • 数据库连接信息
      • Web 路径
  4. 数据库操作

    • 使用 gopher 协议构造 MySQL 请求
    • 使用工具生成 gopher exp
    • 查询 joomla_users 表获取管理员凭据
    • 修改管理员密码:
      UPDATE joomla_users SET password=MD5('newpassword') WHERE id=1;
      

获取 Web Shell

  1. 后台登录

    • 使用修改后的密码登录 Joomla 后台
  2. 模板编辑

    • 找到当前使用的模板
    • 编辑模板文件,插入反弹 shell 代码:
      • 使用 Kali 自带的:/usr/share/webshells/php/php-reverse-shell.php
      • 修改 IP 和端口
  3. 获取反弹 shell

    • 在 Kali 上监听:
      nc -lvnp 4444
      
    • 访问触发页面获取 shell

权限提升

  1. 用户目录探索

    • 在 snape 用户家目录发现 .creds.txt
    • 内容为 base64 编码,解码后获得 SSH 密码
    • 成功 SSH 登录 snape 用户
  2. SUID 提权

    • 在 hermoine 家目录发现具有 SUID 权限的可执行文件
    • 文件功能:复制文件
    • 利用方法:
      • 生成 SSH 公钥
      • 使用 SUID 文件将公钥复制到 hermoine/.ssh/authorized_keys
      • SSH 登录 hermoine 用户
  3. 获取 root 凭据

    • 在 hermoine 家目录发现 .mozilla 文件夹
    • 使用工具提取 Firefox 保存的凭据:
      • 工具示例:Firefox Decrypt
      • 获取 root 用户的 SSH 密码
    • 成功 SSH 登录 root 用户

关键工具与技术

  1. 扫描工具

    • nmap
    • dirb/gobuster
    • joomscan
  2. 漏洞利用

    • SSRF 多协议利用
    • gopher 协议构造
    • Joomla 后台利用
  3. 权限提升

    • SUID 滥用
    • Firefox 凭据提取
  4. 其他技术

    • 反弹 shell
    • 密码修改与破解
    • 文件权限利用

总结

Nagini 靶场涵盖了从信息收集到权限提升的完整渗透流程,重点考察了 SSRF 漏洞利用、CMS 渗透和多种权限提升技术。通过此靶场可以练习多种实际渗透中常见的技术组合。

VulnHub Nagini 靶场渗透测试教学文档 靶场概述 Nagini 是 VulnHub 上的一个基于哈利波特主题的渗透测试靶场,难度中等,涉及多种渗透技术。 靶场搭建 下载靶场 : 下载地址:https://download.vulnhub.com/harrypotter/Nagini.ova 文件格式:下载后为 ZIP 压缩文件,解压后得到 .ova 虚拟机文件 导入虚拟机 : 使用 VMware 导入 .ova 文件 网络模式:建议设置为 NAT 模式(与攻击机 Kali 保持一致) 启动配置 : 导入后重启虚拟机完成靶场搭建 信息收集 IP 发现 : 扫描 NAT 网段(如攻击机 IP 为 192.168.1.128,靶机可能为 192.168.1.146) 使用工具: nmap -sn 192.168.1.0/24 端口扫描 : 开放端口: 22/tcp - SSH 服务 80/tcp - HTTP 服务 (Apache 2.4.38) Web 渗透 初步访问 : 访问 http://192.168.1.146 仅显示哈利波特图片 目录扫描 : 使用工具: dirb , gobuster 或 dirsearch 发现: CMS 页面:使用 Joomla CMS note.txt 文件 note.txt 内容分析 : 提示将使用 HTTP3 与特定域名进行进一步交流 需要将域名添加到 /etc/hosts 文件 HTTP3 访问尝试 : 常规浏览器不支持 HTTP3 可选方案: Firefox Nightly (Windows 版) 使用 quiche (HTTP3 官方工具) 安装 quiche 失败后,发现可直接访问 /internalResourceFeTcher.php SSRF 漏洞利用 漏洞确认 : 访问 /internalResourceFeTcher.php 测试协议: file:///etc/passwd - 成功读取 http://localhost - 成功访问 确认存在服务器端请求伪造(SSRF)漏洞 协议利用 : file 协议:读取任意文件 dict 协议:获取软件版本信息 gopher 协议:构造特殊请求(最强大) http/s 协议:探测内网 配置文件获取 : 使用 Joomscan 扫描: 发现配置文件备份:/joomla/configuration.php.bak 从中获取: 数据库连接信息 Web 路径 数据库操作 : 使用 gopher 协议构造 MySQL 请求 使用工具生成 gopher exp 查询 joomla_ users 表获取管理员凭据 修改管理员密码: 获取 Web Shell 后台登录 : 使用修改后的密码登录 Joomla 后台 模板编辑 : 找到当前使用的模板 编辑模板文件,插入反弹 shell 代码: 使用 Kali 自带的:/usr/share/webshells/php/php-reverse-shell.php 修改 IP 和端口 获取反弹 shell : 在 Kali 上监听: 访问触发页面获取 shell 权限提升 用户目录探索 : 在 snape 用户家目录发现 .creds.txt 内容为 base64 编码,解码后获得 SSH 密码 成功 SSH 登录 snape 用户 SUID 提权 : 在 hermoine 家目录发现具有 SUID 权限的可执行文件 文件功能:复制文件 利用方法: 生成 SSH 公钥 使用 SUID 文件将公钥复制到 hermoine/.ssh/authorized_ keys SSH 登录 hermoine 用户 获取 root 凭据 : 在 hermoine 家目录发现 .mozilla 文件夹 使用工具提取 Firefox 保存的凭据: 工具示例:Firefox Decrypt 获取 root 用户的 SSH 密码 成功 SSH 登录 root 用户 关键工具与技术 扫描工具 : nmap dirb/gobuster joomscan 漏洞利用 : SSRF 多协议利用 gopher 协议构造 Joomla 后台利用 权限提升 : SUID 滥用 Firefox 凭据提取 其他技术 : 反弹 shell 密码修改与破解 文件权限利用 总结 Nagini 靶场涵盖了从信息收集到权限提升的完整渗透流程,重点考察了 SSRF 漏洞利用、CMS 渗透和多种权限提升技术。通过此靶场可以练习多种实际渗透中常见的技术组合。