Skip to main content

GNU LibreDWG EUVDEUVD-2026-31741

| CVE-2026-9503 LOW
NULL Pointer Dereference (CWE-476)
2026-05-25 VulDB GHSA-q6j5-wxg6-4vrv
1.9
CVSS 4.0 · Vendor: VulDB
View

Attack ChainAIDerived

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

  1. Access
    Obtain local low-privileged access
  2. Delivery
    Craft or obtain malformed DWG 2004 file
  3. Exploit
    Supply file to LibreDWG-linked application
  4. Execution
    Trigger read_2004_compressed_section with invalid address field
  5. Persist
    Bounds check absent, invalid memory access occurs
  6. Impact
    Null pointer dereference crashes parsing process (DoS)

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A10:2025 - Mishandling of Exceptional Conditions
ASVS 5.0
V16 - Security Logging and Error Handling Null pointer safety, defensive checks
MITRE ATT&CK

1 technique across 1 tactic: Impact

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Local system access with low privileges is required (AV:L/PR:L per CVSS 4.0 vector). The attacker must be able to supply a crafted DWG file to an application that invokes LibreDWG's DWG 2004 compressed-section parser - specifically, the file must use the 2004 compressed section format, as indicated by both the patch diff (read_2004_compressed_section) and the POC filename. No user interaction is required once the file is passed to the parser. Exploitation is limited to crashing the LibreDWG-linked process (local DoS); there is no path to remote exploitation, privilege escalation, or data disclosure. The SSVC 'Automatable: no' rating confirms this cannot be trivially scripted for mass targeting. Exploitation is further limited to contexts where an attacker can directly invoke or influence file parsing - LibreDWG deployed as a purely backend library processing only internally sourced files is not realistically at risk.

Impact

The CVSS 4.0 base score of 1.9 (AV:L/AC:L/AT:N/PR:L/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N/E:P) reflects a genuinely low-severity issue: local attack vector only, low privileges required, and impact limited to partial availability (process crash). EPSS at 0.01% (2nd percentile) corroborates negligible real-world exploitation probability. The vulnerability is not present in CISA KEV, confirming no confirmed active exploitation. SSVC assessment - Exploitation: poc, Automatable: no, Technical Impact: partial - aligns with these signals and further confirms this cannot be mass-exploited at scale. Despite a publicly available POC, all signals converge on a low-priority finding. One internal conflict: the exploit file is named for 'heap_oob_write_read' while CWE-476 (NULL Pointer Dereference) is assigned - the actual memory corruption primitive may be an out-of-bounds access rather than a pure null dereference; defenders should note that the precise crash type is inferred, not independently lab-confirmed from the provided data. This vulnerability is only a meaningful priority if LibreDWG is used in a service that automatically processes untrusted DWG files submitted by external or semi-trusted users.

Exploit ScenarioDerived

A local attacker with a low-privileged shell account on a system running a LibreDWG-linked application (such as a CAD file converter or document management tool) submits the publicly available POC DWG file (https://github.com/HackC0der/CVE-Repos/blob/main/libredwg/libredwg_6d6a339_heap_oob_write_read_2004_compressed_section.dwg) for processing. The malformed 2004 compressed section causes read_2004_compressed_section in src/decode.c to access memory at an address beyond the decompression buffer bounds, triggering a null pointer dereference and crashing the parsing process. The crash terminates the application or worker thread, achieving a localized denial-of-service; no code execution or data exfiltration is enabled by this primitive.

Monitor Track and reassess. Why: LOW severity (CVSS 0.1-3.9).
Patch available 0.0% exploitation probability (EPSS)

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

Alert me

AnalysisAIv1 – Jun 08, 2026

Null pointer dereference in GNU LibreDWG (all versions through 0.14) allows a local, low-privileged attacker to crash any application that uses the library to parse a maliciously crafted DWG file, resulting in a denial-of-service condition with no confidentiality or integrity impact. The affected code path is within the DWG 2004 compressed-section handler in src/decode.c, where missing bounds checks on section entry address fields permit invalid memory access. A public proof-of-concept exploit file exists; however, the vulnerability is not listed in CISA KEV, EPSS sits at 0.01% (2nd percentile), and SSVC rates it non-automatable with only partial technical impact, collectively indicating negligible in-the-wild exploitation risk at time of analysis.

RemediationAI

Upstream fix available (patch commit); a released patched version tag is not independently confirmed from the provided data - verify the latest tagged release on the LibreDWG GitHub repository (https://github.com/LibreDWG/libredwg) to confirm the commit is included. Build and deploy from a source revision at or after commit 8f03865f37f5d4ffd616fef802acc980be54d300. As a compensating control where patching is not immediately feasible, restrict which users can supply DWG files to LibreDWG-linked applications; since the attack vector is local (AV:L per CVSS), network-layer controls provide no mitigation. If LibreDWG is used in a file-processing service, sandbox the parsing process (e.g., using seccomp or a restricted container) so that a crash does not impact the parent service - this limits the DoS blast radius without altering library behavior. Do not rely on input filename filtering as a substitute for patching, as crafted DWG content is the trigger, not the file extension.

Affected VersionsENISA

libredwg 0.4
libredwg 0.8
libredwg 0.14
libredwg 0.12
libredwg 0.13
libredwg 0.9
libredwg 0.10
libredwg 0.1
libredwg 0.3
libredwg 0.7
libredwg 0.11
libredwg 0.6
libredwg 0.5
libredwg 0.2

Affected Packages

euvd libredwg no fix

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

GNU LibreDWG is a GNU/LGPL-licensed C library for reading and writing AutoCAD DWG binary files, identified by CPE cpe:2.3:a:gnu:libredwg:*:*:*:*:*:*:*:*. The vulnerable code resides in src/decode.c, within the read_2004_compressed_section function (as directly confirmed by the patch commit diff), which processes compressed section data found in DWG 2004-format files. The root cause class is CWE-476 (NULL Pointer Dereference), triggered when a crafted DWG file provides section entry fields (es.fields.address) that exceed the bounds of the decompression buffer (max_decomp_size or dec.size). The upstream fix at commit 8f03865f37f5d4ffd616fef802acc980be54d300 adds two missing bounds checks: '|| es.fields.address > max_decomp_size' and '|| es.fields.address + size > dec.size', preventing the out-of-bounds access before it can dereference an invalid pointer. Notably, the CVE description names dwg_next_entity as the affected function, while both the patch and the POC filename reference read_2004_compressed_section - the description appears to misattribute the specific function.

Know when Libredwg 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 (VulDB) PRIMARY 1.9 LOW
CVSS:4.0/AV:L/AC:L/AT:N/PR:L/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N/E:P

Primary rating from Vendor (VulDB) · only source for this CVE.

CVSS VectorVendor: VulDB

Attack Vector
Local
Attack Complexity
Low
Attack Requirements
None
Privileges Required
Low
User Interaction
None
Vulnerable system: Confidentiality
None
Vulnerable system: Integrity
None
Vulnerable system: Availability
Low
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

Lifecycle Timeline

1
CVSS changed
May 26, 2026 - 20:07 NVD
3.3 (LOW) 1.9 (LOW)

DescriptionCVE.org

A security flaw has been discovered in GNU LibreDWG up to 0.14. This impacts the function dwg_next_entity of the file src/decode.c of the component DWG File Handler. The manipulation results in null pointer dereference. The attack must be initiated from a local position. The exploit has been released to the public and may be used for attacks. The patch is identified as 8f03865f37f5d4ffd616fef802acc980be54d300. Upgrading the affected component is advised.

Threat Intelligence Overview

EPSS Score
0.0%
Top 98% exploitable
Exploit
POC
Public exploit code exists
Data Quality
7 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment GitHub VulDB

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 LOW
CISA KEV No
Public POC Yes
EPSS 0.0%
Patch available Yes
Active threat No
Deciding rule
LOW severity (CVSS 0.1-3.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
Defer
Exploitation
Poc
System Exposure· derived
Small
Automatable
No
Human Impact· derived
Low
Technical Impact
Partial

Priority Score

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

Attack Technique

A null pointer dereference occurs when a program attempts to access memory through a pointer that has been set to NULL (address 0x0).

Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.

CVE-2022-35164 CRITICAL POC
9.8 Aug 18

LibreDWG v0.12.4.4608 & commit f2dea29 was discovered to contain a heap use-after-free via bit_copy_chain. Rated critica

CVE-2021-28237 CRITICAL POC
9.8 Dec 02

LibreDWG v0.12.3 was discovered to contain a heap-buffer overflow via decode_preR13. Rated critical severity (CVSS 9.8),

CVE-2020-21844 HIGH POC
8.8 May 17

GNU LibreDWG 0.10 is affected by: memcpy-param-overlap. Rated high severity (CVSS 8.8), this vulnerability is remotely e

CVE-2019-9775 CRITICAL POC
9.1 Mar 14

An issue was discovered in GNU LibreDWG 0.7 and 0.7.1645. Rated critical severity (CVSS 9.1), this vulnerability is remo

CVE-2019-9774 CRITICAL POC
9.1 Mar 14

An issue was discovered in GNU LibreDWG 0.7 and 0.7.1645. Rated critical severity (CVSS 9.1), this vulnerability is remo

CVE-2020-21833 HIGH POC
8.8 May 17

A heap based buffer overflow vulnerability exits in GNU LibreDWG 0.10 via: read_2004_section_classes ../../src/decode.c:

CVE-2020-21841 HIGH POC
8.8 May 17

A heap based buffer overflow vulnerability exits in GNU LibreDWG 0.10 via bit_read_B ../../src/bits.c:135. Rated high se

CVE-2020-21840 HIGH POC
8.8 May 17

A heap based buffer overflow vulnerability exits in GNU LibreDWG 0.10 via bit_search_sentinel ../../src/bits.c:1985. Rat

CVE-2020-21838 HIGH POC
8.8 May 17

A heap based buffer overflow vulnerability exits in GNU LibreDWG 0.10 via: read_2004_section_appinfo ../../src/decode.c:

CVE-2020-21843 HIGH POC
8.8 May 17

A heap based buffer overflow vulnerability exits in GNU LibreDWG 0.10 via bit_read_RC ../../src/bits.c:318. Rated high s

CVE-2020-21842 HIGH POC
8.8 May 17

A heap based buffer overflow vulnerability exists in GNU LibreDWG 0.10 via read_2004_section_revhistory ../../src/decode

CVE-2020-21832 HIGH POC
8.8 May 17

A heap based buffer overflow vulnerability exists in GNU LibreDWG 0.10 via read_2004_compressed_section ../../src/decode

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