Skip to content
Noroxi
CVE-2025-10155· NVD / CVE Program· CNA JFROG

PickleScan Security Bypass Using Misleading File Extension

An Improper Input Validation vulnerability in the scanning logic of mmaitre314 picklescan versions up to and including 0.0.30 allows a remote attacker to bypass pickle files security checks by supplying a standard pickle file with a PyTorch-related file extension. When the pickle file incorrectly considered safe is loaded, it can lead to the execution of malicious code.

CriticalCVSS 9.3 · v4.0—No exploit Fix available
Published
Sep 17, 2025
Updated
Sep 25, 2026
EPSS
0.8% · 56th percentile
Follow this CVE

Sign in to follow · You’ll be notified if a followed record enters KEV, gets an exploit or is updated.

Report tools

JSON

Action score

37

Monitor

Low priority for now.

CVSS
37 / 40 · 9.3 / 10
CISA KEV
0 / 30 · Not listed
EPSS
0 / 30 · 0.8%

CISA SSVC decision

Exploitation
proof of concept
Automatable
no
Technical impact
partial

Vulnrichment: CISA's decision-tree inputs.

CNA vs NVD score

NVD
—
CNA · JFROG
9.3
NVD has not scored this yet; the score shown is the CNA’s.

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

The score given by the assigning authority versus NVD’s independent score. A gap means the severity is contested.

Affected systems

VendorProduct
mmaitre314picklescan

Affected versions

NVD version ranges (for catalog products). Add the product to your stack with a version and matching uses these.

  • mmaitre314 picklescanbefore 0.0.31

Versions reported by the vendor

Affected version ranges reported by the assigning authority (JFROG). Independent of NVD's CPE analysis and usually ahead of it.

  • mmaitre314 picklescan

    • up to and including 0.0.30affected · semverfixed in 0.0.31

Package-level exposure

OSV and GitHub Advisory data: ecosystem, package and range. SBOM matching uses this table.

EcosystemPackageAffected rangeFix
PyPIpicklescanbefore 0.0.310.0.31

Other highest-scoring records for the same primary product.

  • CVE-2025-10157PickleScan Bypasses Unsafe Globals Check Using Submodule Imports
    37Monitor
  • CVE-2025-10156PickleScan Security Bypass via Bad CRC in ZIP Archive
    37Monitor
  • CVE-2025-71378picklescan - Remote Code Execution via Undetected cProfile.runctx in Pickle Files
    30Monitor
  • CVE-2025-71357picklescan - Arbitrary Code Execution via Undetected idlelib.pyshell.ModifiedInterpreter.runcommand
    30Monitor
  • CVE-2025-71348picklescan - Arbitrary Code Execution via torch.utils._config_module.load_config Bypass
    30Monitor
  • CVE-2026-56304picklescan - Arbitrary File Creation via logging.FileHandler Deserialization
    27Monitor

Remediation

Which version to upgrade to

Fix versions compiled from the vendor, package registries and Microsoft. Verify the vendor's note before upgrading.

Product / packageFixed versionSource
mmaitre314 picklescan0.0.31Vendor (CNA)
PyPI:picklescan0.0.31Package registry (OSV)

Exploit status

No known public exploit

No public exploit has been observed yet. That doesn't mean you're safe, only that the bar is a little higher.

Research context

For pentesters and researchers: attack profile, score disagreement, timeline, patch commits, credits, variant and chain candidates, bug bounty scope. All derived from existing data; no exploit code.

Timeline

From publication to today: proof of concept, Metasploit module, CISA KEV and fix record. Dates are as reported by the sources.

No dated events beyond publication.

EPSS, last 120 days

FIRST EPSS daily score; only changes of 0.01 or more are recorded (step chart).

Patch and commit links

Commit, PR and diff links among the references. A starting point for patch-diffing and variant hunting; fixes, not exploits.

No commit or PR link among the references.

Finders, reporters and analysts named in the CNA record. Click a name for that researcher’s other records.

Variant candidates

Same product, same weakness class, within 18 months. If the patch missed the root cause, the sibling bug is here.

No nightly-computed relations.

Chain candidates

An authentication bypass and a privilege-requiring bug in the same product, published close together: combined they may become an unauthenticated path.

—

Bug bounty scope

No known public program.

Source: bounty-targets-data (public HackerOne, Bugcrowd, Intigriti, YesWeHack listings).

Technical details

Attack conditions

  • Anyone who can reach it over the internet can trigger it.
  • No account or password is required.
  • No user action is required.
  • No special conditions are required; it is repeatable.

If successful

Confidentiality
Integrity
Availability
Attack vector
Network
Attack complexity
Low
Privileges required
None
User interaction
None
Scope
X

CVSS 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: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

nvd-secondary

Change log

  1. Fix✗ → ✓

For records you follow, these changes also arrive as notifications. →

References

Vendor advisories and official records. Exploit/PoC links are deliberately left out.

All records