CVE-20XX-?

CVE-2025-56005

9.8 CRITICAL 19% exploit odds Fix listed Code execution Device

What it is

An undocumented and unsafe feature in the PLY (Python Lex-Yacc) library 3.11 allows Remote Code Execution (RCE) via the `picklefile` parameter in the `yacc()` function. This parameter accepts a `.pkl` file that is deserialized with `pickle.load()` without validation. Because `pickle` allows execution of embedded code via `__reduce__()`, an attacker can achieve code execution by passing a malicious pickle file. The parameter is not mentioned in official documentation or the GitHub repository, yet it is active in the PyPI version. This introduces a stealthy backdoor and persistence risk. NOTE: A third-party states that this vulnerability should be rejected because the proof of concept does not demonstrate arbitrary code execution and fails to complete successfully.

At a glance

Exploitability
Can be exploited over the network without logging in. High risk of data exposure, data tampering, service disruption.
Exploit odds
18.8% chance of exploitation in the next 30 days (EPSS). Higher than most.
Fix
A patch, advisory or fixed version is referenced. Upgrade or apply it.

Timeline

  1. PublishedDisclosed publicly on CVE.org and NVD
  2. Last updatedMost recent change to the record

Details

Published
Last modified
Exploit probability
18.8% · EPSS, next 30 days
Weakness
CWE-502 · Unsafe deserialization
Record status
Modified

Affected

Attack profile CVSS 3.1 · 9.8

Attack vector
Network
Complexity
Low
Privileges needed
None
User interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
High
Availability
High
Raw vector

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

Meme: I wake up, CVE-2025-56005
Download Square Reddit

Fix and advisories

References

NVD record · CVE.org record