CVE-2025-67748 Fickling has Code Injection vulnerability via pty.spawn()

High 7.1 Published Updated

Fickling failed to block unsafe pty.spawn() calls, allowing malicious pickles to execute code despite being flagged as safe.

Exploited in the wild
Not known
Login needed
Not needed
Attackable
Local or same network only
Victim action needed
A user has to click or open something
Fix
Available

What is CVE-2025-67748?

CVE-2025-67748 is a high-severity code injection vulnerability in trailofbits fickling, published on 16 Dec 2025. It can only be exploited from the same machine or local network, and only if a user opens a file or follows a link.

Official description

Fickling is a Python pickling decompiler and static analyzer. Versions prior to 0.1.6 had a bypass caused by `pty` missing from the block list of unsafe module imports. This led to unsafe pickles based on `pty.spawn()` being incorrectly flagged as `LIKELY_SAFE`, and was fixed in version 0.1.6. This impacted any user or system that used Fickling to vet pickle files for security issues.

Weakness: CWE-94, CWE-502, CWE-184

Which versions are affected by CVE-2025-67748?

3 open source packages ship an affected version, including fickling. It affects 1 product.

PackageAffectedFixed in
fickling PyPIAll versions0.1.6
fickling PyPIAll versions0.1.6
fickling PyPIAll versions0.1.6

Products include Trailofbits Fickling.

How do I fix CVE-2025-67748?

Upgrade fickling to 0.1.6 or later.

Upgrade, and never evaluate templates, expressions or code built from user input. More about Code injection.

Is CVE-2025-67748 being exploited?

It is not confirmed as exploited in the wild, but public exploit code for CVE-2025-67748 exists.

Sources

Also known as GHSA-r7v6-mfhq-g3m2, PYSEC-2025-113.

Is CVE-2025-67748 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free