CVE-2026-22609 json
Fickling has Static Analysis Bypass via Incomplete Dangerous Module Blocklist
published 2026-01-09 9 mo ago modified 2026-07-07 4 mo ago also EUVD-2026-1685 , GHSA-q5qq-mvfm-j35x , PYSEC-2026-1372
- cvss
- 7.8
- version 3.1, NVD
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.6%
- EPSS 0.6% chance of exploitation in 30 days, percentile 50%
- public exploits
- 0
- none known
Summary
Fickling is a Python pickling decompiler and static analyzer. Prior to version 0.1.7, the unsafe_imports() method in Fickling's static analyzer fails to flag several high-risk Python modules that can be used for arbitrary code execution. Malicious pickles importing these modules will not be detected as unsafe, allowing attackers to bypass Fickling's primary static safety checks. This issue has been patched in version 0.1.7.
Patch / fix
- pypi fickling 0.1.7
- trailofbits fickling 0.1.7
- github.com/trailofbits/fickling@29d5545 commit
- github.com/trailofbits/fickling@9a2b3f8 commit
- github.com/trailofbits/fickling@b793563 commit
- github.com/trailofbits/fickling@eb299b4 commit
- github.com/trailofbits/fickling@6b400e1 commit
- github.com/trailofbits/fickling#195 pull request
- github.com/trailofbits/fickling/releases/tag/v0.1.7 release
CISA SSVC
- Exploitation
- Proof of concept is public
- Automatable
- yes
- Technical impact
- total
- Assessed
- 9 mo ago
Exploit prediction
0.63% chance of exploitation in the next 30 days, higher than 50% of all scored CVEs (FIRST EPSS, 2026-11-08).
Exploits and checks
- github.com https://github.com/trailofbits/fickling/security/advisories/GHSA-q5qq-mvfm-j35x referenced PoC, tagged "exploit" by a source, unverified
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 4.0 | 8.9 | 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 |
| CNA | 4.0 | 8.9 | 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/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X |
| NVD | 3.1 | 7.8 | CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| pypi | fickling | <0.1.7 |
0.1.7 |
Affected products
- trailofbits fickling
Classification
References
-
github.com
/trailofbits/fickling/commit/29d5545e74b07766892c1f0461b801afccee4f91
web, patch
-
github.com
/trailofbits/fickling/commit/9a2b3f89bd0598b528d62c10a64c1986fcb09f66
web, patch
-
github.com
/trailofbits/fickling/commit/b793563e60a5e039c5837b09d7f4f6b92e6040d1
web, patch
-
github.com
/trailofbits/fickling/commit/eb299b453342f1931c787bcb3bc33f3a03a173f9
web, patch
-
github.com
/trailofbits/fickling/pull/195
web
-
github.com
/trailofbits/fickling/commit/6b400e1a2525e6a4a076c97ccc0d4d9581317101
web
-
github.com
/trailofbits/fickling/security/advisories/GHSA-q5qq-mvfm-j35x
exploit, web, vendor-advisory
-
github.com
/trailofbits/fickling/releases/tag/v0.1.7
web, release-notes
-
nvd.nist.gov
/vuln/detail/CVE-2026-22609
advisory
-
github.com
/trailofbits/fickling
package
-
github.com
/trailofbits/fickling/blob/977b0769c13537cd96549c12bb537f05464cf09c/test/test_bypasses.py#L88
web
-
pypi.org
/project/fickling
package
-
github.com
/advisories/GHSA-q5qq-mvfm-j35x
advisory
Sources
- CVE List CVE-2026-22609
- GitHub Advisory GHSA-q5qq-mvfm-j35x
- NVD CVE-2026-22609
- OSV PYSEC-2026-1372
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.
CPEs and fixed versions use Anchore's correction of NVD's data: Added CPE configurations because not yet analyzed by NVD.