A Hugging Face modellfájljai rejtett kódot futtathatnak
Rosszindulatú modellcsomagok kódot hajthatnak végre a nem biztonságos betöltés során.
Rosszindulatú modellcsomagok kódot hajthatnak végre a nem biztonságos betöltés során. Három dokumentált példa magyarázza a Pickle fordított shelljeit, a hibás fájlszkennerek viselkedését és a kutatással igazolt modellnév-zavart, a hitelesítő adatok lopására vonatkozó állítások egyértelmű korlátaival.
Olvassa el az írott kiadást (angolul) ↗
Amit ez a videó tartalmaz
- A numerikus modell súlyok, a futtatható szerializálás és az egyéni tároló kódja különböző dolgok.
- A JFrog és a ReversingLabs dokumentálta a fordított shell payloadokat; kiválasztott jelentéseik nem támasztják alá a hitelesítő adatok ellopását a megnevezett áldozatoktól.
- A Checkmarx modellzavara egy kutatási demonstráció volt, amelyhez megfelelő távoli modell és nem biztonságos betöltés szükséges.
- Előnyben részesítse a safetensors és a javított betöltőket, tekintse át és rögzítse az egyéni kódot, és izolálja az ismeretlen csomagokat a személyes titkoktól és a felesleges hálózati hozzáféréstől.
Lefordított átirat
Az eredeti angol narrációból fordítva. A rendelkezésre álló hangot és feliratokat a YouTube vezérli.
Hogyan hívhat meg egy vendéget egy modellletöltés?
0:00 Egy modellfájl csak számok a lemezen. Egy rosszindulatú Hugging Face csomag betöltése egy távoli shellt nyitott meg, ami a helyi AI ambiciózus értelmezése. Hogyan válik a betöltés végrehajtássá? Milyen titkokat érhet el? Mi állítja meg valójában? És tartson észben egy rejtvényt. Egy modell betöltése sikertelen lehet, miután a veszélyes rész már megtörtént.
0:18 Ez a The Daily Diff, a háttérben. A Hugging Face egy platform a gépi tanulási modellek, adatkészletek és alkalmazások megosztására. A modell súlyok a megtanult számok. Egy tároló konfigurációt és Python kódot is tartalmazhat. A veszély itt a futtatható csomagolásban rejlik, amely a számítógépedre kerül, amikor betöltöd. A Pickle Python objektumokat tárol, utasításokkal az újjáépítésükhöz.
Hogyan futtatja a betöltő a csomag utasításait?
0:37 Egy nem biztonságos betöltő követheti ezeket az utasításokat, és függvényeket hívhat meg a kicsomagolás során. A bájtok letöltése a csomagot a lemezre helyezi. A deszerializálás megnyitja azt. Valahol egy fájlformátumot fizetés nélküli rendszergazdává léptettek elő. A JFrog 2024 februárjában jelentette a Goober Two-t. A Pickle payloadja egy fordított shellt nyitott, kifelé csatlakozva, hogy távoli parancshozzáférést biztosítson. A tárolót törölték. A JFrog kutatói részvételre utaló nyomokat is talált,
1:02 így az attribúció bizonytalan. A nem kívánt vendéget dokumentálták. A tényleges áldozatoktól való hitelesítő adatok ellopását nem igazolták.
Mely titkok vannak a folyamat hatókörében?
1:09 A felhasználóként futó kód bármit elolvashat, amit a folyamat elolvashat. Egy csatlakoztatott felhő kulcs vagy egy hozzáférhető token lehetséges célponttá válik. Az elküldéshez működő hálózati útvonalra is szükség van. Önmagukban a numerikus súlyoknak nincs mágikus hitelesítő ereje. Az engedélyeid szolgáltatják a modellkártya érdekes részét. Van egy másik ajtó. Néhány modell megkéri, hogy bízzon a távoli kódban, amely felhatalmazza a Python-t a tárolóból. A biztonságos tensor fájlok e kód mellett helyezkedhetnek el.
1:32 A súlyformátum ellenőrzése egy bejáratot fed le, míg a tároló kódja még arra vár, hogy átadjon neki egy látogatói jelvényt.
Miért válhat egy hiányzó helyi útvonal távoli modellé?
1:38 A Checkmarx bemutatta a Modellzavart. Egy hiányzó helyi modellútvonal egyező nevű nyilvános tárolóra mutathat. Kombinálja ezt távoli kóddal engedélyezve, és a rossz csomag végrehajtható. Ez egy kutatási demonstráció volt, amely egy meg nem nevezett vállalat mintáját érintette, egy napon belül kijavítva. Egy hiányzó mappa tulajdonost szerzett. A ReversingLabs két mintát jelentett 2025 februárjában,
Hogyan kerülték el a törött csomagok a régi szkennert?
1:58 nullify AI néven nevezve a technikát. Mindkettő fordított shellt tartalmazott. A 7zip csomagolásuk blokkolta a szokásos PyTorch betöltést, így ez az út kibontást és nem biztonságos deszerializálást igényelt. A törött Pickle streamek a szkenner vakfoltját is felfedték. A sikertelen szkennelést meg kell vizsgálni, mielőtt bárki kinyitná a csomagot. A kutatók ártalmatlan tesztjében az utasítások fájlt írtak, mielőtt a betöltő
2:18 elérte a törött részt és hibát dobott. Képzelje el, hogy kinyit egy csomagot, kiengedi a mosómedvét, majd észreveszi, hogy a szállítási címke érvénytelen. A hibaüzenet kiváló nyelvtannal és borzalmas időzítéssel érkezik. A Hugging Face 24 órán belül eltávolította a jelentett mintákat, és megváltoztatta a szkennert. Ez a konkrét megállapítás javítást eredményezett. A biztonsági vizsgálat hasznos bizonyíték, és minden szkennerhibát tiszta egészségügyi igazolásként kezelni továbbra is rendkívül nagylelkű értelmezése a hibának.
2:43 Előnyben részesítse a biztonságos tenszorokat és az aktuális javított betöltőket.
Mi tartja a kulcsot a vendég hatókörén kívül?
2:46 A PyTorch 2.6-os verziótól kezdődően szűkítette az alapértelmezett betöltőjét. Tekintse át az egyéni kódot, és rögzítse az áttekintett revíziót. Futtassa az ismeretlen csomagokat elkülönítve, személyes kulcsok nélkül, korlátozott hálózati hozzáféréssel. A csatlakoztatott hitelesítő adatokkal teli konténer egy ajándékkosár névterekkel. Ennek a kezdeti rejtvénynek van válasza. A betöltési hiba megmondja, hol állt le a végrehajtás. Korábbi utasítások már futhattak.
3:08 Tartsa a titkokat a hatókörén kívül, mielőtt kinyitná a csomagot. Ítélet, a háttérben.
Miért pecsételném ezt a NEEDS REVIEW-t?
3:16 betöltő. Az ingyenes letöltéshez modellnek kell járnia, és a vendéglista maradjon az én döntésem. Ha inkább olvasná ezt, mint hallaná tőlem, a diff minden reggel megérkezik a postafiókjába, ingyenesen a the daily diff dot dev címen, link lent. És ez a mai diff. Niko vagyok az Axrisitől. Felelősen egyesítsen.
Források
- Data Scientists Targeted by Malicious Hugging Face ML Models with Silent BackdoorJFrog
- Malicious ML models discovered on Hugging Face platformReversingLabs
- AI Model Confusion: An LLM/AI Model Supply Chain AttackCheckmarx Zero
- Pickle ScanningHugging Face
- SafetensorsHugging Face
- Loading custom modelsHugging Face
- Serialization semanticsPyTorch



