CVE-2026-55093

tract-nnef: integer overflow in NNEF `.dat` tensor parser yields an out-of-bounds read on model load

MEDIUM
6.1
CVSS Score
Published: September 14, 2026 at 07:47 PM UTC
Updated: September 30, 2026 at 05:51 PM UTC
1 product affected across 1 vendorTract

Using tract by sonos?

Get instant alerts when new vulnerabilities affect tract - before attackers find them.

Real-time alertsTrack your software stackFree plan available
Severity
MEDIUM6.1
Exploit prediction
EPSS 0.2%
SSVC
PoC

Description

Tract is a tiny, no-nonsense, self-contained TensorFlow and ONNX inference toolkit. Prior to 0.21.16, 0.22.2, and 0.23.1, tract-nnef uses unchecked usize multiplication in nnef/src/tensors.rs read_tensor for attacker-controlled tensor dimensions, the allocation size, and the reported tensor length. Loading a crafted NNEF archive through model_for_path or model_for_read reaches the default DatLoader and can make the wrapped size check accept a small allocation while data/src/tensor.rs as_slice_unchecked creates a much larger logical slice. Model construction through as_uniform can then read beyond the heap allocation and disclose adjacent data, and later access can terminate the process with a segmentation fault. The affected dense numeric tensor path does not include the independently guarded bool, String, or block-quant paths, and no out-of-bounds write or code execution was demonstrated. This issue is fixed in versions 0.21.16, 0.22.2, and 0.23.1.

Affected

Our own answer: ranges merged, affected separated from platform-only, with confidence and review flags.

v < 0.21.16v < 0.22.2v < 0.23.1
Affected range stops below 0.21.16, so it looks safe — our inference, not a vendor statement
Affected range stops below 0.22.2, so it looks safe — our inference, not a vendor statement
Affected range stops below 0.23.1, so it looks safe — our inference, not a vendor statement

Remediation

No guide yet

No remediation guidance has been written for this CVE yet, and no fixed version or vendor advisory is recorded against it.

SSVC — Action Prioritization

SSVCPoCNot automatablePartial impact

SSVC signals action urgency (what to patch first), separate from CVSS which measures severity.

CVSS

6.1MEDIUMGitHub_M
Attack Vector
LOCAL
Complexity
LOW
Privileges
NONE
User Interaction
REQUIRED
Scope
UNCHANGED
Confidentiality
LOW
Integrity
NONE
Availability
HIGH
Vector?

Quick Info

StatusDEFERRED
CWE
CWE-125CWE-190

Get alerted

Stop reading CVE feeds looking for your own stack

Track the products you run and VulnTracker tells you when a new CVE affects them — with what is known about fixing it, and nothing about the rest.

Free plan, no card