# CVE-2025-71359: picklescan detection bypass via lib2to3 Grammar.loads

Source: https://junglewise.ai/threats/cve-2025-71359-picklescan-detection-bypass-via-lib2to3-grammar-loads  
Publisher: Junglewise Threat Intelligence, https://junglewise.ai/threats  
Published: 2026-07-04. Updated: 2026-07-04  
License: CC BY 4.0 with a link back

CVE-2025-71359 · Severity: high · CVSS 8.1 · Published 2026-07-04

picklescan is a security tool used to scan Python pickle files and machine learning models for malicious code. A vulnerability allows specially crafted files to bypass these security checks by using a specific internal Python function. If a user relies on picklescan to verify a file and then opens it, an attacker could execute arbitrary commands on the user's system.

Technologies: [picklescan (PyPI)](https://junglewise.ai/threats/technologies/picklescan). Vendors: [PyPI](https://junglewise.ai/threats/vendors/pypi).

## Quick answers

**Is CVE-2025-71359 exploited in the wild?** No. Junglewise Threat Intelligence has no report of CVE-2025-71359 being exploited in the wild.

**How severe is CVE-2025-71359?** High severity, with a CVSS score of 8.1, published 4 July 2026.

**Which products and versions are affected?** picklescan (PyPI) ECOSYSTEM:introduced=0,fixed=0.0.29.

**Is there a fix for CVE-2025-71359?** Yes. picklescan (PyPI): upgrade to 0.0.29 or later. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.

**How is CVE-2025-71359 attacked?** It is attacked over the network, in a software library.

**Am I affected by CVE-2025-71359?** Check whether you run picklescan (PyPI) at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

## How to fix

- picklescan (PyPI): upgrade to 0.0.29 or later

  ```sh
  pip install "picklescan>=0.0.29"
  ```


## Technical details

A deserialization vulnerability exists in picklescan due to an incomplete blocklist or detection logic. The tool fails to identify malicious payloads that wrap dangerous code within the 'lib2to3.pgen2.grammar.Grammar.loads' function during the pickle '__reduce__' process. An attacker can craft a malicious pickle file (often distributed as a machine learning model) that evades detection by picklescan. When a victim subsequently loads this file using 'pickle.load()', the embedded payload executes arbitrary code. This issue is resolved in version 0.0.29.

## Affected products

- picklescan picklescan < 0.0.29

## Identifiers

- CVE-2025-71359
- GHSA-f54q-57x4-jg88

## Timeline

- 2025-08-26: advisory: GitHub Security Advisory published
- 2026-07-04: disclosed: NVD publication date
- 2026-07-04: patched: Fix confirmed in version 0.0.29

## References

- [https://github.com/mmaitre314/picklescan/security/advisories/GHSA-f54q-57x4-jg88](https://github.com/mmaitre314/picklescan/security/advisories/GHSA-f54q-57x4-jg88)
- [https://www.vulncheck.com/advisories/picklescan-unsafe-deserialization-via-lib2to3-pgen2-grammar-grammar-loads](https://www.vulncheck.com/advisories/picklescan-unsafe-deserialization-via-lib2to3-pgen2-grammar-grammar-loads)

## Related threats

- [picklescan detection bypass via _operator.methodcaller](https://junglewise.ai/threats/cve-2025-71375-picklescan-detection-bypass-via-operator-methodcaller)
- [picklescan security bypass via operator.methodcaller](https://junglewise.ai/threats/cve-2025-71373-picklescan-security-bypass-via-operator-methodcaller)
- [Picklescan detection bypass via numpy getlincoef gadget](https://junglewise.ai/threats/cve-2025-71372-picklescan-detection-bypass-via-numpy-getlincoef-gadget)
- [picklescan safety check bypass via PyTorch decoder basichandlers](https://junglewise.ai/threats/cve-2025-71369-picklescan-safety-check-bypass-via-pytorch-decoder-basichandlers)
- [picklescan security bypass via _operator.attrgetter function call](https://junglewise.ai/threats/cve-2025-71367-picklescan-security-bypass-via-operator-attrgetter-function-call)
