Picklescan is vulnerable to RCE through missing detection when calling numpy.f2py.crackfortran._eval_length
Moderate severity
GitHub Reviewed
Published
Dec 27, 2025
in
mmaitre314/picklescan
•
Updated Jul 18, 2026
Description
Published to the GitHub Advisory Database
Dec 30, 2025
Reviewed
Dec 30, 2025
Published by the National Vulnerability Database
Jun 22, 2026
Last updated
Jul 18, 2026
Summary
Picklescan uses the
numpy.f2py.crackfortran._eval_lengthfunction (a NumPy F2PY helper) to execute arbitrary Python code during unpickling.Details
Picklescan fails to detect a malicious pickle that uses the gadget
numpy.f2py.crackfortran._eval_lengthin__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.PoC
Impact
Credits
References