Skip to main content

MariaDB Server EUVDEUVD-2026-102942

| CVE-2026-85745 MEDIUM
Buffer Over-read (CWE-126)
2026-10-16 GitHub_M
4.3
CVSS 3.1 · Vendor: GitHub_M
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Authenticate with low-privileged MariaDB account
  2. Exploit
    Submit malformed WKB MultiPolygon
  3. Execution
    Trigger ST_Area out-of-bounds read
  4. Impact
    Leak adjacent memory to defeat ASLR

Vulnerability Assessment

Weakness
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Buffer over-read prevention
Exploitation Conditions

Requires an authenticated, low-privileged MariaDB account (PR:L) with the ability to execute SQL that passes attacker-controlled malformed WKB spatial data to the affected geometry functions - ST_Area, ST_Centroid (MultiPolygon), or GLength (MultiLineString). Affected builds are MariaDB server 10.6.1 up to (but not including) the fixed releases 10.6.28, 10.11.19, 11.4.13, 11.8.9, 12.3.3, and 13.0.2; patched versions are not exploitable. Key limiting factors: valid database credentials are mandatory (no unauthenticated path), impact is confined to a bounded memory over-read with no write/corruption, and the leak is only operationally valuable when combined with a separate vulnerability in a chain - it does not by itself grant code execution or data modification.

Impact

This is a genuinely low-to-moderate priority issue despite being network-reachable. The CVSS 3.1 vector (AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N, base 4.3 MEDIUM) is internally consistent with the description: a low-privileged remote attacker (PR:L) triggers an out-of-bounds read (CWE-126) that yields only limited confidentiality impact (C:L) and no integrity or availability impact. The description itself frames the flaw as a memory-disclosure primitive 'useful for bypassing ASLR as part of a multi-vulnerability chain' - i.e., not independently exploitable for code execution, which aligns with the low C impact and absence of I/A. No EPSS score, no CISA KEV listing, and no public exploit (POC) are present in the provided data, so there is no evidence of active or widespread exploitation. The source-code evidence (patch commit 2bf355e and test cases returning NULL / triggering ASAN) confirms the bug is real and fixed, but the test cases show the server returns NULL rather than crashing, reinforcing that this is an info-leak, not a DoS. Net: a legitimate defect worth patching on a normal cycle, but not an emergency - its value to an attacker depends on chaining it with other vulnerabilities. No key signals conflict; the main missing data are EPSS, KEV, and POC status (none supplied, meaning unknown rather than negative).

Exploit ScenarioDerived

An attacker holding a low-privileged MariaDB account (PR:L) with the ability to run SQL submits a crafted, malformed WKB MultiPolygon value to a spatial function such as ST_Area(). The multi-polygon parser advances past a nested geometry header without verifying enough input remains, causing an out-of-bounds read that leaks adjacent heap memory. The leaked bytes can reveal pointers useful for defeating ASLR, which the attacker then combines with a separate memory-corruption bug to achieve code execution. No public exploit code is identified at time of analysis.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 16, 2026

An out-of-bounds memory read in MariaDB Server's spatial (GIS) functions lets an authenticated but low-privileged database user pass a truncated WKB MultiPolygon or MultiLineString to ST_Area, ST_Centroid, or GLength and have the parser read past the end of the allocated buffer, returning adjacent heap bytes as a geometry result or error path. Affected releases are MariaDB 10.6.1 through the fixes in 10.6.28, 10.11.19, 11.4.13, 11.8.9, 12.3.3, and 13.0.2; exploitation requires valid credentials and the ability to submit attacker-controlled spatial data (CVSS 4.3, PR:L), and the leak is primarily useful as an ASLR-bypass primitive inside a larger exploit chain rather than as a standalone compromise. No public exploit code has been identified at time of analysis and the flaw is not listed in CISA KEV, so it should be treated as low-to-moderate priority and scheduled with routine patching; the vendor advisory GHSA-p7v9-24h4-mch8 and MDEV-40328 document the issue.

RemediationAI

Vendor-released patch: upgrade to MariaDB 10.6.28, 10.11.19, 11.4.13, 11.8.9, 12.3.3, or 13.0.2 depending on your branch; the fix is the bounds check in sql/spatial.cc delivered via commit 2bf355e361db85153fdfba7b8a0f0d114d6a26ce, with regression tests covering ST_Area, ST_Centroid, and GLength on malformed WKB. See the advisory at https://github.com/MariaDB/server/security/advisories/GHSA-p7v9-24h4-mch8 and https://jira.mariadb.org/browse/MDEV-40328 for the maintainer's statement, and the release tags listed in the affected products section for the corresponding binaries. Because privilege requirements are low but not zero, a workable compensating control until patching is to revoke INSERT/UPDATE/CREATE and FILE privileges on spatial columns, or restrict GIS functionality, from accounts that are not fully trusted - the trade-off is that legitimate geospatial applications and imports will break. A stricter interim measure is to reject untrusted WKB at the application boundary by validating or re-encoding geometry with ST_GeomFromWKB/ST_AsText before storage, since a well-formed payload never triggers the over-read; this adds parsing overhead and will not help for data already ingested. Restricting network reachability of the MariaDB port to trusted application hosts reduces the population of accounts able to reach the vulnerable functions but does not address insider or compromised-app paths, and none of these mitigations remove the need to patch, since the over-read is silent and cannot be reliably detected from query output alone. There is no indication of active exploitation, so remediation can be scheduled through normal change control rather than treated as an emergency.

Affected VersionsENISA

Server 10.11.1, < 10.11.19
Server 11.4.1, < 11.4.13
Server 13.0.1, < 13.0.2
Server 12.3.1, < 12.3.3
Server 10.6.1, < 10.6.28
Server 11.8.1, < 11.8.9

Affected Packages

euvd server fix: 10.6.28, 10.11.19, 11.4.13, 11.8.9, 12.3.3, 13.0.2

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

The root cause is CWE-126 (Buffer Over-read) in MariaDB's WKB/WKT spatial parser implemented in sql/spatial.cc. Multi-geometry types (MultiPolygon, MultiLineString) are serialized as a byte-order marker, a 4-byte type word, a 4-byte element count, and then a sequence of nested geometry records, each prefixed by a WKB_HEADER_SIZE (5-byte) header containing byte order and geometry type. The parser loops over those nested headers, and in the vulnerable code paths - Gis_multi_polygon::area(), Gis_multi_polygon::centroid(), Gis_multi_line_string::geom_length(), and Gis_multi_line_string::get_mbr() - it advanced the input pointer by WKB_HEADER_SIZE without first confirming that many bytes actually remained in the input buffer. Because spatial values are materialized into heap buffers sized to the supplied WKB length, a truncated payload such as the test vector x'0000000001060000000100000001030000' causes the pointer to step past the allocation, and subsequent parsing reads uninitialized/adjacent heap memory. The upstream fix (commit 2bf355e361db85153fdfba7b8a0f0d114d6a26ce) inserts a no_data(data, WKB_HEADER_SIZE) bounds check that returns an error before the advance, and refactors the get_mbr() call to pass data + WKB_HEADER_SIZE into get_mbr_for_points() rather than mutating the caller's pointer first. The affected component is identified by CPE cpe:2.3:a:mariadb:server:*:*:*:*:*:*:*:*, and the same fix was extended to the analogous MultiLineString (GLength) case noted in the accompanying regression tests, indicating the parser's bounds handling was systematically weak for nested geometry headers.

Know when MariaDB gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (GitHub_M) PRIMARY 4.3 MEDIUM
AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N
vuln.today AI 4.3 MEDIUM

Network-reachable SQL path with a low-privileged account (PR:L) and no user interaction; bounded out-of-bounds read yields limited memory disclosure (C:L) with no integrity or availability impact.

3.1 AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N
4.0 AV:N/AC:L/AT:N/PR:L/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

Attack Vector
Network
Attack Complexity
Low
Privileges Required
Low
User Interaction
None
Scope
Unchanged
Confidentiality
Low
Integrity
None
Availability
None

Lifecycle Timeline

2
Patch available
Oct 16, 2026 - 18:03 EUVD
CVE Published
Oct 16, 2026 - 16:30 cve.org
MEDIUM 4.3

DescriptionCVE.org

MariaDB server is a community developed fork of MySQL server. From 10.6.1 until 10.6.28, 10.11.19, 11.4.13, 11.8.9, 12.3.3, and 13.0.2, ST_Area reads beyond the allocated buffer when processing invalid WKB for a MultiPolygon because the multi-polygon parser advances past a nested geometry header without first verifying enough input remains. A low-privileged remote attacker can supply malformed spatial data to disclose memory useful for bypassing ASLR as part of a multi-vulnerability chain. This issue is fixed in versions 10.6.28, 10.11.19, 11.4.13, 11.8.9, 12.3.3, and 13.0.2.

Threat Intelligence Overview

Prevalence
High
MariaDB is a widely deployed enterprise and web-stack database server
Data Quality
4 sources
Confidence: Medium

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC No
EPSS N/A
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation· derived
None
System Exposure· derived
Open
Automatable· derived
No
Human Impact· derived
High

Priority Score

22
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +22
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

A buffer overflow occurs when a program writes more data to a memory buffer than it was allocated to hold, causing the excess data to spill into adjacent memory regions.

CVE-2016-6662 CRITICAL POC
9.8 Sep 20

Oracle MySQL through 5.5.52, 5.6.x through 5.6.33, and 5.7.x through 5.7.15; MariaDB before 5.5.51, 10.0.x before 10.0.2

CVE-2012-5613 MEDIUM POC
6.0 Dec 03

MySQL 5.5.19 and possibly other versions, and MariaDB 5.5.28a and possibly other versions, when configured to assign the

CVE-2014-0195 MEDIUM POC
6.8 Jun 05

The dtls1_reassemble_fragment function in d1_both.c in OpenSSL before 0.9.8za, 1.0.0 before 1.0.0m, and 1.0.1 before 1.0

CVE-2014-0224 HIGH POC
7.4 Jun 05

OpenSSL before 0.9.8za, 1.0.0 before 1.0.0m, and 1.0.1 before 1.0.1h does not properly restrict processing of ChangeCiph

CVE-2012-2122 MEDIUM POC
5.1 Jun 26

sql/password.c in Oracle MySQL 5.1.x before 5.1.63, 5.5.x before 5.5.24, and 5.6.x before 5.6.6, and MariaDB 5.1.x befor

CVE-2012-5612 MEDIUM POC
6.5 Dec 03

Heap-based buffer overflow in Oracle MySQL 5.5.19 and other versions through 5.5.28, and MariaDB 5.5.28a and possibly ot

CVE-2012-5611 MEDIUM POC
6.5 Dec 03

Stack-based buffer overflow in the acl_get function in Oracle MySQL 5.5.19 and other versions through 5.5.28, and 5.1.53

CVE-2014-3470 MEDIUM
4.3 Jun 05

The ssl3_send_client_key_exchange function in s3_clnt.c in OpenSSL before 0.9.8za, 1.0.0 before 1.0.0m, and 1.0.1 before

CVE-2016-6664 HIGH POC
7.0 Dec 13

mysqld_safe in Oracle MySQL through 5.5.51, 5.6.x through 5.6.32, and 5.7.x through 5.7.14; MariaDB; Percona Server befo

CVE-2014-0221 MEDIUM
4.3 Jun 05

The dtls1_get_message_fragment function in d1_both.c in OpenSSL before 0.9.8za, 1.0.0 before 1.0.0m, and 1.0.1 before 1.

CVE-2015-3152 MEDIUM POC
5.9 May 16

Oracle MySQL before 5.7.3, Oracle MySQL Connector/C (aka libmysqlclient) before 6.1.3, and MariaDB before 5.5.44 use the

CVE-2022-0778 HIGH POC
7.5 Mar 15

The BN_mod_sqrt() function, which computes a modular square root, contains a bug that can cause it to loop forever for n

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy