PyPI stopt aanmeldingen te midden van een golf van kwaadaardige pakketuploads gericht op ontwikkelaars

De beheerders van de Python Package Index (PyPI)-repository hebben de aanmeldingen van nieuwe gebruikers kortstondig opgeschort na een toevloed van kwaadaardige projecten die waren geüpload als onderdeel van een typosquatting-campagne.

Er stond dat “het maken van nieuwe projecten en de registratie van nieuwe gebruikers” tijdelijk was stopgezet om een ​​“malware-uploadcampagne” te verzachten. Het incident werd 10 uur later opgelost, op 28 maart 2024, om 12:56 uur UTC.

Software supply chain-beveiligingsbedrijf Checkmarx zei dat de ongeïdentificeerde dreigingsactoren achter het overspoelen van de repository zich richtten op ontwikkelaars met getypte versies van populaire pakketten.

“Dit is een aanval in meerdere fasen en de kwaadaardige lading is bedoeld om crypto-wallets, gevoelige gegevens van browsers (cookies, extensiegegevens, enz.) en verschillende inloggegevens te stelen”, aldus onderzoekers Yehuda Gelb, Jossef Harush Kadouri en Tzachi Zornstain. “Bovendien maakte de kwaadaardige lading gebruik van een persistentiemechanisme om reboots te overleven.”

De bevindingen werden ook onafhankelijk bevestigd door Mend.io, die opmerkte dat het meer dan 100 kwaadaardige pakketten detecteerde die zich richtten op machine learning (ML)-bibliotheken zoals Pytorch, Matplotlib en Selenium.

Cyberbeveiliging

Deze ontwikkeling komt omdat open-sourcerepository's steeds meer een aanvalsvector worden voor bedreigingsactoren om bedrijfsomgevingen te infiltreren.

Typosquatting is een goed gedocumenteerde aanvalstechniek waarbij tegenstanders pakketten uploaden met namen die sterk lijken op hun legitieme tegenhangers (bijv. Matplotlib vs. Matplotlig of tensorflow vs. tenzuurstroom) om nietsvermoedende gebruikers te misleiden om ze te downloaden.

Deze misleidende varianten – met in totaal meer dan 500 pakketten per Check Point – zijn vanaf 26 maart 2024 geüpload vanaf een uniek account, wat erop wijst dat het hele proces geautomatiseerd was.

“Het gedecentraliseerde karakter van de uploads, waarbij elk pakket aan een andere gebruiker wordt toegeschreven, bemoeilijkt de pogingen om deze kwaadaardige inzendingen kruislings te identificeren”, aldus het Israëlische cyberbeveiligingsbedrijf.

Schadelijk pakket

Cyberbeveiligingsbedrijf Phylum, dat ook dezelfde campagne volgt, zei dat de aanvallers publiceerden:

  • 67 variaties van vereisten
  • 38 varianten van Matplotlib
  • 36 variaties van verzoeken
  • 35 variaties van colorama
  • 29 variaties van tensorflow
  • 28 variaties van selenium
  • 26 variaties van MooieSoep
  • 26 varianten van PyTorch
  • 20 variaties kussen
  • 15 variaties van asyncio

De pakketten controleren op hun beurt of het besturingssysteem van het installatieprogramma Windows was, en als dat het geval is, gaan ze verder met het downloaden en uitvoeren van een versluierde payload die is opgehaald uit een door een acteur gecontroleerd domein (“funcaptcha[.]Ru”).

Cyberbeveiliging

De malware functioneert als een stealer en exfiltreert bestanden, Discord-tokens, maar ook gegevens van webbrowsers en cryptocurrency-wallets naar dezelfde server. Verder wordt geprobeerd een Python-script (“hvnc.py”) te downloaden naar de Windows Startup-map voor persistentie.

De ontwikkeling illustreert eens te meer het escalerende risico dat gepaard gaat met aanvallen op de softwaretoevoerketen, waardoor het van cruciaal belang is dat ontwikkelaars elk onderdeel van derden nauwkeurig onderzoeken om er zeker van te zijn dat het bescherming biedt tegen potentiële bedreigingen.

Dit is niet de eerste keer dat PyPI zijn toevlucht neemt tot een dergelijke maatregel. In mei 2023 werden de aanmeldingen van gebruikers tijdelijk uitgeschakeld nadat werd vastgesteld dat “het aantal kwaadwillende gebruikers en kwaadaardige projecten dat de afgelopen week op de index werd gemaakt, ons vermogen om er tijdig op te reageren overtrof.”

PyPI heeft vorig jaar op 27 december voor de tweede keer registraties van nieuwe gebruikers opgeschort om soortgelijke redenen. Het werd vervolgens op 2 januari 2024 opgeheven.

Thijs Van der Does