id: PYSEC-2026-1783 published: "2026-07-07T16:03:14.498992Z" modified: "2026-07-07T17:25:02.114122Z" aliases: - CVE-2025-71339 - GHSA-6556-fwc2-fg2p summary: Picklescan is vulnerable to RCE through missing detection when calling numpy.f2py.crackfortran._eval_length details: "### Summary\n\nPicklescan uses the `numpy.f2py.crackfortran._eval_length` function (a NumPy F2PY helper) to execute arbitrary Python code during unpickling.\n\n### Details\n\nPicklescan fails to detect a malicious pickle that uses the gadget `numpy.f2py.crackfortran._eval_length` in `__reduce__`, allowing arbitrary command execution when the pickle is loaded. A crafted object returns this function plus attacker‑controlled arguments; the scan reports the file as safe, but pickle.load() triggers execution.\n\n### PoC\n```python\nclass PoC:\n def __reduce__(self):\n from numpy.f2py.crackfortran import _eval_length\n return _eval_length, (\"__import__('os').system('whoami')\", None)\n```\n\n### Impact\n\n- Arbitrary code execution on the victim machine once they load the “scanned as safe” pickle / model file.\n- Affects any workflow relying on Picklescan to vet untrusted pickle / PyTorch artifacts.\n- Enables supply‑chain poisoning of shared model files.\n\n### Credits\n- [ac0d3r](https://github.com/ac0d3r)\n- [Tong Liu](https://lyutoon.github.io), Institute of information engineering, CAS" affected: - package: name: picklescan ecosystem: PyPI purl: pkg:pypi/picklescan ranges: - type: ECOSYSTEM events: - introduced: "0" - fixed: 0.0.33 versions: - 0.0.1 - 0.0.10 - 0.0.11 - 0.0.12 - 0.0.13 - 0.0.14 - 0.0.15 - 0.0.16 - 0.0.17 - 0.0.18 - 0.0.19 - 0.0.2 - 0.0.20 - 0.0.21 - 0.0.22 - 0.0.23 - 0.0.24 - 0.0.25 - 0.0.26 - 0.0.27 - 0.0.28 - 0.0.29 - 0.0.3 - 0.0.30 - 0.0.31 - 0.0.32 - 0.0.4 - 0.0.5 - 0.0.6 - 0.0.7 - 0.0.8 - 0.0.9 references: - type: WEB url: https://github.com/mmaitre314/picklescan/security/advisories/GHSA-6556-fwc2-fg2p - type: WEB url: https://github.com/mmaitre314/picklescan/pull/53 - type: WEB url: https://github.com/mmaitre314/picklescan/commit/70c1c6c31beb6baaf52c8db1b6c3c0e84a6f9dab - type: PACKAGE url: https://github.com/mmaitre314/picklescan - type: WEB url: https://github.com/mmaitre314/picklescan/releases/tag/v0.0.33 - type: PACKAGE url: https://pypi.org/project/picklescan - type: ADVISORY url: https://github.com/advisories/GHSA-6556-fwc2-fg2p - type: ADVISORY url: https://nvd.nist.gov/vuln/detail/CVE-2025-71339 severity: - type: CVSS_V4 score: 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/E:P