Pythoni pakettide hoidla PyPI (Python Package Index) on ajutiselt keelanud uute kasutajate registreerimise ja uute projektide loomise, kuna varitses pidev massiline pahavara pakettide üleslaadimine automatiseeritud rünnaku käigus. Keeld kehtestati pärast seda, kui 26. ja 27. märtsil laaditi hoidlasse üles 566 pahavara koodi sisaldavat paketti, mis olid stiliseeritud 16 tuntud Python'i teeki järgi.
Pakettide nimed on loodud typokvotimise abil, st sarnaste nimede määramine, mis erinevad üksikute sümbolite poolest, näiteks temsorflow asemel tensorflow, requyests asemel requests, asyincio asemel asyncio jne. Selliste rünnakute korral loodavad kurjategijad tähelepanematutele kasutajatele, kes teevad trükivigu või ei märka nimede erinevusi, kui nad otsivad või klikivad linkidel foorumitest ja vestlustest, kus kurjategijad jätavad valejuhised.
Kahjustavad paketid põhinevad seaduslike raamatukogude koodil, kuhu on sisse ehitatud eraldi muudatused, mis installivad süsteemi pahavara, mis otsib ja saadab konfidentsiaalseid andmeid ja faile, mis sisaldavad paroole, ligipääsuvõtmeid, krüptorahakotte, token'e ja seansi küpsiseid. Kahjustav kood sisestatakse faili setup.py, mida käivitatakse paketi installimise ajal. Paketi aktiveerimisel laadib muudetud komponent alla põhikomponendid välisest allikast. serverile.
Kahes päevaga laadisid kurjategijad alla 29 pahatahtlikku tensorflow paketti, 26 — BeautifulSoup, 26 — PyGame, 15 — SimpleJson, 38 — Matplotlib, 26 — PyTorch, 67 — CustomTKInter, 28 — selenium, 17 — playwright, 15 — asyncio ning 67 — requirements. Lisaks tuvastati üksikute teekide valeidentiteediga juhtumeid, sealhulgas requests, py-cord, colorama, capmonstercloudclient, pillow ja bip-utils.
Eraldi märgitakse rünnak Top.gg kogukonna vastu, kus on 170 tuhat kasutajat. Rünnaku käigus õnnestus ründajal kompromiteerida ühe top.gg arendaja GitHubi kontot, varastades brauseri küpsised. Ründaja lisas ka kolm paketti PyPI hoidlasse ja registreeris. domeenidele pypihosted.org ja pythanhosted.org, kus on loodud peegeldus kurjahariduste põhjal pakettide levitamiseks.
Häkitud GitHubi konto kaudu tehti muudatus projekti top.gg repos, kus asus Pythoni mähis API Top.gg jaoks, lisades faili requirements.txt. Failis oli loetelu allalaetavatest sõltuvustest, kus pahatahtliku colorama klooni allalaadimise varjus oli link vale domeenilt pypihosted.org, lootes, et arendajad ei märka erinevust tavapärase domeeniga pythonhosted.org, millelt pakette tavaliselt PyPI-s alla laaditakse.
Allikas: opennet.ru
