Onderzoekers van Phylum ontdekten tientallen Python packages die infostealers verspreiden op het PyPi registry.

Phylum ontwikkelt software supply chain security-oplossingen. Het bedrijf doet doorlopend onderzoek naar risico’s in het PyPi registry, een populaire catalogus voor softwareontwikkelaars. Het meest recente onderzoeksrapport werd op 1 november gepubliceerd.

“Vorige week waarschuwde ons geautomatiseerde risk detection-platform voor verdachte activiteiten in tientallen nieuw gepubliceerde PyPi packages”, vertelde het bedrijf. “Het lijkt erop dat deze packages een verfijnde poging zijn om de W4SP infostealer af te leveren bij Python-ontwikkelaars.”

Hoe het werkt

De meeste packages bevatten verborgen code die de W4SP infostealer op geïnfecteerde systemen dropt. De aanvallers beginnen met een kopie van bestaande libraries op het PyPi registry. Vervolgens wordt er een kwaadaardige __import__ statement geïnjecteerd in de verder gezonde codebase, aldus Phylum.

“Aanvallers kopiëren legitieme packages omdat de PyPi-landingspagina daardoor wordt gegenereerd met een legitieme setup.py en README.md. Als gevolg ziet de landingspagina er direct betrouwbaar uit, inclusief werkende links en realistische tekst.”

Volgens Phylum is het makkelijk om de kwaadaardige packages te vergissen voor legitieme packages. Tenzij je de packages grondig inspecteert lijkt de code betrouwbaar, aldus het bedrijf.

Getroffen packages

Phylum publiceerde een lijst van alle kwaadaardige packages die tot nu toe zijn opgedoken en een malware-import bevatten of een kwaadaardig component proberen te installeren.

De onderzoekers merken op dat de aanvallers hun tactieken voortdurend veranderen. Het is een professionele operatie. Phylum verwacht “dat er in de nabije toekomst meer van dit soort malware zal opduiken”.

Volgens statistieken van pepy.tech hebben de getroffen packages gezamenlijk meer dan 5.700 downloads. Dit is niet de eerste keer dat PyPi worstelt met malware. Vorig jaar verwijderde de organisatie meer 3.000 kwaadaardige packages uit het repository.