GitHub támadások: rejtett rosszindulatú kód Unicode karakterekkel

A biztonságkutatók felfedeztek egy nagyszabású kampányt, amelyben a támadók olyan GitHub-projekteket tesznek közzé, amelyek rejtett rosszindulatú kódot tartalmaznak. Ezek a tárolók speciális Unicode karaktereket használnak, amelyeket vizuális kódellenőrzés során szinte lehetetlen észrevenni. A fejlesztők számára üres helyeknek vagy soroknak tűnnek, de amikor egy értelmező feldolgozza őket, a kód helyesen dekódolódik és káros műveleteket hajt végre.

Az Aikido Security szakértői szerint március 3. és 9. között legalább 151 ilyen módon elkészített csomag jelent meg a platformon. Ezek a projektek gyakran népszerű könyvtárak vagy ismert szoftvereszközök álcáját öltik magukra, ami növeli annak esélyét, hogy a fejlesztők véletlenül használják őket. Első pillantásra a kód biztonságosnak és olvashatónak tűnik, de a veszélyes funkciók láthatatlan karakterek sorozatában rejtőznek, így a hagyományos kézi ellenőrzések hatástalanok a fenyegetés felderítésében. Hasonló megfigyeléseket már dokumentáltak más platformokon is, mint például az NPM, az Open VSX és a VS Code bővítmények piaca.

A szakértők a kampányt egy ideiglenesen Glassworm néven elnevezett csoporthoz kötik. Tagjaik azonosítása rendkívül nehéz, mivel a tárolók nagyon hihetőnek tűnnek. Rendszeresen tartalmaznak dokumentáció-frissítéseket, verzióváltozásokat, hibajavításokat és kódátalakításokat – mindezek egy aktív projektfejlesztés utánzatai. A szakértők szerint a támadók a generatív AI-modellek segítségével hozhatták létre ezeket a realisztikus változtatásokat nagy mennyiségben.

Technikailag a támadás azt használja ki, hogy néhány Unicode karakter vizuálisan megkülönböztethetetlen az üres helyektől, de latin ábécé karakterekként értelmezhető. Ennek eredményeként egy kis beépített dekóder tényleges bájtokat nyer ki ezekből a szimbólumokból, és átadja őket egy kódvégrehajtó függvénynek. A kutatók megjegyzik, hogy a felfedezett projektek csak egy kis részét képviselhetik a teljes kampánynak, mivel a rosszindulatú csomagokat gyakran eltávolítják, miután elegendő letöltést gyűjtöttek.