WeightArmor
Un file di pesi AI può eseguire codice sul tuo computer.
Nessuno lo sta controllando.
Lo scanner statico offline per pesi e modelli AI. Rileva backdoor Pickle, reverse shell ed esecuzione arbitraria di codice (MITRE ATLAS AML.T0010) prima che il modello venga caricato in memoria.
100% Locale & Sicuro
Zero esecuzione
Safe-by-design: non carica né esegue mai il codice serializzato nel file.
Ispezione a basso livello
Disassemblaggio deterministico dello stack opcodes di Pickle e header Safetensors.
Supporto formati
Analizza pesi in formato .safetensors, .bin, .pt, .pth, .pkl, .ckpt.
Filtro deterministico
Riconoscimento immediato di chiamate di sistema, socket reverse shell e subprocess.
=================================================================== WeightArmor — Motore di Ispezione Statica per Modelli AI MC Project Lab · https://www.mcprojectlab.com Analisi offline safe-by-design (zero esecuzione di codice) =================================================================== Target: ./models/trojan_model.bin Formato: PICKLE (Protocollo serializzato) Dimensione: 4,194,304 bytes SHA-256: e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 Verdetto: [BLOCCATO - PERICOLOSO] — Rilevata backdoor / codice eseguibile * RILEVATO CODICE MALEVOLO: Trovate 2 chiamate di sistema pericolose. Il caricamento del file con torch.load() eseguirebbe comandi arbitrari (Reverse Shell / RCE). Vettori identificati nell'analisi statica del bytecode: - [CRITICAL] posix.system (offset byte 142): Esecuzione comando di shell di sistema - [CRITICAL] socket.socket (offset byte 218): Creazione socket di rete (possibile reverse shell) Tempo scan: 1.84 ms ESITO: MINACCIA CRITICA RILEVATA. File non eseguibile e bloccato prima del caricamento in memoria.
Come funziona l'ispezione statica dei pesi AI
Perché i file di pesi AI possono contenere codice eseguibile
Molti formati storici di salvataggio modelli (inclusi .pt, .pth, .bin e .pkl) si basano sulla serializzazione Pickle del runtime Python. A differenza di un semplice file di dati numerici, Pickle è una vera e propria macchina virtuale a stack con istruzioni che permettono di istanziare classi arbitrarie e invocare funzioni di sistema al momento del disinnesco in memoria.
Quando un ricercatore o un'applicazione esegue torch.load() su un modello scaricato da un repository pubblico o da fonti terze, il parser interpreta ed esegue automaticamente le istruzioni incorporate. Se nel file è presente un payload malevolo, questo viene eseguito con i privilegi completi del processo utente.
Ispezione del flusso di istruzioni senza caricamento
WeightArmor opera secondo un principio rigoroso: nessun byte del file viene mai caricato nei runtime di inferenza né deserializzato dal modulo nativo di Python.
- Disassemblaggio deterministico: il motore scansiona la sequenza di opcode del flusso binario, identificando costrutti di chiamata globale (come
GLOBAL,STACK_GLOBAL,REDUCE,BUILD). - Mappatura delle chiamate esterne: ogni modulo e funzione referenziata nel file viene estratta e confrontata con un registro rigoroso di vettori pericolosi (invocazione di shell, esecuzione comandi di sistema, apertura socket di rete, accesso crudo al filesystem).
- Ispezione formati moderni: per i modelli in formato
Safetensors, WeightArmor valida la conformità degli header JSON e l'assenza di payload binari camuffati, garantendo che contengano esclusivamente tensori e metadati numerici.
Dalla Reverse Shell al furto di credenziali
I test condotti su repository aperti hanno dimostrato come payload incapsulati nei pesi AI siano in grado di:
- Avviare processi di sistema (
os.system,subprocess.Popen,posix.system) all'insaputa dell'utente; - Aprire connessioni remote verso server di comando e controllo (C2) tramite primitive socket;
- Estrarre chiavi API per servizi cloud e token memorizzati nelle variabili d'ambiente della macchina di inferenza;
- Manipolare o corrompere pesi e gradienti durante pipeline di fine-tuning o deployment continuo.
Verifica preventiva prima dell'inferenza
WeightArmor è progettato come modulo analitico locale all'interno della Armor Suite di MC Project Lab. Permette di stabilire una linea di demarcazione netta tra i file scaricati dall'esterno e l'ambiente computazionale interno, bloccando alla radice i rischi di supply chain poisoning prima che i modelli raggiungano cluster GPU o postazioni di lavoro.
Parte della Armor Suite di MC Project Lab
WeightArmor affianca LogArmor (sanitizzazione log agenti), Replay (audit trail crittografico) e MailArmor (ispezione email forense offline) per offrire una linea completa di sicurezza e sovranità locale sui dati.