CVE-2025-71376

picklescan - Arbitrary Code Execution via Undetected idlelib.autocomplete.AutoComplete.fetch_completions

Published Jun 23, 2026 CVSS 4.0 · 7.6 High EPSS < 1% KEV · Not listed
Description
picklescan before 0.0.29 fails to detect malicious pickle files using idlelib.autocomplete.AutoComplete.fetch_completions in reduce methods. Attackers can embed undetected code in pickle files that executes arbitrary commands when loaded by victims.

Analysis

AI-generated

Technical impact

picklescan before version 0.0.29 fails to detect malicious pickle files that employ idlelib.autocomplete.AutoComplete.fetch_completions within reduce methods, allowing attackers to embed and execute arbitrary code when those pickle files are loaded. The vulnerability is a classic instance of insecure deserialization (CWE-502) where untrusted data can cause unintended code execution.

Affected Systems

The affected product is picklescan from the mmaitre314 project; any installation using a version earlier than 0.0.29 is susceptible. The vulnerability applies to all operating systems where picklescan is run, as the issue resides in the Python package logic and not OS‑specific code.

Risk and Exploitability

The CVSS score of 7.6 indicates a high‑severity flaw, but the EPSS score is not available and the vulnerability is not listed in CISA’s KEV catalog. Attackers must supply a malicious pickle file that the victim processes, so the release stage is likely local or controlled by the user who runs picklescan. Once executed, the payload can perform arbitrary system commands, leading to full compromise of the host and any data accessed by picklescan. The absence of an EPSS score suggests limited public exploitation data, but the high CVSS and the potential for complete code execution make it a critical risk for any environment that uses picklescan to load user-provided pickles.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade picklescan to version 0.0.29 or later, which removes the insecure deserialization path.
  • If an upgrade is not immediately possible, restrict picklescan to only load pickle files from trusted sources, rejecting any file that is not signed or otherwise verified.
  • Consider replacing pickle usage with a safer serialization format (e.g., JSON or protocol buffers) or employ a sandboxed deserialization routine to prevent arbitrary code execution.

Generated by OpenCVE AI on June 23, 2026 at 13:26 UTC.

Tracking

Sign in to view the affected projects.

Advisories

Source ID Title
Github GHSA Github GHSA GHSA-7cq8-mj8x-j263 Picklescan has a missing detection when calling built-in python idlelib.autocomplete.AutoComplete.fetch_completions
History
Type Values Removed Values Added
First Time appeared Picklescan
Picklescan picklescan
Vendors & Products Picklescan
Picklescan picklescan
Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'poc', 'Technical Impact': 'total'}, 'version': '2.0.3'}

Type Values Removed Values Added
Description picklescan before 0.0.29 fails to detect malicious pickle files using idlelib.autocomplete.AutoComplete.fetch_completions in reduce methods. Attackers can embed undetected code in pickle files that executes arbitrary commands when loaded by victims.
Title picklescan - Arbitrary Code Execution via Undetected idlelib.autocomplete.AutoComplete.fetch_completions
First Time appeared Mmaitre314
Mmaitre314 picklescan
Weaknesses CWE-502
CPEs cpe:2.3:a:mmaitre314:picklescan:*:*:*:*:*:*:*:*
Vendors & Products Mmaitre314
Mmaitre314 picklescan
References
Metrics cvssV3_1

{'score': 8.1, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:N'}

cvssV4_0

{'score': 7.6, 'vector': 'CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:P/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N'}

Weaknesses
  • CWE-502

    Deserialization of Untrusted Data

Sources

Status
PUBLISHED
Assigner
VulnCheck
Published
Updated
Jun 23, 2026, 3:05 PM
Reserved
Jun 20, 2026, 1:11 PM
Status
Deferred
Published
Jun 23, 2026, 1:16 PM
Modified
Oct 12, 2026, 9:10 PM