Skip to main content

Assimp CVE-2026-117608

| EUVDEUVD-2026-111543 MEDIUM
Integer Overflow or Wraparound (CWE-190)
2026-10-28 VulnCheck GHSA-jr35-9ffc-pmf8
6.9
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

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

  1. Access
    Craft malicious .md2 with overflowing numFrames/numVertices
  2. Delivery
    Deliver file to victim application using Assimp
  3. Exploit
    Application imports file via MD2 importer
  4. Execution
    32-bit size product wraps, bypassing bounds check
  5. Persist
    Heap out-of-bounds read triggered
  6. Impact
    Application crash or adjacent heap memory disclosure

Vulnerability Assessment

Weakness
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Integer overflow checks
MITRE ATT&CK

1 technique across 1 tactic: Execution

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

Exploitation Conditions

Exploitation requires a victim application that uses Assimp's MD2 (Quake II model) importer to parse an attacker-supplied .md2 file; the trigger is attacker-controlled numFrames and numVertices header fields whose product overflows the 32-bit size calculation in MD2Importer::ValidateHeader() and wraps past the fileSize bounds check. No authentication is required (PR:N), but the attack is local/file-based (AV:L) and needs the file to be delivered to and processed by the host application (UI:P) - there is no standalone network-reachable service. Limiting factors: the target application must accept and import untrusted .md2 files, the impact is confined to a crash and limited adjacent-heap disclosure (no code execution or write), and systems updated past 6.0.5 are not affected.

Impact

This is a medium-severity (CVSS 4.0 base 6.9) memory-safety flaw in the Assimp MD2 importer, and the signals are internally consistent rather than conflicting. The 4.0 vector (AV:L/AC:L/AT:N/PR:N/UI:P/VC:L/VI:N/VA:H) describes an unauthenticated (PR:N) but local, file-parsing issue: the attacker does not supply credentials, yet the malicious .md2 must be delivered to and processed by an application that embeds Assimp, and passive user/application interaction is required (UI:P). The dominant impact is availability (VA:H, application crash) with only limited confidentiality exposure (VC:L, adjacent heap memory via out-of-bounds read); there is no integrity impact (VI:N), consistent with CWE-190 leading to a heap OOB read rather than write/code execution. No EPSS score is provided and the flaw is not on the CISA KEV list, so there is no evidence of active exploitation; the vulnerability was reported by VulnCheck and the vendor has shipped a patch. The vuln.today decision label is 'this_month' (not act_now/emergency), which matches a patchable DoS/info-leak in a widely embedded library rather than an urgent RCE. Net: a real but moderate-priority issue - prioritize patching in software that ingests untrusted 3D assets, but it is not a drop-everything emergency on the available signals. EPSS is absent, so probabilistic exploitation likelihood could not be weighed.

Exploit ScenarioDerived

An attacker crafts a malicious Quake II .md2 model file whose numFrames and numVertices header fields are chosen so their 32-bit product wraps past the file-size bounds check in MD2Importer::ValidateHeader(). When a victim application that uses Assimp (e.g. a game engine, 3D asset pipeline, or model viewer) imports the file, the bypassed check lets the parser read beyond the allocated buffer, crashing the application or leaking adjacent heap memory. A public PoC reference exists (vendor issue report); it is not verified as working exploit code.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.1% exploitation probability (EPSS)

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

Alert me

AnalysisAIv1 – Oct 28, 2026

Heap out-of-bounds reads in Assimp's MD2 (Quake II model) importer (all versions through 6.0.5) let an attacker who supplies a crafted .md2 file crash the importing application and potentially expose adjacent heap memory. Attacker-controlled numFrames and numVertices header fields overflow the 32-bit frame-size product used in MD2Importer::ValidateHeader(), wrapping the computed offsets past the fileSize bounds check so later parsing reads outside the allocated buffer. The attack is local and file-based: it needs a host application that feeds an untrusted .md2 file to Assimp, requires no authentication and no network reachability, and yields only denial of service plus limited disclosure (no code execution or write). No public exploit code or active exploitation was identified at time of analysis, and an upstream fix has been merged.

RemediationAI

Upstream fix available (PR/commit); released patched version not independently confirmed. The vendor-corrected code is in pull request https://github.com/assimp/assimp/pull/6963, merged as commit 7dbc85d9218fae017d4fad70269e7569f7b0c870, which recomputes frameSize and all offset-plus-count comparisons in uint64_t; build Assimp from a revision that contains that commit or apply the change to your vendored copy of code/AssetLib/MD2/MD2Loader.cpp, and confirm the exact fixed release tag with the project at https://github.com/assimp/assimp before relying on a packaged version. Until the fix is deployed, the exposure reduction that follows from the reported exploit preconditions is to stop passing untrusted .md2 files to Assimp's MD2 importer - reject .md2 uploads at the application boundary or run the import in a sandboxed/out-of-process worker whose crash and heap contents do not affect the host - accepting that this removes MD2 support from the affected workflow rather than fixing the parser. No other mitigating control is described in the available sources.

Affected VersionsENISA

Assimp 0 ≤6.0.5

Affected Packages

euvd assimp 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

Assimp is a widely used open-source 3D asset import library, and its MD2 importer parses the id Software Quake II model format, whose header contains raw uint32 counts (numSkins, numTexCoords, numTriangles, numFrames, numVertices) and byte offsets into the file. ValidateHeader() is the trust boundary that is supposed to confirm each section (offset + count * sizeof(element)) lies inside the file before the loader walks it. The root cause is CWE-190 integer overflow: frameSize is computed as sizeof(MD2::Frame) + (numVertices - 1) * sizeof(MD2::Vertex) in 32-bit arithmetic, and that value is then multiplied by numFrames, also in 32 bits. Because both factors are attacker-controlled, the product can wrap to a small value that passes the '>= fileSize' rejection test, while the real per-frame stride is vastly larger; the adjacent AI_MAX_ALLOC guards only bound each individual count against sizeof(element) and never validate the product. The upstream patch (PR 6963, commit 7dbc85d) fixes this by promoting the offsets, counts and frameSize computation to uint64_t so the comparison against fileSize is performed without truncation. CPE cpe:2.3:a:assimp:assimp covers all releases up to and including 6.0.5.

Know when Assimp 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 (VulnCheck) PRIMARY 6.9 MEDIUM
CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:P/VC:L/VI:N/VA:H/SC:N/SI:N/SA:N
vuln.today AI 6.1 MEDIUM

Local untrusted-file parsing needing the app/user to import the file (AV:L, UI:R) with no auth (PR:N); integer overflow reliably crashes (A:H) and leaks limited adjacent heap data (C:L), with no integrity impact.

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

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

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

DescriptionCVE.org

Assimp through 6.0.5 contains an integer overflow vulnerability in MD2Importer::ValidateHeader() that allows attackers to bypass frame table bounds checks using crafted header fields. Attackers can supply a malicious .md2 file whose numFrames and numVertices values wrap the 32-bit size check, causing heap out-of-bounds reads that crash applications or expose adjacent heap memory.

Threat Intelligence Overview

EPSS Score
0.1%
Top 97% exploitable
Prevalence
Medium
widely-used open-source 3D model import library embedded in many game/3D tools
Social Media
1
Sightings
Data Quality
5 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 0.1%
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
Defer
Exploitation· derived
None
System Exposure· derived
Small
Automatable· derived
No
Human Impact· derived
Medium

Priority Score

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

Attack Technique

Integer overflow occurs when an arithmetic operation produces a result that exceeds the maximum value a given integer type can store.

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

More in Assimp

View all
CVE-2024-48423 HIGH POC
7.8 Oct 24

An issue in assimp v.5.4.3 allows a local attacker to execute arbitrary code via the CallbackToLogRedirector function wi

CVE-2022-38528 MEDIUM POC
6.5 Sep 06

Open Asset Import Library (assimp) commit 3c253ca was discovered to contain a segmentation violation via the component A

CVE-2024-53425 MEDIUM POC
6.2 Nov 21

A heap-buffer-overflow vulnerability was discovered in the SkipSpacesAndLineEnd function in Assimp v5.4.3. Rated medium

CVE-2024-48426 MEDIUM POC
6.2 Oct 24

A segmentation fault (SEGV) was detected in the SortByPTypeProcess::Execute function in the Assimp library during fuzz t

CVE-2024-48425 MEDIUM POC
5.5 Oct 24

A segmentation fault (SEGV) was detected in the Assimp::SplitLargeMeshesProcess_Triangle::UpdateNode function within the

CVE-2024-48424 MEDIUM POC
5.5 Oct 24

A heap-buffer-overflow vulnerability has been identified in the OpenDDLParser::parseStructure function within the Assimp

CVE-2025-3016 MEDIUM POC
5.3 Mar 31

A vulnerability classified as problematic was found in Open Asset Import Library Assimp 5.4.3. Rated medium severity (CV

CVE-2025-2752 MEDIUM POC
5.3 Mar 25

A vulnerability was found in Open Asset Import Library Assimp 5.4.3 and classified as problematic.h of the component CSM

CVE-2025-3015 MEDIUM POC
5.3 Mar 31

A vulnerability classified as critical has been found in Open Asset Import Library Assimp 5.4.3. Rated medium severity (

CVE-2025-2592 MEDIUM POC
5.3 Mar 21

A vulnerability, which was classified as critical, has been found in Open Asset Import Library Assimp 5.4.3.cpp. Rated m

CVE-2025-2757 MEDIUM POC
5.3 Mar 25

A vulnerability classified as critical was found in Open Asset Import Library Assimp 5.4.3. Rated medium severity (CVSS

CVE-2025-2756 MEDIUM POC
5.3 Mar 25

A vulnerability classified as critical has been found in Open Asset Import Library Assimp 5.4.3. Rated medium severity (

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