CVE-2026-88029 GridFS data disclosure and deletion via query-operator injection in file IDs in the MongoDB Python Driver
An authenticated user can inject query operators into file IDs to read unauthorized file content or delete all chunks in a GridFS bucket.
- Exploited in the wild
- Not known
- Login needed
- Any signed-in user
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2026-88029?
CVE-2026-88029 is a medium-severity SQL injection vulnerability in MongoDB Python Driver, published on 10 Sep 2026. Any signed-in user can exploit it over the network, with no action from the victim.
Official description
Improper neutralization of special elements in data query logic in the GridFS component of the MongoDB Python Driver can cause a caller-supplied structured file identifier to be interpreted as a query condition rather than as a literal identifier. An authenticated user who can influence the identifier passed by an affected application may obtain stored file content beyond the intended target or cause all GridFS file chunks in the affected bucket to be removed, rendering stored file content unreadable. The affected rename operation may also rename a stored file other than the intended target.
Weakness: CWE-943
Which versions are affected by CVE-2026-88029?
3 open source packages ship an affected version, including pymongo. It affects 1 product.
| Package | Affected | Fixed in |
|---|---|---|
pymongo PyPI | All versions | 4.18.1 |
pymongo PyPI | All versions | 4.18.1 |
pymongo PyPI | All versions | 4.18.1 |
Linux distribution packages (37)
python-nose-docs AlmaLinux:8 | All versions | 1.3.7-31.module_el8.9.0+3700+efebe9fd |
python-pymongo-doc AlmaLinux:8 | All versions | 3.7.0-3.module_el8.10.0+4300+ca04280a |
python-sqlalchemy-doc AlmaLinux:8 | All versions | 1.3.2-3.module_el8.10.0+3769+3838165b |
python-virtualenv-doc AlmaLinux:8 | All versions | 15.1.0-23.module_el8.10.0+3937+b6a3652f |
python3-PyMySQL AlmaLinux:8 | All versions | 0.10.1-2.module_el8.9.0+3700+efebe9fd |
python3-bson AlmaLinux:8 | All versions | 3.7.0-3.module_el8.10.0+4300+ca04280a |
python3-distro AlmaLinux:8 | All versions | 1.4.0-2.module_el8.9.0+3700+efebe9fd |
python3-docs AlmaLinux:8 | All versions | 3.6.7-2.module_el8.9.0+3700+efebe9fd |
python3-docutils AlmaLinux:8 | All versions | 0.14-12.module_el8.9.0+3700+efebe9fd |
python3-nose AlmaLinux:8 | All versions | 1.3.7-31.module_el8.9.0+3700+efebe9fd |
python3-pygments AlmaLinux:8 | All versions | 2.2.0-22.module_el8.9.0+3700+efebe9fd |
python3-pymongo AlmaLinux:8 | All versions | 3.7.0-3.module_el8.10.0+4300+ca04280a |
python3-pymongo-gridfs AlmaLinux:8 | All versions | 3.7.0-3.module_el8.10.0+4300+ca04280a |
python3-scipy AlmaLinux:8 | All versions | 1.0.0-21.module_el8.9.0+3700+efebe9fd |
python3-sqlalchemy AlmaLinux:8 | All versions | 1.3.2-3.module_el8.10.0+3769+3838165b |
python3-virtualenv AlmaLinux:8 | All versions | 15.1.0-23.module_el8.10.0+3937+b6a3652f |
python3-wheel AlmaLinux:8 | All versions | 1:0.31.1-3.module_el8.9.0+3700+efebe9fd |
python3-wheel-wheel AlmaLinux:8 | All versions | 1:0.31.1-3.module_el8.9.0+3700+efebe9fd |
python36 AlmaLinux:8 | All versions | 3.6.8-39.module_el8.10.0+3769+3838165b |
python36-debug AlmaLinux:8 | All versions | 3.6.8-39.module_el8.10.0+3769+3838165b |
python36-devel AlmaLinux:8 | All versions | 3.6.8-39.module_el8.10.0+3769+3838165b |
python36-rpm-macros AlmaLinux:8 | All versions | 3.6.8-39.module_el8.10.0+3769+3838165b |
python-PyMySQL Red Hat:enterprise_linux:8::appstream | All versions | 0:0.10.1-2.module+el8.10.0+20784+edafcd43 |
python-distro Red Hat:enterprise_linux:8::appstream | All versions | 0:1.4.0-2.module+el8.10.0+20784+edafcd43 |
python-docs Red Hat:enterprise_linux:8::appstream | All versions | 0:3.6.7-2.module+el8.10.0+20784+edafcd43 |
python-docutils Red Hat:enterprise_linux:8::appstream | All versions | 0:0.14-12.module+el8.10.0+20784+edafcd43 |
python-nose Red Hat:enterprise_linux:8::appstream | All versions | 0:1.3.7-31.module+el8.10.0+20784+edafcd43 |
python-nose-docs Red Hat:enterprise_linux:8::appstream | All versions | 0:1.3.7-31.module+el8.10.0+20784+edafcd43 |
python-pygments Red Hat:enterprise_linux:8::appstream | All versions | 0:2.2.0-22.module+el8.10.0+20784+edafcd43 |
python-pymongo Red Hat:enterprise_linux:8::appstream | All versions | 0:3.7.0-3.module+el8.10.0+25000+2cc6bf61 |
python-pymongo-debuginfo Red Hat:enterprise_linux:8::appstream | All versions | 0:3.7.0-3.module+el8.10.0+25000+2cc6bf61 |
python-pymongo-debugsource Red Hat:enterprise_linux:8::appstream | All versions | 0:3.7.0-3.module+el8.10.0+25000+2cc6bf61 |
python-pymongo-doc Red Hat:enterprise_linux:8::appstream | All versions | 0:3.7.0-3.module+el8.10.0+25000+2cc6bf61 |
python-sqlalchemy Red Hat:enterprise_linux:8::appstream | All versions | 0:1.3.2-3.module+el8.10.0+20981+3704b446 |
python-sqlalchemy-doc Red Hat:enterprise_linux:8::appstream | All versions | 0:1.3.2-3.module+el8.10.0+20981+3704b446 |
python-virtualenv Red Hat:enterprise_linux:8::appstream | All versions | 0:15.1.0-23.module+el8.10.0+22619+61b70790 |
python-virtualenv-doc Red Hat:enterprise_linux:8::appstream | All versions | 0:15.1.0-23.module+el8.10.0+22619+61b70790 |
Products include Mongodb Python Driver.
How do I fix CVE-2026-88029?
Upgrade pymongo to 4.18.1 or later.
Use parameterised queries everywhere and never build SQL by joining strings. Upgrade affected software first; a web application firewall only buys time. More about SQL injection.
Is CVE-2026-88029 being exploited?
There is no known exploitation of CVE-2026-88029 in the wild and no public exploit code.
Other vulnerabilities in MongoDB Python Driver
Sources
Also known as ALSA-2026:82858, DEBIAN-CVE-2026-88029, ECHO-8489-36a3-2f24, GHSA-8fvv-fgr5-f8ch, MINI-5qpc-6542-cwq3, PYSEC-2026-4294 and 4 more.