# Fișierele modelului Hugging Face pot rula cod ascuns

Published: 2026-10-12

Pachetele de modele malițioase pot executa cod în timpul încărcării nesigure. Trei exemple documentate explică reverse shell-urile Pickle, comportamentul scanerului de fișiere corupte și confuzia numelor de model demonstrată prin cercetare, cu limite clare privind afirmațiile de furt de credențiale.

Canonical: https://thedailydiff.dev/ro/video/2026-10-12-huggingface-model-malware/

## Ce acoperă acest videoclip

- Ponderile numerice ale modelului, serializarea executabilă și codul de depozit personalizat sunt lucruri diferite.
- JFrog și ReversingLabs au documentat sarcini utile de reverse-shell; rapoartele lor selectate nu stabilesc furtul de credențiale de la victimele numite.
- Confuzia modelului Checkmarx a fost o demonstrație de cercetare care a necesitat un model la distanță corespunzător și încărcare nesigură.
- Preferă safetensors și încărcătoarele patch-uite, revizuiește și fixează codul personalizat și izolează pachetele necunoscute de secretele personale și de accesul inutil la rețea.

## Capitole

- 0:00 Cum poate o descărcare de model să invite un oaspete?
- 0:35 Cum rulează un încărcător instrucțiunile coletului?
- 1:09 Ce secrete se află la îndemâna procesului?
- 1:38 De ce poate o cale locală lipsă să devină un model la distanță?
- 1:55 Cum au evitat pachetele corupte vechiul scaner?
- 2:44 Ce ține cheia în afara razei de acțiune a oaspetelui?
- 3:12 De ce aș ștampila asta NECESITĂ REVIZUIRE?

## Transcrierea tradusă

Tradus din narațiunea originală în engleză. Audio-ul și subtitrările disponibile sunt controlate de YouTube.

### Cum poate o descărcare de model să invite un oaspete?

0:00 Un fișier model este doar numere pe disc. Încărcarea unui pachet Hugging Face malițios a deschis un shell la distanță, ceea ce este o interpretare ambițioasă a AI locale. Cum devine încărcarea execuție? Ce secrete poate atinge? Ce o oprește de fapt? Și ține minte o ghicitoare. Un model poate să nu se încarce după ce partea periculoasă s-a întâmplat deja.

0:18 Acesta este The Daily Diff, în culise. Hugging Face este o platformă pentru partajarea modelelor de învățare automată, seturi de date și aplicații. Ponderile modelului sunt numerele învățate. Un depozit poate conține, de asemenea, configurare și cod Python. Pericolul aici este ambalajul executabil care ajunge pe computerul tău atunci când îl încarci. Pickle stochează obiecte Python cu instrucțiuni pentru reconstruirea lor.

### Cum rulează un încărcător instrucțiunile coletului?

0:37 Un încărcător nesigur poate urma acele instrucțiuni și apela funcții în timp ce descompune. Descărcarea octeților pune coletul pe disc. Deserializarea îl deschide. Undeva, un format de fișier a fost promovat la administrator de sistem neplătit. JFrog a raportat Goober Two în februarie două mii douăzeci și patru. Sarcina sa utilă Pickle a deschis un shell invers, conectându-se în exterior pentru a oferi acces la comenzi la distanță. Depozitul a fost șters. JFrog a găsit, de asemenea, indicii care sugerează implicarea cercetătorilor,

1:02 astfel încât atribuirea este incertă. Oaspetele nedorit a fost documentat. Furtul de credențiale de la victime reale nu a fost stabilit.

### Ce secrete se află la îndemâna procesului?

1:09 Codul care rulează ca utilizator poate citi orice poate citi acel proces. O cheie cloud montată sau un token accesibil devine o țintă posibilă. Trimiterea ei necesită, de asemenea, o rută de rețea funcțională. Ponderile numerice singure nu au puteri magice de credențiale. Permisiunile tale furnizează partea interesantă a cardului modelului. Există o altă ușă. Unele modele vă cer să aveți încredere în codul la distanță, ceea ce autorizează Python din depozit. Fișierele safetensor pot sta lângă acel cod.

1:32 Verificarea formatului greutății acoperă o intrare, în timp ce codul depozitului încă așteaptă să-i oferi o insignă de vizitator.

### De ce poate o cale locală lipsă să devină un model la distanță?

1:38 Checkmarx a demonstrat Confuzia Modelului. O cale locală a modelului lipsă s-ar putea rezolva într-un depozit public cu un nume corespunzător. Combină asta cu cod la distanță activat, și pachetul greșit poate fi executat. Aceasta a fost o demonstrație de cercetare care a implicat un eșantion al unei companii nenumite, corectat într-o zi. Un folder lipsă a dobândit un proprietar. ReversingLabs a raportat două eșantioane în februarie două mii douăzeci și cinci,

### Cum au evitat pachetele corupte vechiul scaner?

1:58 numind tehnica nullify AI. Ambele conțineau reverse shells. Ambalajul lor 7zip a blocat încărcarea obișnuită PyTorch, deci această cale a necesitat extragerea și deserializarea nesigură. Fluxurile Pickle stricate au expus, de asemenea, o vulnerabilitate a scanerului. O scanare eșuată merită investigată înainte ca cineva să deschidă coletul. În testul inofensiv al cercetătorilor, instrucțiunile au scris un fișier înainte ca încărcătorul

2:18 să ajungă la partea defectă și să genereze o eroare. Imaginează-ți că deschizi un colet, eliberezi ratonul, apoi observi că eticheta de expediere este invalidă. Mesajul de eroare sosește cu o gramatică excelentă și un moment teribil. Hugging Face a eliminat mostrele raportate în decurs de douăzeci și patru de ore și a schimbat scanerul. Această constatare specifică a determinat o remediere. O scanare de securitate este o dovadă utilă, iar tratarea fiecărei erori de scaner ca o confirmare de sănătate rămâne o interpretare remarcabil de generoasă a eșecului.

2:43 Preferă safetensors și încărcătoarele actuale patch-uite.

### Ce ține cheia în afara razei de acțiune a oaspetelui?

2:46 PyTorch și-a restrâns încărcătorul implicit începând cu versiunea 2.6. Revizuiește codul personalizat și fixează revizia revizuită. Rulează pachetele necunoscute izolat, fără chei personale, cu acces restricționat la rețea. Un container plin de credențiale montate este un coș cadou cu spații de nume. Acea ghicitoare de la început are un răspuns. Eșecul la încărcare îți spune unde s-a oprit execuția. Instrucțiunile anterioare s-ar putea să fi rulat deja.

3:08 Ține secretele în afara razei sale de acțiune înainte de a deschide coletul. Verdict, în culise.

### De ce aș ștampila asta NECESITĂ REVIZUIRE?

3:16 încărcător. Descărcarea gratuită ar trebui să vină cu un model, iar lista de invitați ar trebui să rămână decizia mea. Dacă preferi să citești asta decât să mă auzi spunând-o, diferența îți ajunge în inbox în fiecare dimineață, gratuit la the daily diff dot dev, link mai jos. Și asta e diferența pentru astăzi. Sunt Niko de la Axrisi. Îmbină responsabil.

## Surse

- [Data Scientists Targeted by Malicious Hugging Face ML Models with Silent Backdoor](https://jfrog.com/blog/data-scientists-targeted-by-malicious-hugging-face-ml-models-with-silent-backdoor/) — JFrog
- [Malicious ML models discovered on Hugging Face platform](https://www.reversinglabs.com/blog/rl-identifies-malware-ml-model-hosted-on-hugging-face) — ReversingLabs
- [AI Model Confusion: An LLM/AI Model Supply Chain Attack](https://checkmarx.com/zero-post/hugs-from-strangers-ai-model-confusion-supply-chain-attack/) — Checkmarx Zero
- [Pickle Scanning](https://huggingface.co/docs/hub/en/security-pickle) — Hugging Face
- [Safetensors](https://huggingface.co/docs/safetensors/en/index) — Hugging Face
- [Loading custom models](https://huggingface.co/docs/transformers/en/models) — Hugging Face
- [Serialization semantics](https://docs.pytorch.org/docs/2.14/notes/serialization.html) — PyTorch
