NPY numpy.lib.format.open_memmap() trigger backdoor security PoC
This repository contains a benign security research proof-of-concept for the Huntr Model File Vulnerability program.
It demonstrates a numeric-only .npy model-weight artifact that loads with numpy.lib.format.open_memmap(path, mode="r") and flips inference output only for trigger inputs. The malicious file does not use object dtype or pickle.
Files:
control_npy_classifier.npymalicious_npy_trigger.npyreproduce.pyrequirements.txt
Reproduction:
python -m venv /tmp/npy-open-memmap-trigger-poc-venv
. /tmp/npy-open-memmap-trigger-poc-venv/bin/activate
pip install -r requirements.txt
curl -L -O https://huggingface.co/hacnho/npy-open-memmap-trigger-backdoor-poc/resolve/main/control_npy_classifier.npy
curl -L -O https://huggingface.co/hacnho/npy-open-memmap-trigger-backdoor-poc/resolve/main/malicious_npy_trigger.npy
curl -L -O https://huggingface.co/hacnho/npy-open-memmap-trigger-backdoor-poc/resolve/main/reproduce.py
python reproduce.py control_npy_classifier.npy malicious_npy_trigger.npy
Expected result:
- benign classes match between the control and malicious files
- trigger row
[2337, -2337]flips from class1to class0 modelscan==0.8.8reportsNo issues found!while scanning the.npyfile withNumpyUnsafeOpScan
Public file URLs:
- https://huggingface.co/hacnho/npy-open-memmap-trigger-backdoor-poc/resolve/main/control_npy_classifier.npy
- https://huggingface.co/hacnho/npy-open-memmap-trigger-backdoor-poc/resolve/main/malicious_npy_trigger.npy
- https://huggingface.co/hacnho/npy-open-memmap-trigger-backdoor-poc/resolve/main/reproduce.py
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support