Skip to main content

Khronos NNEF-Tools EUVDEUVD-2026-101130

| CVE-2026-110657 MEDIUM
Path Traversal (CWE-22)
2026-10-14 VulnCheck GHSA-3m64-wpw6-whjx
4.8
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

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

  1. Access
    Craft malicious graph.nnef with ../ labels
  2. Delivery
    Deliver model to victim (share/publish)
  3. Exploit
    Victim converts or saves weights
  4. Execution
    Library writes .dat outside model dir
  5. Impact
    Overwrite or plant files on disk

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V5 - File Handling Path canonicalization, traversal prevention
MITRE ATT&CK

2 techniques across 2 tactics: Discovery, Collection

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

Exploitation Conditions

Exploitation requires that a victim process an attacker-supplied NNEF model (a graph.nnef whose variable labels contain '../' sequences or absolute paths) by invoking a convert, save, or weight-generation operation in nnef or nnef-tools - this is the exact triggering feature. Limiting factors: the attack is local (AV:L) and requires user interaction (UI:P), so the attacker cannot act remotely or autonomously; the victim must obtain and deliberately open/process the malicious model, and impact is bounded to file paths writable by the user running the tool. No special product configuration is needed beyond normal use of the affected versions (nnef ≤1.0.10, nnef-tools ≤1.0.11).

Impact

This is a genuinely medium/low-priority issue despite a publicly available POC. The vendor-supplied CVSS 4.0 vector (AV:L/AC:L/AT:N/PR:N/UI:P/VC:N/VI:L/VA:N) scores 4.8, driven by a local attack vector and required user interaction (UI:P) with only limited integrity impact (VI:L) and no confidentiality or availability impact. This is not a remote code execution primitive - it is a file write/overwrite primitive that fires only when a victim actively converts, saves, or generates weights from an attacker-supplied NNEF model. No CISA KEV listing and no EPSS score were provided in the input, so there is no evidence of active or widespread exploitation; the only exploitation signal is a publicly available POC (hackmd writeup) reported by VulnCheck. Signals are consistent rather than conflicting: low severity, local vector, and user-interaction dependence all point to a targeted/opportunistic social-engineering risk (malicious model file) rather than mass exploitation. The realistic concern is overwriting or planting '.dat' files outside the intended model directory, which could corrupt data or, in the worst case, overwrite files the user has write access to.

Exploit ScenarioDerived

An attacker publishes or shares a malicious NNEF model whose graph.nnef contains variable labels with '../' sequences or absolute paths. When a victim loads that model and converts, saves, or generates weights using nnef/nnef-tools, the library writes '.dat' files to attacker-controlled paths outside the model directory, overwriting existing files the user can write. A public POC demonstrating the path traversal exists.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
No patch listed yet 0.2% exploitation probability (EPSS)

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

Alert me

AnalysisAIv1 – Oct 14, 2026

Path traversal in the Khronos NNEF Python tooling allows a local, unauthenticated attacker to create or overwrite .dat weight files outside the intended model directory when a victim converts, saves, or generates weights from a crafted graph.nnef. The flaw affects nnef through 1.0.10 and nnef-tools through 1.0.11 and is triggered by '../' sequences or absolute paths embedded in variable labels, an operation the tool performs as part of its normal workflow. Impact is limited to low-severity file integrity loss within paths writable by the user running the tool, and exploitation requires the victim to open an attacker-supplied model; publicly available exploit code exists, but there is no evidence of confirmed active exploitation (the issue is not in CISA KEV).

RemediationAI

No vendor-released patch version was specified in the available intelligence at time of analysis, so operators should monitor the Khronos NNEF-Tools repository at https://github.com/KhronosGroup/NNEF-Tools and the VulnCheck advisory at https://www.vulncheck.com/advisories/khronos-nnef-tools-nnef-through-1.0.10-and-nnef-tools-through-1.0.11-path-traversal-via-variable-label for an upstream fix, and upgrade as soon as a corrected release is confirmed. Until then, apply specific compensating controls: treat every externally supplied graph.nnef as untrusted and pre-scan variable labels for '../' sequences or absolute paths, rejecting such models before conversion, or patch the label-to-path logic in nnef-pyproject/nnef/__init__.py to strip directory components (for example reduce each label to its basename) before opening output .dat files, with the trade-off that legitimate labels containing directory-like separators will no longer round-trip faithfully. Run conversions of untrusted models inside a container or sandbox with a read-only root filesystem and a single writable output directory owned by an unprivileged user; this constrains writes to the sandbox but may break workflows that expect to write weights elsewhere. Because the attack requires user interaction and a local vector, limiting who can supply models to the conversion pipeline and verifying model provenance reduces exposure with minimal functional impact.

Affected VersionsENISA

nnef-tools 0 ≤1.0.11
nnef 0 ≤1.0.10

Affected Packages

euvd nnef no fix
euvd nnef_tools no fix

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 2 packages in euvd

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

Technical ContextAI · show details

NNEF (Neural Network Exchange Format) is a Khronos standard for exchanging trained neural network models, and the nnef Python package plus the nnef-tools command-line utility parse a textual graph.nnef that references tensor data stored in separate .dat files keyed by variable labels. The root cause is CWE-22: labels taken from the untrusted model file are concatenated into output paths without validating for '../' sequences or absolute paths, so a crafted label causes writes outside the model directory; the relevant label-handling logic is referenced upstream at nnef-pyproject/nnef/__init__.py line 87 of commit 0bb9c04fcf69c19e0aefa1ba9bf65f05478c8f81. The CPE entries cpe:2.3:a:khronos_group:nnef and cpe:2.3:a:khronos_group:nnef-tools carry wildcard versions, consistent with the reported affected ranges nnef <=1.0.10 and nnef-tools <=1.0.11. The independent assessment (CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:L/A:N) confirms a local vector requiring user interaction, with no confidentiality or availability impact and only limited integrity loss, matching the described requirement that the victim open and process a malicious model.

Know when Nnef 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 4.8 MEDIUM
CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:P/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N
vuln.today AI 3.3 LOW

Local because a victim must process an attacker-supplied file (UI:R), no privileges needed (PR:N), only partial integrity impact from arbitrary .dat file writes; no confidentiality or availability impact.

3.1 AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:L/A:N
4.0 AV:L/AC:L/AT:N/PR:N/UI:P/VC:N/VI:L/VA:N/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
None
Vulnerable system: Integrity
Low
Vulnerable system: Availability
None
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

DescriptionCVE.org

Khronos NNEF-Tools nnef through 1.0.10 and nnef-tools through 1.0.11 contain a path traversal vulnerability that allows attackers to write files outside the model directory via crafted variable labels. Attackers can supply a graph.nnef with '../' sequences or absolute paths in labels to create or overwrite '.dat' files when users convert, save, or generate weights.

Threat Intelligence Overview

EPSS Score
0.2%
Top 85% exploitable
Prevalence
Low
niche ML model-format developer tooling, no broad production footprint
Exploit
POC
Public exploit code exists
Data Quality
6 sources
Confidence: High

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 Yes
EPSS 0.2%
Patch available No
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
Poc
System Exposure· derived
Small
Automatable
No
Human Impact· derived
Medium
Technical Impact
Partial

Priority Score

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

Attack Technique

Path traversal exploits occur when applications use user-controlled input to construct file system paths without proper validation.

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