CVE-2026-3490: picklescan blocklist bypass via pkgutil.resolve_name

CVE-2026-3490 · Severity: critical · CVSS 10 · Published 2026-06-17

picklescan is a security tool used to scan Python pickle files for malicious code, commonly used in machine learning pipelines and platforms like Hugging Face. A vulnerability allows attackers to bypass the tool's security filters entirely by using a specific Python function to hide dangerous commands. This could allow an attacker to execute arbitrary code on systems that rely on picklescan to verify the safety of uploaded models or data.

Technologies: picklescan (PyPI). Vendors: PyPI.

Quick answers

Is CVE-2026-3490 exploited in the wild?
No. Junglewise Threat Intelligence has no report of CVE-2026-3490 being exploited in the wild.
How severe is CVE-2026-3490?
Critical severity, with a CVSS score of 10, published 17 June 2026.
Which products and versions are affected?
picklescan (PyPI) < 1.0.4, ECOSYSTEM:introduced=0,fixed=1.0.4.
Is there a fix for CVE-2026-3490?
Yes. picklescan (PyPI): upgrade to 1.0.4 or later. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.
How is CVE-2026-3490 attacked?
It is attacked over the network, in a software library.
Am I affected by CVE-2026-3490?
Check whether you run picklescan (PyPI) at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

How to fix

  • picklescan (PyPI): upgrade to 1.0.4 or later
    pip install "picklescan>=1.0.4"

Technical details

A universal blocklist bypass exists in picklescan versions prior to 1.0.4 due to the omission of 'pkgutil.resolve_name' from the '_unsafe_globals' list. An attacker can craft a malicious pickle file using chained REDUCE calls: the first call uses 'pkgutil.resolve_name' to resolve a blocked function (like 'os.system') from a string, and the second call executes that resolved function. Because the scanner only inspects global imports and not the arguments or results of REDUCE operations, the dangerous function remains invisible to the scanner. This allows for remote code execution (RCE) on any system using picklescan to validate untrusted pickle data. The issue is addressed in version 1.0.4 by adding pkgutil to the blocklist.

Affected products

  • picklescan picklescan < 1.0.4

Identifiers

  • CVE-2026-3490
  • GHSA-vvpj-8cmc-gx39
  • PYSEC-2026-456

Timeline

  • 2026-03-02: advisory: GitHub Security Advisory published
  • 2026-06-17: disclosed: NVD publication date

References

This page as Markdown. Free to reuse under CC BY 4.0 with a link back.