CVE-2026-96749: Heap out-of-bounds write via signed size overflow in BSON document encoding
An integer overflow in the BSON document encoding component of the MongoDB Python Driver's bundled native extension may occur when a single document is built from an unusually large amount of caller-supplied data. Size arithmetic is performed in a signed 32-bit type, and the guard meant to catch the overflow is written in a form whose behavior is not defined by the C language standard. A party with no privileges who can place a very large value into data that an application encodes may, depending on how the native extension was built, cause a write outside the bounds of an allocated buffer inside the application's own process.
Affected Software
Event History
Frequently Asked Questions
Who is exposed to this issue?
Applications using the MongoDB Python Driver's bundled native extension are exposed when they encode a single BSON document containing an unusually large amount of caller-supplied data. An unprivileged party must be able to supply that data to the application.
Does exploitation require authentication or user interaction?
No privileges or user interaction are required according to the supplied CVSS vector. The attacker needs a path to cause the application to construct and encode one exceptionally large BSON document from supplied input.
What is the impact if exploitation succeeds?
Depending on how the native extension was built, the overflow can cause an out-of-bounds write in the application's own process. The stated impact includes high confidentiality, integrity, and availability effects.
How can I determine whether an application may be affected?
Review whether the application uses pypi/pymongo with its bundled native extension and accepts caller-controlled data that can be accumulated into a single very large BSON document. The supplied release reference identifies version 4.18.2, but the affected version range is not provided.