CVE-2026-107383: MariaDB Connector/Node.js heap memory leak in GeoJSON encoding

CVE-2026-107383 · Severity: high · CVSS 7.5 · Published 2026-10-08

MariaDB Connector/Node.js, a database driver for Node.js applications, fails to properly validate GeoJSON polygon data before encoding it for transmission to the database. An attacker can exploit this to cause uninitialized heap memory—which may contain sensitive data like session tokens, credentials, and encryption keys—to be written into the database where it becomes readable to other users and persists in backups.

Technologies: Mariadb Connector/Node.js, mariadb (npm). Vendors: Mariadb, npm.

Quick answers

Is CVE-2026-107383 exploited in the wild?
No. Junglewise Threat Intelligence has no report of CVE-2026-107383 being exploited in the wild.
How severe is CVE-2026-107383?
High severity, with a CVSS score of 7.5, published 8 October 2026.
Which products and versions are affected?
mariadb (npm) SEMVER:introduced=0,fixed=3.2.5.
Is there a fix for CVE-2026-107383?
Yes. mariadb (npm): upgrade to 3.2.5 or later. Until then: Validate that GeoJSON coordinates are properly nested arrays of numbers before passing the object as a parameter, or use query() instead of execute()/batch(), until upgraded. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.
How is CVE-2026-107383 attacked?
It is attacked over the network.
Am I affected by CVE-2026-107383?
Check whether you run Mariadb Connector/Node.js or mariadb (npm) at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

How to fix

  • mariadb (npm): upgrade to 3.2.5 or later
    npm install mariadb@3.2.5

Validate that GeoJSON coordinates are properly nested arrays of numbers before passing the object as a parameter, or use query() instead of execute()/batch(), until upgraded.

Technical details

The binary protocol encoder for GeoJSON Polygon and MultiPolygon parameters allocates a buffer based on the numeric length property without first verifying the ring is a real array, then only writes data if the ring is an array. This leaves allocated but unwritten bytes in the output, which contain uninitialized Node.js heap. The vulnerability affects execute() and batch() methods; query() is unaffected because it uses a text encoder. Any object with type: "Polygon" or type: "MultiPolygon" reaches the vulnerable code path.

Affected products

  • MariaDB Connector/Node.js

Identifiers

  • CVE-2026-107383
  • GHSA-48qf-xh34-q73r

Timeline

  • 2026-10-08: disclosed

This page as Markdown. Free to reuse under CC BY 4.0 with a link back.