CVSS评分:8.7
CVE-2025-14847_ MongoDB 未授权内存泄露漏洞
- [1. 漏洞原理](#1. 漏洞原理)
- [2. 漏洞危害](#2. 漏洞危害)
- [3. 漏洞修复](#3. 漏洞修复)
1. 漏洞原理
CVE-2025-14847 是一个在 MongoDB Server 中发现的高危漏洞,由于 zlib 压缩协议处理逻辑的缺陷,攻击者可以在无需身份验证的情况下远程泄露服务器的内存内容(heap memory)
当 MongoDB 接收到经过 zlib 压缩的网络消息 时,服务器会:
- 解析压缩头部并读取声明的
uncompressedSize; - 分配一个缓冲区用于解压;
- 使用 zlib 解压内容到缓冲区前段;
- 错误地返回整个缓冲区长度 (output.length()) 而不是实际填充的解压大小。
这意味着:
- 如果攻击者构造的压缩数据声明的大小大于实际数据长度,
- MongoDB 会将 未初始化的堆内存(heap memory)内容作为合法解压结果返回,
- 导致敏感数据碎片泄露。
2. 漏洞危害
目前,多个 MongoDB 主版本线(3.6 -- 8.2)多个发布版本均受影响或已修复前版本均有漏洞存在,影响范围很广
漏洞允许攻击者通过精心构造的网络请求,逐步挖掘内存碎片,这些内存碎片可能包含:
- 明文或部分凭据(用户名/密码)
- 会话令牌和连接标识符
- API 密钥、云访问密钥(如 AWS、Azure、GCP)
- 客户端/服务端配置信息
- BSON 数据片段(数据库内容的部分内存视图)
- 内部运行时状态、路径、容器元数据等
虽然这不是一次性完整数据库泄露,但碎片组合足以支持进一步攻击,如凭据盗用、特权升级甚至横向移动。如果 MongoDB 部署在外网,建议立即修复
微步标记为高风险,目前该漏洞已经在野利用

3. 漏洞修复
1、升级受影响的 MongoDB 部署到官方修复版本:
| 分支 | 修复版本 |
|---|---|
| 8.2 | 8.2.3 + |
| 8.0 | 8.0.17 + |
| 7.0 | 7.0.28 + |
| 6.0 | 6.0.27 + |
| 5.0 | 5.0.32 + |
| 4.4 | 4.4.30 + |
2、禁用 zlib 压缩
MongoDB 配置文件(mongod.conf)
(1)禁用 zlib 压缩
yaml
net:
compression:
compressors: disabled
(2)仅允许 snappy
yaml
net:
compression:
compressors: snappy