V poslední době sbyly zveřejněny podrobnosti o útoku že infrastruktura použitá při vývoji rámce strojového učení utrpěla PyTorch. Mezi odhalenými technickými detaily je zmíněno, že Útočníkovi se podařilo získat přístupové klíče což vám umožnilo umístit libovolná data do úložiště GitHub a AWS, nahradit kód v hlavní větvi úložiště a přidat zadní vrátka prostřednictvím závislostí.
Tento incident představuje značná rizika, protože spoofing verzí PyTorch by mohl být použit k útokům na velké společnosti, jako je Google, Meta, Boeing a Lockheed Martin, které používají PyTorch ve svých projektech.
Před čtyřmi měsíci jsme s Adnanem Khanem využili kritickou zranitelnost CI/CD v PyTorch, jedné z předních světových platforem strojového učení. PyTorch, který používají titáni jako Google, Meta, Boeing a Lockheed Martin, je hlavním cílem hackerů i národních států.
Naštěstí jsme této zranitelnosti využili dříve, než to udělali padouši.
Takhle jsme to udělali.
Ohledně útoku se uvádí, že toto jde o schopnost spouštět kód na serverech s nepřetržitou integrací které provádějí přestavby a spouštějí úlohy k testování nových změn vložených do úložiště. Problém se týká projektů, které používají externí ovladače „Self-Hosted Runner“. s akcemi GitHub. Na rozdíl od tradičních akcí GitHub neběží samoobslužné řadiče na infrastruktuře GitHub, ale na vlastních serverech nebo na virtuálních strojích spravovaných vývojáři.
Spouštění úloh sestavení na vašich serverech vám umožňuje organizovat vydávání kódu, který dokáže skenovat interní síť společnosti, vyhledávat v místním FS šifrovací klíče a přístupové tokeny a analyzovat proměnné prostředí s parametry pro přístup k externímu úložišti nebo cloudovým službám a s tím, prostřednictvím těchto ovladačů byl útočník schopen provádět kompilační úlohy na svých vlastních serverech, což mu umožnilo prohledat interní síť společnosti a vyhledat šifrovací klíče a přístupové tokeny.
V PyTorch a dalších projektech, které používají Self-Hosted Runner, los Vývojáři mohou spouštět úlohy sestavenín až po kontrole vašich změn. nicméně, útočníkovi se podařilo tento systém obejít tím, že nejprve poslal menší změnu a poté, jakmile bude přijat, automaticky získal status "spolupracovník" který vám umožnil spouštět kód v libovolném prostředí GitHub Actions Runner přidruženého k úložišti nebo dohlížející organizaci. Během útoku byly zachyceny přístupové klíče GitHub a klíče AWS, což útočníkovi umožnilo kompromitovat infrastrukturu.
Odkaz na stav „přispěvatel“ se ukázal být snadno obejít: stačí nejprve odeslat drobnou změnu a počkat, až bude přijata do kódové základny, poté vývojář automaticky obdrží status aktivního účastníka. jehož požadavky na stahování lze testovat v infrastruktuře CI bez samostatného ověřování. Aby bylo dosaženo stavu aktivního vývojáře, experiment zahrnoval drobné kosmetické změny, které opravily překlepy v dokumentaci. Pro získání přístupu k úložišti a úložišti verzí PyTorch byl během útoku při spouštění kódu v „Self-Hosted Runner“ zachycen token GitHub používaný pro přístup k úložišti z procesů sestavení (GITHUB_TOKEN povolil přístup pro zápis). jako klíče AWS zapojené do ukládání výsledků sestavení.
Jako takové je uvedeno, že tento problém není specifický pro PyTorch a týká se jiných velkých projektů které používají výchozí konfigurace pro „Samostatně hostovaného běžce“ v akcích GitHubu.
Kromě toho byla zmíněna možnost podobných útoků na kryptoměnu, blockchain, Microsoft Deepspeed, TensorFlow a další projekty s potenciálně vážnými důsledky. Výzkumníci podali více než 20 žádostí o odměny za chyby, které požadovaly odměny v hodnotě několika set tisíc dolarů.
konečně jestli jsi zájem dozvědět se o tom více, můžete zkontrolovat podrobnosti v následující odkaz.