CVE-2026-22609: Fickling Static Analysis Bypass via Incomplete Dangerous Module Blocklist
Summary
CVE-2026-22609: Fickling has Static Analysis Bypass via Incomplete Dangerous Module Blocklist. Affects fickling versions < 0.1.7. Fixed in 0.1.7. How to fix ↓
Check if this vulnerability affects your application
Upload a manifest or SBOM and we'll show whether you're affected, plus every other risky package in the same scan.
No signup required · Results in about 60 seconds
Background
Fickling is a static analysis tool designed to assess the safety of Python pickles, which are a way to serialize and deserialize Python objects. It aims to identify unsafe imports that could lead to arbitrary code execution. However, the tool has a vulnerability that allows certain dangerous modules to be imported without detection, undermining its core functionality.
Vulnerability Detail
The vulnerability arises from the unsafe_imports() method in Fickling's static analyzer, which fails to flag several high-risk Python modules such as ctypes, importlib, runpy, code, and multiprocessing. These modules can be exploited to execute arbitrary code, allowing attackers to create malicious pickles that bypass Fickling's safety checks. This oversight can lead to severe security breaches, including unauthorized access to system memory and execution of harmful code.
How To Fix
Latest published version: 0.1.12 as of 23 Oct 2026
pip install --upgrade "fickling==0.1.12"
Upgrading to it may include breaking changes; the version below is the minimum fixed release for this vulnerability.
If you need the minimum change
0.1.7
This is the first release that contains the fix.
pip install --upgrade "fickling==0.1.7"
Tip — Not sure which version your app runs? Vulert can match this fix to it. Scan free →
Workaround
As a temporary workaround, avoid using Fickling to analyze pickles that may contain imports from the aforementioned dangerous modules until the package is updated. Additionally, consider implementing your own checks for these modules in your code.
Conclusion
The vulnerability CVE-2026-22609 in Fickling poses a significant risk by allowing certain dangerous modules to be imported without detection. Users are strongly advised to update to the latest version to mitigate this risk and ensure the integrity of their applications.
See every vulnerability recorded for fickling →
FAQ
The CVSS score for this vulnerability is 8.9, indicating a high severity level.
An attacker can craft a malicious pickle that imports dangerous modules, leading to arbitrary code execution and potential system compromise.
You can use Vulert's playground at Vulert Scanner to check if your application is affected by this vulnerability without needing to sign up.
If you cannot update Fickling right away, avoid analyzing potentially unsafe pickles and implement manual checks for dangerous imports.
You can find more information about Fickling on its GitHub repository and documentation pages.
References
Related vulnerabilities
Recent vulnerabilities recorded for fickling.