Advisory Database
  • Advisories
  • Dependency Scanning
  1. pypi
  2. ›
  3. fickling
  4. ›
  5. GHSA-mxhj-88fx-4pcv

GHSA-mxhj-88fx-4pcv: Fickling: OBJ opcode call invisibility bypasses all safety checks

February 24, 2026

All 5 of fickling’s safety interfaces – is_likely_safe(), check_safety(), CLI --check-safety, always_check_safety(), and the check_safety() context manager – report LIKELY_SAFE / raise no exceptions for pickle files that use the OBJ opcode to call dangerous stdlib functions (signal handlers, network servers, network connections, file operations). The OBJ opcode’s implementation in fickling pushes function calls directly onto the interpreter stack without persisting them to the AST via new_variable(). When the result is discarded with POP, the call vanishes from the final AST entirely, making it invisible to all 9 analysis passes.

This is a separate vulnerability from the REDUCE+BUILD bypass, with a different root cause. It survives all three proposed fixes for the REDUCE+BUILD vulnerability.

References

  • github.com/advisories/GHSA-mxhj-88fx-4pcv
  • github.com/trailofbits/fickling
  • github.com/trailofbits/fickling/commit/ff423dade2bb1f72b2b48586c022fac40cbd9a4a
  • github.com/trailofbits/fickling/security/advisories/GHSA-mxhj-88fx-4pcv

Code Behaviors & Features

Detect and mitigate GHSA-mxhj-88fx-4pcv with GitLab Dependency Scanning

Secure your software supply chain by verifying that all open source dependencies used in your projects contain no disclosed vulnerabilities. Learn more about Dependency Scanning →

Affected versions

All versions before 0.1.8

Fixed versions

  • 0.1.8

Solution

Upgrade to version 0.1.8 or above.

Impact 9.6 CRITICAL

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

Learn more about CVSS

Weakness

  • CWE-436: Interpretation Conflict

Source file

pypi/fickling/GHSA-mxhj-88fx-4pcv.yml

Spotted a mistake? Edit the file on GitLab.

  • Site Repo
  • About GitLab
  • Terms
  • Privacy Statement
  • Contact

Page generated Wed, 25 Mar 2026 00:17:10 +0000.