A Stack Overflow egy olyan globálisan használt platform a fejlesztők körében, melyen megoszthatják egymással tudásukat, viszont a hackerek számára tökéletes környezetet biztosít az interfészeknek és és könyvtáraknak álcázott malware-ek terjesztéséhez. Ebben a közösségben a támadók magukat segítőkész felhasználóknak kiadva úgy válaszolnak a feltett kérdésekre, hogy közben egy rosszindulatú PyPi csomagot terjesztenek.
A Sonatype kutatója felfedezte, hogy ez az új PyPi csomag egy korábban ismert “Cool package” kampány része. Ez a PyPi csomag a “pytoileur” nevet kapta, amit a hackerek feltöltöttek a PyPi adattárba, azt állítva, hogy ez egy API kezelő eszköz.
Az ilyen malware csomagokat általában más népszerű csomagokhoz hasonló nevekkel álcázzák, ez a folyamat a typo-squatting. Ezzel a csomaggal azonban a hackerek újszerű megközelítést alkalmaztak: a Stack Overflow-n feltett kérdésekre válaszoltak, és megoldásként reklámozták a csomagot.
Sonatype jelentésben az áll, hogy nemrég létrehozták az “EstAYA G” StackOverflow fiókot. A programozók feltett kérdéseire úgy válaszolnak a hackerek, hogy “megoldásként” azt javasolják telepítsék a malware-t, annak ellenére, hogy ez a „javasolt megoldás” nem is kapcsolódik a feltett kérdéshez.
Ebben az esetben a pytoileur csomag tartalmaz egy “setup.py” fájlt, amely egy base64 kódolású parancsot tölt ki, amelyet szóközökkel kell végrehajtani, így rejtve marad, hacsak nem kerül engedélyezésre a word wrap az IDE-ben vagy a szövegfájl szerkesztőben.
Deobfuszkáláskor ez a parancs letölti az “runtime.exe” [VirusTotal] nevű végrehajtható fájlt egy távoli webhelyről majd futtatja azt.
Ez az „.exe” valójában egy átalakított Python program, amely cookie-kat, jelszavakat, böngészési előzményeket, hitelkártya adatokat és egyéb információkat gyűjt a böngészőkből, valamint bizonyos kifejezéseket keres rá a dokumentumokban. A megszerzett információkat visszaküldi a támadónak, aki eladhatja azokat a darkweben, vagy felhasználhatja az áldozat további fiókjainak feltörésére.
A fejlesztőknek ellenőrizniük kell a projektjeikhez hozzáadott összes csomag forrását, még abban az esetben is, ha az megbízhatónak tűnik. Ellenőrizni kell a kódot (engedélyezett szótördeléssel), hogy nincsenek-e benne szokatlan vagy obfuszkált parancsok.