YAML Metadata Warning:empty or missing yaml metadata in repo card

Check out the documentation for more information.

Security PoC β€” torch.package scanner member-selection bypass β†’ unconditional code execution (huntr MFV)

Security-research PoC for a huntr MFV submission. Not malware β€” the payload only writes a harmless /tmp marker.

model_scanskip.pt executes code at the default PackageImporter.load_pickle() while both modelscan and picklescan report no issues β€” because neither scanner ever parses the malicious member (modelscan selects a member's format by file extension; picklescan scans a member only if it has a pickle extension or a leading \x80). The payload is a proto-0 builtins.eval pickle stored as a non-pickle-extension member.

Environment

pip install torch==2.13.0 modelscan==0.8.8 picklescan==1.0.4   # Python 3.10

Reproduce

modelscan  -p model_scanskip.pt      # -> "No issues found! πŸŽ‰" (malicious member skipped)
picklescan -p model_scanskip.pt      # -> "Scanned files: 0, Infected files: 0"
rm -f /tmp/huntr_r2_scanskip
python load.py                        # -> marker AFTER: True, contents: PWNED_R2_SCANSKIP

Controls: controlA_proto2_storage.pt (proto-2 β†’ picklescan catches it) and controlB_proto0_dill.zip (.dill name β†’ modelscan catches it) prove only the specific combo (non-pickle-ext + proto-0/1) evades both. craft.py shows how the file is built.

Downloads last month

-

Downloads are not tracked for this model. How to track
Inference Providers NEW
This model isn't deployed by any Inference Provider. πŸ™‹ Ask for provider support