Vulnerability · Published Jan 10, 2026 · Assigned by GitHub_M

CVE-2026-22607Fickling Blocklist Bypass: cProfile.run()

High 8.9

In plain English

A high-severity unsafe deserialization in fickling from trailofbits. Proof-of-concept exploit code is public. The chance it is exploited in the next 30 days is estimated at 0.5% (higher than 44% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.

Severity (CVSS 4.0)8.9High
Exploit odds (30 days)0.5%top 55.5% of all CVEs
Exploited in the wildNo reportsCISA SSVC: poc
Attack toolingNoneno public tooling known

Official description

Fickling is a Python pickling decompiler and static analyzer. Fickling versions up to and including 0.1.6 do not treat Python's cProfile module as unsafe. Because of this, a malicious pickle that uses cProfile.run() is classified as SUSPICIOUS instead of OVERTLY_MALICIOUS. If a user relies on Fickling's output to decide whether a pickle is safe to deserialize, this misclassification can lead them to execute attacker-controlled code on their system. This affects any workflow or product that uses Fickling as a security gate for pickle deserialization. This issue has been patched in version 0.1.7.

Affected packages & fixed versions

EcosystemPackageFixed inAdvisory
PyPIfickling0.1.7GHSA-p523-jq9w-64x9
PyPIfickling0.1.7PYSEC-2026-1371

Affected products (as reported)

VendorProductVersions
trailofbits fickling < 0.1.7

Weakness: CWE-184, CWE-502 · Vector: CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N/E:P

References