Vulnerability details

CVE-2026-9147

scikit-hep uproot

uproot 5.7.4 and prior Code Injection via TStreamerInfo Metadata

CVSS 4.0
8.5High

Official description

uproot dynamically generates Python class source code from ROOT TStreamerInfo records in a file and compiles it at runtime. Some file-controlled streamer metadata fields (for example, streamer element names) are interpolated into the generated Python source without safe quoting via repr() or the !r format specifier. An attacker who can supply a crafted ROOT file can place Python expression-breaking content into a streamer metadata field. When uproot generates and invokes the corresponding reader method, the injected Python expression is evaluated in the context of the process opening the file, resulting in arbitrary Python code execution in applications that open or process attacker-controlled ROOT files with affected uproot code paths.

CVSS scores

ScoreVersionSourceVector
8.5High 4.0 CVEProject cvelistV5 (CNA) (VulnCheck) CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:P/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
7.8High 3.1 CVEProject cvelistV5 (CNA) (VulnCheck) CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H

Affected products

VendorProductVersionsSource
scikit-hep uproot v ≤ 5.7.4 CVEProject cvelistV5 (CNA)

References and advisories

5
Kolun on Telegram @kolunsec Exploited CVEs, key news and a daily digest Alerts for this product's next CVEsFollow the product to get new vulnerabilities on Telegram.

Details

Published
2026-07-18
Last updated
2026-08-28
State
Published
Assigner (CNA)
VulnCheck

Exploit prediction (EPSS)

0.22%
Probability of exploitation in 30 days
13%
Percentile (among all CVEs)

SSVC assessment (CISA)

Automatable
No
Exploitation
None
Technical impact
Total

Weaknesses (CWE)

  • CWE-94
    Improper Control of Generation of Code ('Code Injection')