CVE-2026-53873: picklescan incomplete blocklist bypass in profile module

CVE-2026-53873 · Severity: critical · CVSS 9.8 · Published 2026-06-17

picklescan is a security tool used to scan Python pickle files for malicious code. A flaw in its protection mechanism allows specially crafted files to bypass security checks and execute unauthorized commands on the system. This could lead to a complete system takeover or data theft while the tool incorrectly reports that the file is safe.

Technologies: picklescan (PyPI). Vendors: PyPI.

Quick answers

Is CVE-2026-53873 exploited in the wild?
No. Junglewise Threat Intelligence has no report of CVE-2026-53873 being exploited in the wild.
How severe is CVE-2026-53873?
Critical severity, with a CVSS score of 9.8, 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-53873?
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-53873 attacked?
It is attacked over the network, in a software library.
Am I affected by CVE-2026-53873?
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

picklescan versions prior to 1.0.4 suffer from an incomplete blocklist (CWE-184) regarding the Python 'profile' module. While the scanner attempted to block 'Profile.run' and 'Profile.runctx', it failed to account for the module-level 'profile.run()' and 'profile.runctx()' functions due to exact string matching logic in the opcode parser. An attacker can craft a malicious pickle file that calls these module-level functions to execute arbitrary Python code via the internal 'exec()' call. Because the scanner fails to flag these specific entry points, it reports zero security issues for a payload that results in Remote Code Execution (RCE). The issue is resolved in version 1.0.4 by expanding the blocklist.

Affected products

  • picklescan picklescan < 1.0.4

Identifiers

  • CVE-2026-53873
  • GHSA-7wx9-6375-f5wh
  • PYSEC-2026-455

Timeline

  • 2026-03-02: advisory: GitHub Security Advisory GHSA-7wx9-6375-f5wh published
  • 2026-06-17: disclosed: CVE-2026-53873 published to NVD

References

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