Skip to main content

picklescan CVE-2026-53872

HIGH
Path Traversal (CWE-22)
2026-06-17 VulnCheck
8.7
CVSS 4.0 · Vendor: VulnCheck
Share

Severity by source

Vendor (VulnCheck) PRIMARY
8.7 HIGH
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N/E:X/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
vuln.today AI
6.5 MEDIUM

Remote attacker delivers a pickle but a user/automation must invoke the scanner on it (UI:R); no auth needed; only confidentiality impact via arbitrary file read.

3.1 AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:N/A:N
4.0 AV:N/AC:L/AT:N/PR:N/UI:P/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
X

Lifecycle Timeline

2
Source Code Evidence Fetched
Jun 17, 2026 - 16:49 vuln.today
Analysis Generated
Jun 17, 2026 - 16:49 vuln.today

DescriptionCVE.org

picklescan before 0.0.35 contains an unsafe pickle deserialization vulnerability allowing unauthenticated attackers to read arbitrary server files by chaining io.FileIO and urllib.request.urlopen. Attackers can bypass RCE-focused blocklists to exfiltrate sensitive data like /etc/passwd to external servers.

AnalysisAI

Arbitrary file read in picklescan versions before 0.0.35 allows remote unauthenticated attackers to exfiltrate sensitive server files by abusing standard-library callables that the tool's RCE-focused blocklist fails to detect. By chaining io.FileIO and urllib.request.urlopen inside a malicious pickle, an attacker can stream contents of files such as /etc/passwd to an attacker-controlled URL when the scanner processes untrusted model artifacts. Publicly available exploit code exists in the GHSA advisory, but there is no public exploit identified at time of analysis in the form of in-the-wild abuse.

Technical ContextAI

picklescan is a Python package (pip/picklescan, CPE cpe:2.3:a:picklescan:picklescan:*) designed to statically scan pickle files - commonly distributed with ML models on Hugging Face and similar hubs - for unsafe deserialization payloads. The vulnerability is rooted in CWE-22 (Path Traversal) combined with unsafe pickle deserialization: the scanner's allow/block heuristics focus on classic RCE primitives (os, subprocess, builtins.exec) and miss io.FileIO, which opens arbitrary local files without going through builtins.open, and urllib.request.urlopen, which accepts a file-like iterable as a POST body. Chaining them inside __reduce__ produces a pickle whose unpickling reads a chosen path and ships it to an external HTTP endpoint, defeating the scanner's purpose of declaring such files safe.

RemediationAI

Vendor-released patch: picklescan 0.0.35 - upgrade via pip install --upgrade 'picklescan>=0.0.35' and rebuild any container images, CI workers, or Hugging Face integration services that bundle the library. The upstream fix is tracked in PR https://github.com/mmaitre314/picklescan/pull/55 and commit a01c58d5dd7960db557b849817c0ab83ab111ef1, referenced from the GHSA advisory at https://github.com/mmaitre314/picklescan/security/advisories/GHSA-9726-w42j-3qjr. Until the upgrade is rolled out, do not rely on picklescan's verdict alone for untrusted pickles: run scans inside a sandbox or container with no network egress and a minimal filesystem (so urllib.request.urlopen cannot reach the internet and io.FileIO has nothing sensitive to read), or block outbound HTTP from the scanner host at the network layer - the trade-off is that legitimate scanner functionality is unaffected but you lose visibility if you also need the scanner to fetch remote artifacts.

CVE-2025-10156 CRITICAL POC
9.3 Sep 17

An Improper Handling of Exceptional Conditions vulnerability in the ZIP archive scanning component of mmaitre314 pickles

CVE-2025-10157 CRITICAL POC
9.3 Sep 17

A Protection Mechanism Failure vulnerability in mmaitre314 picklescan versions up to and including 0.0.30 allows a remot

CVE-2025-10155 CRITICAL POC
9.3 Sep 17

An Improper Input Validation vulnerability in the scanning logic of mmaitre314 picklescan versions up to and including 0

CVE-2025-71341 HIGH POC
7.6 Jun 23

Detection bypass in picklescan prior to 0.0.29 allows attackers to smuggle remote code execution payloads through pickle

CVE-2025-71351 HIGH POC
7.6 Jun 21

Detection bypass in picklescan versions before 0.0.25 allows attackers to embed remote code execution payloads in pickle

CVE-2025-71370 HIGH POC
7.6 Jun 23

Detection bypass in picklescan before 0.0.28 allows attackers to embed malicious torch.jit.unsupported_tensor_ops.execWr

CVE-2025-71348 HIGH POC
7.6 Jun 21

Detection bypass in picklescan before 0.0.28 allows attackers to smuggle arbitrary code through pickle files by abusing

CVE-2025-71361 HIGH POC
7.6 Jun 24

Detection bypass in picklescan before 0.0.29 allows malicious pickle files to evade scanning by abusing the undetected i

CVE-2025-71378 HIGH POC
7.6 Jun 21

Detection bypass in picklescan versions before 0.0.30 allows malicious pickle files to evade security scanning by using

CVE-2025-71376 HIGH POC
7.6 Jun 23

Detection bypass in picklescan versions prior to 0.0.29 allows attackers to smuggle arbitrary code execution payloads th

CVE-2025-71365 HIGH POC
7.6 Jun 23

Detection bypass in picklescan before 0.0.33 allows attackers to smuggle arbitrary code through malicious pickle files b

CVE-2025-71354 HIGH POC
7.6 Jun 24

Detection bypass in picklescan before 0.0.29 allows attackers to craft malicious pickle files using idlelib.debugobj.Obj

Share

CVE-2026-53872 vulnerability details – vuln.today

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy