Public mode

No access to your tenant or devices. Every item links to its source. What this means

Sources need attention Customize Public modeDiscuss ChangeIntel on Discord

Integer Underflow → Heap Out-of-Bounds Read in `bson_new_from_buffer()

CVSS 4.0 6.9 MEDIUMCVSS 3.1 5.3 MEDIUMCheck source for fixed versionsKEV status unknown

cve-program · CVE-2026-93395

Published

A missing lower-bound validation in the bson_new_from_buffer() function of libbson allows an integer underflow when processing BSON data with a zero-length prefix. The function reads a 32-bit document length from the input buffer but does not verify that the value is at least 5 (the minimum valid BSON document size) before using it in an array index calculation. When the length field is zero, the expression used to check the document's null terminator wraps to UINT32_MAX, causing a heap out-of-bounds read that crashes the process. An unauthorized party who can supply crafted BSON input to an application using this API can cause a denial of service.

Read the publisher's advisory

Affected versions, risk and source history

cve-program · CVE-2026-93395

Published

C Driver

Vendor product

Publisher's version information

Shown as published. These rules are not interpreted as NuGet package version ranges.

{
                    "vendor": "MongoDB Inc.",
                    "product": "C Driver",
                    "versions": [
                        {
                            "status": "affected",
                            "version": "2.0.0",
                            "lessThan": "2.3.1",
                            "versionType": "semver"
                        }
                    ],
                    "defaultStatus": "unaffected"
                }

Original source record · Cite this exact observation · Complete original publisher JSON

ChangeIntel

An IT change radar: releases, security, known issues, retirements, documentation changes, and service status from public sources. Every item links to supporting evidence; dates and statuses can change after they are read.

Sources read 13 Nov 04:05 UTC · 274 of 275 readable · 272 fully read · documentation 469/469 current