Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessCraft polygon BLOB with oversized ring count
-
ExploitDeliver via malicious SpatiaLite DB or ST_GeomFromWKB input
-
ExecutionVictim app parses geometry in ParseWkbPolygon
-
ImpactUncontrolled interior-ring allocation crashes process or corrupts 32-bit heap
Vulnerability Assessment
| Weakness |
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Memory allocation limits
|
| Exploitation Conditions | Exploitation requires the target application to parse an attacker-controlled geometry BLOB through ParseWkbPolygon - specifically by opening a malicious SpatiaLite database or by passing crafted WKB to the ST_GeomFromWKB function. The crafted polygon declares an interior-ring count that is not validated against the actual BLOB contents. Limiting factors: the CVSS vector is local (AV:L) and requires passive user interaction (UI:P), meaning a victim must load the malicious data; memory corruption beyond a crash is restricted to 32-bit builds, while 64-bit builds are expected to only experience a denial-of-service crash. Impact is confined to applications that expose SpatiaLite geometry parsing to untrusted input. |
| Impact | This is a moderate-priority issue, not a top-tier emergency. The CVSS 4.0 base score of 6.9 (Medium) is driven by a local attack vector (AV:L) requiring passive user interaction (UI:P) - the victim must load a malicious SpatiaLite database or feed attacker-controlled WKB into ST_GeomFromWKB. The dominant impact is availability (VA:H, process crash/DoS) with only low integrity impact (VI:L) and no confidentiality impact (VC:N), consistent with CWE-789 (memory allocation with excessive/uncontrolled size). No EPSS score was provided, there is no CISA KEV listing, and no confirmed public exploit code - the hackmd reference is a technical write-up, not verified weaponized PoC. A key nuance: the description uses the word 'attackers' and mentions input via ST_GeomFromWKB, which could suggest a remote data path, but the authoritative CVSS vector is AV:L, so exploitation depends on the application processing attacker-supplied geometry locally - verify the actual data-exposure path in your deployment. Heap corruption (and thus any memory-safety escalation beyond DoS) is explicitly limited to 32-bit builds; on 64-bit builds the realistic outcome is a crash. Net: real and worth patching, but closer to a reliability/DoS concern than a mass-exploitation RCE threat. |
| Exploit ScenarioDerived | An attacker crafts a polygon geometry BLOB with a declared interior-ring count far exceeding what the data actually contains, then distributes it as a malicious SpatiaLite database file or submits it as WKB to an application exposing ST_GeomFromWKB. When the victim application parses the geometry via ParseWkbPolygon, the unvalidated ring count drives an uncontrolled allocation, crashing the process or corrupting the heap on 32-bit builds. No confirmed public exploit code exists, though a technical write-up describing the flaw is published. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 18, 2026
libspatialite through 5.1.0 can be driven into uncontrolled memory allocation and denial of service when it parses a crafted polygon WKB geometry whose interior-ring count is not checked against the BLOB contents. The issue is reachable through malicious SpatiaLite databases or untrusted input passed to ST_GeomFromWKB, requires user interaction to load the crafted data, and can crash the process; on 32-bit builds the resulting heap corruption may be more severe. No CISA KEV entry or public exploit code was identified in the supplied intelligence, and the assessed impact is local denial of service with limited integrity impact.
RemediationAI
No vendor-released patch was identified at time of analysis. Until a fixed release is confirmed, avoid opening untrusted SpatiaLite databases and do not pass attacker-controlled WKB to ST_GeomFromWKB; if that function is not required, disable or remove it from exposed SQL interfaces. Validate and bound geometry input before SpatiaLite parsing, enforce memory and CPU limits with process isolation for SQLite workloads that must handle untrusted spatial data, and prefer 64-bit builds to reduce heap-corruption risk, though this does not eliminate the denial-of-service crash. Monitor the VulnCheck advisory at https://www.vulncheck.com/advisories/libspatialite-through-5.1.0-uncontrolled-memory-allocation-via-parsewkbpolygon-ring-count and the upstream source at https://www.gaia-gis.it/fossil/libspatialite/file?name=src/gaiageo/gg_wkb.c&ci=5a5528e8d2 for a patched version or commit.
Affected VersionsENISA
Affected Packages
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 flaw is in libspatialite's WKB parser, specifically ParseWkbPolygon in src/gaiageo/gg_wkb.c. SpatiaLite is a spatial extension to SQLite; it handles geometry BLOBs conforming to WKB and exposes functions such as ST_GeomFromWKB. WKB polygon encoding carries ring counts and point counts; CWE-789 uncontrolled memory allocation occurs because the code allocates interior-ring structures based on a declared count before verifying that the BLOB actually contains that many rings. A crafted BLOB can therefore force excessive allocation and, depending on pointer size, memory exhaustion/crash on 64-bit or heap corruption on 32-bit. The assessed CVSS 3.1 vector is AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:L/A:H, consistent with a local attack that requires a victim to load crafted geometry and primarily causes availability loss.
Know when Libspatialite 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
CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:P/VC:N/VI:L/VA:H/SC:N/SI:N/SA:N
Attacker-supplied data must be loaded locally by the victim (AV:L, UI:R); no auth needed to supply the BLOB (PR:N); impact is a crash (A:H) with minor heap integrity effect (I:L) and no data disclosure (C:N).
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
DescriptionCVE.org
libspatialite through 5.1.0 fails to validate the polygon ring count in ParseWkbPolygon, allowing attackers to trigger uncontrolled interior-ring allocation via crafted geometry BLOBs. Attackers can supply a crafted polygon in a SpatiaLite database or ST_GeomFromWKB input to crash the process or corrupt heap memory on 32-bit builds.
Threat Intelligence Overview
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.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.
EUVD-2026-103510
GHSA-w35v-6xgp-6m6w
NVD
CVE.org
EPSS
VulDB
Exploit-DB