CVE-2025-71339Medium▾ SunlitPicklescan is vulnerable to RCE through missing detection when calling numpy.f2py.crackfortran._eval_length
▾ Sunlit zone — Low / medium · no exploitation signal
impact 27.5 · likelihood 0.1 · exploitation 0
Need a working PoC? Pro members can cast a request and our team develops one — it lands right here.
Exploit-prediction probability, daily snapshots since Jul 8.
Disclosure to exploitation, from the record and what we observed since indexing it.
Disclosed via OSV
Last analysed / modified upstream
0.3%
0.3% → 0.5%
Picklescan uses the numpy.f2py.crackfortran._eval_length function (a NumPy F2PY helper) to execute arbitrary Python code during unpickling.
Picklescan 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.
class PoC:
def __reduce__(self):
from numpy.f2py.crackfortran import _eval_length
return _eval_length, ("__import__('os').system('whoami')", None)
picklescan < 0.0.33Upgrade to a patched release:
picklescan 0.0.33Connected by shared product, vendor, weakness, or advisory.
CVE-2025-71321HighPicklescan vulnerable to Arbitrary File Writing
CVE-2025-71322High· 8.8Picklescan Bypasses Unsafe Globals Check using pty.spawn
CVE-2025-71320HighPicklescan has Incomplete List of Disallowed Inputs
CVE-2025-71323Critical· 9.8Picklescan does not block ctypes
CVE-2025-71365High· 8.1Picklescan is vulnerable to RCE through missing detection when calling numpy.f2py.crackfortran.myeval
CVE-2025-71357HighPicklescan is missing detection when calling built-in python idlelib.pyshell.ModifiedInterpreter.runcommand