☠️
EXFILTRATING
DATA...
01010111 10110010 00101001 11000110 01101100 10011011 00010001 11100101 01000010 10101111
[ <-- BACK_TO_SEARCH ]
[ VENDOR STATS ]
CVSS: 4.8 🐛 CWE-119
👁️
Common Weakness Enumeration - Identifies the specific category of software weakness or flaw.

CVE-2026-10200

CVE-2026-10200 Heap Buffer Overflow in Assimp
📅 PUBLISHED: 2026-05-31 23:16 UTC 🔄 UPDATED: 2026-09-23 10:16 UTC
[ ZERO-DAY / UNPATCHED ] [ DEFENSE PATCH ↓ ]
💣 PoC: None
👁️
Proof of Concept - Indicates if functional exploit code is publicly available, drastically increasing the risk of immediate attacks.
🎯 EPSS: 0.12%
👁️
0.12% probability
3.1× above the median CVE
Tier: ELEVATED
30-day exploitation window · FIRST.org · updated daily
🥷 MITRE: T1203
👁️
MITRE ATT&CK Tactic - Describes the strategy hackers use to execute this attack.
VULNERABLE: UNKNOWN / CHECK VENDOR
CVSS SEVERITY SCALE
9.0–10.0 CRITICAL
7.0–8.9 HIGH
4.0–6.9 MEDIUM
0.1–3.9 LOW
0.0 NONE
4.8
THREAT LEVEL
■ tracking this CVE ✓ independent patch confirmation ⧗ same-origin mirror (GHSA) ⚠ active exploitation verification policy →

Executive Summary

CVE-2026-10200 is a heap-based buffer overflow vulnerability discovered in the Assimp library, specifically within the glTFCommon::CopyValue function in glTFCommon.h. The vulnerability affects versions up to and including 6.0.4. The issue arises during the parsing of a 4x4 matrix in the glTF file format, where a crafted input can cause a heap buffer overflow. This can lead to a denial of service (DoS) or potentially arbitrary code execution, though the CVSS score of 5.3 reflects a medium severity due to the requirement for local access and user interaction. The exploit has been made public, increasing the risk for systems using this library. The project has acknowledged the issue as a bug but has not yet released a patch.

⚡ AUTOMATE YOUR CVE INTELLIGENCE

This record — and 170,000+ others — are available via the ValtersIT API. One endpoint replaces five: NVD + GitHub CVE + CISA KEV + EPSS + Nuclei + Exploit-DB, unified.

›Patch confidence — UNVERIFIED to CONFIRMED, cross-referenced NVD + RHSA + Debian
›Exploit & PoC — poc_status, poc_url, has_exploit. Not in NVD.
›Shodan dorks — ready-made queries to find exposed vulnerable systems
›Detection rules — YARA · Wazuh · Elastic (all plans) · Sigma (Pro)
›pending_fields — know exactly which of 7 fields NVD hasn't processed yet
›Free backfill — data incomplete when you paid? Re-check within 30 days = 0 credits
PAYG €0.08/lookup Standard €19/mo (was €29) · 5k credits Pro €65/mo (was €99) · 20k credits FOUNDING PRICE · LOCKED FOR LIFE · ENDS 31 DEC 2026
[ FROM €19/MO ]
Free sandbox key available
No signup required

Supply Chain & Package Security

Assimp (Open Asset Import Library) is a widely used library for importing various 3D model formats into applications. It is a critical dependency in many game engines, 3D modeling tools, and rendering software. A vulnerability in Assimp can have cascading effects across the software supply chain, potentially affecting any application that uses the library to load glTF files. Users and developers should monitor for updates and consider implementing input validation or sandboxing for untrusted 3D model files.

CVSS Breakdown & Threat Level

  • CVSS Score: 5.3 (Medium)
  • Vector: CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H
  • Attack Vector (AV): Local (L) – The attacker must have local access to the system.
  • Attack Complexity (AC): Low (L) – The attack does not require special conditions.
  • Privileges Required (PR): None (N) – No privileges are needed to trigger the vulnerability.
  • User Interaction (UI): Required (R) – The victim must open a malicious file.
  • Scope (S): Unchanged (U) – The vulnerability does not affect other components.
  • Confidentiality (C): None (N) – No data exposure.
  • Integrity (I): None (N) – No data modification.
  • Availability (A): High (H) – The vulnerability can cause a crash or denial of service.

Threat Level: Medium. The exploit is public, but the attack requires local access and user interaction. The primary risk is denial of service, though potential for code execution cannot be ruled out.

Deep Dive & Mechanics

The vulnerability resides in the glTFCommon::CopyValue function within the glTFCommon.h file of the Assimp library. This function is responsible for copying values from a parsed glTF file into internal data structures. Specifically, it handles the parsing of 4x4 matrices.

Root Cause: The function does not properly validate the size of the input data before copying it into a fixed-size heap buffer. When a specially crafted glTF file contains a 4x4 matrix with an unexpected size or structure, the CopyValue function can write beyond the allocated buffer, causing a heap-based buffer overflow.

Trigger: The vulnerability is triggered when an application using Assimp loads a malicious glTF file. The attacker must craft a glTF file that includes a malformed 4x4 matrix, which when parsed, causes the overflow.

Impact: A heap-based buffer overflow can lead to:

  • Denial of Service (DoS): The most likely outcome, causing the application to crash.
  • Arbitrary Code Execution (ACE): In some cases, an attacker may be able to overwrite critical data structures on the heap, potentially leading to code execution. However, this is more complex and depends on the heap layout and memory protections.

Vulnerable vs. Patched Code

Since no patch is available, we can only analyze the vulnerable code. The vulnerable function is in glTFCommon.h. The issue is in the CopyValue function that handles matrix data.

Vulnerable Code (Conceptual):

void glTFCommon::CopyValue(const Value& value, aiMatrix4x4& matrix) {
    // Assume value is an array of 16 floats
    for (int i = 0; i < 16; i++) {
        matrix[i] = value[i].asFloat();
    }
}

The vulnerability occurs if value does not contain exactly 16 elements, or if the data is malformed, leading to out-of-bounds access.

Patched Code (Hypothetical):

void glTFCommon::CopyValue(const Value& value, aiMatrix4x4& matrix) {
    if (value.Size() != 16) {
        throw std::runtime_error("Invalid matrix size");
    }
    for (int i = 0; i < 16; i++) {
        matrix[i] = value[i].asFloat();
    }
}

A proper fix would include bounds checking and input validation before copying data.

Exploitation & Lab Setup

Red Team (Exploitation)

Prerequisites:

  • A vulnerable version of Assimp (<= 6.0.4) installed.
  • An application that uses Assimp to load glTF files.
  • Ability to deliver a malicious glTF file to the target (e.g., via email, download, or file share).

Exploit Steps:

  1. Craft a Malicious glTF File: Create a glTF file with a malformed 4x4 matrix. The matrix should have more than 16 elements or contain data that causes the CopyValue function to overflow.
  2. Deliver the File: Send the malicious file to the target user.
  3. Trigger the Vulnerability: The user opens the file in an application using Assimp. The overflow occurs, potentially crashing the application or allowing code execution.

Example Malicious glTF Snippet:

{
  "accessors": [
    {
      "bufferView": 0,
      "componentType": 5126,
      "count": 1,
      "type": "MAT4",
      "max": [1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0],
      "min": [0, 0, 0, 0]
    }
  ]
}

Note: The max array contains 20 elements instead of 16, which could trigger the overflow.

Blue Team (Defense)

Detection:

  • Monitor for crashes in applications using Assimp.
  • Use file integrity monitoring to detect malicious glTF files.
  • Implement network monitoring for unusual file transfers.

Mitigation:

  • Input Validation: Validate glTF files before processing. Check matrix sizes and other parameters.
  • Sandboxing: Run applications that process untrusted 3D models in a sandboxed environment.
  • Update: Apply patches as soon as they are released by the Assimp project.
  • User Awareness: Educate users about the risks of opening untrusted 3D model files.

Indicators of Compromise (IOCs)

  • File Hashes: (Example hashes for a malicious glTF file)
    • MD5: e99a18c428cb38d5f260853678922e03
    • SHA1: 2fd4e1c67a2d28fced849ee1bb76e7391b93eb12
    • SHA256: d7a8fbb307d7809469ca9abcb0082e4f8d5651e46d3cdb762d02d0bf37c9e592
  • Network Indicators:
    • Unusual outbound connections from applications processing glTF files.
  • Behavioral Indicators:
    • Application crashes when loading specific glTF files.
    • High memory usage or heap corruption errors in logs.

Detection Engineering

YARA Rule

rule CVE_2026_10200_Assimp_glTF_Overflow {
    meta:
        description = "Detects malicious glTF files exploiting CVE-2026-10200"
        author = "Valters IT"
        date = "2025-04-10"
        reference = "CVE-2026-10200"
    strings:
        $matrix_pattern = /"max"\s*:\s*\[[^\]]{100,}\]/  // Overly long max array
        $type_mat4 = /"type"\s*:\s*"MAT4"/
    condition:
        $type_mat4 and $matrix_pattern
}

Sigma Rule

title: CVE-2026-10200 Exploitation Attempt via glTF File
id: 12345678-1234-1234-1234-123456789012
status: experimental
description: Detects attempts to exploit CVE-2026-10200 by loading a malicious glTF file
author: Valters IT
date: 2025-04-10
logsource:
    category: process_creation
    product: windows
detection:
    selection:
        Image|endswith: '\assimp.dll'
        CommandLine|contains: '.gltf'
    condition: selection
falsepositives:
    - Legitimate glTF file processing
level: medium

Suricata Rule

alert http any any -> any any (msg:"CVE-2026-10200 Malicious glTF File Transfer"; flow:to_client; file.name:/\.gltf$/i; file.size:>100000; content:"\"type\": \"MAT4\""; content:"\"max\""; distance:0; within:100; sid:1000001; rev:1;)

Remediation & Mitigation

Immediate Actions:

  1. Disable glTF Support: If possible, disable the loading of glTF files in applications using Assimp until a patch is available.
  2. Input Validation: Implement additional validation for glTF files, especially for matrix sizes and data lengths.
  3. Sandboxing: Run applications that process untrusted 3D models in a sandboxed environment.

Long-term Fix:

  • Apply Patch: Monitor the Assimp project for a security patch and apply it as soon as it is released.
  • Update Library: Upgrade to a patched version of Assimp when available.
  • Code Review: Conduct a security review of the glTFCommon::CopyValue function and similar functions to ensure proper bounds checking.

Workarounds:

  • Use a different 3D model library that is not affected.
  • Convert glTF files to a safer format before processing.

Valters IT

◈ SOURCE Analysis & enrichment: valtersit.com/cve/CVE-2026-10200/ · CVE data: NVD/MITRE (public domain) · © 2026 ValtersIT Hub
>_ SYSTEM_CORE: INTEL_ACTIVE
90% TEAM-CURATED // 10% AUTOMATED INGESTION.
ALL PATCH REFERENCES AND VERSION DATA SOURCED FROM NVD + OSV OFFICIAL REGISTRIES.