Flut von Angriffen auf Paketmanager PyPI schleust Backdoor in Python-Pakete ein - Starstube

Flut von Angriffen auf Paketmanager PyPI schleust Backdoor in Python-Pakete ein

Flut von Angriffen auf Paketmanager PyPI schleust Backdoor in Python-Pakete ein

Derzeit läuft offensichtlich ein großangelegter Angriff auf Inhalte im Python-Paketmanager PyPI. Sonatype hatte zunächst fünf Pakete mit Schadcode identifiziert, der sensible Daten wie AWS-Schlüssel und weitere Secrets an einer anfangs ungeschützten öffentlichen Site hochgeladen hat. Seitdem sind zahlreiche weitere Vorfälle in der CVE-Datenbank (Common Vulnerabilities and Exposures) aufgetaucht.

Die fünf angegriffenen Pakete, die Sonatype ausgemacht hat, stellen namentlich eine eigentümliche Mischung dar. Während loglib-modules und pyg-modules Offensichtlich auf Entwicklerinnen und Entwicklerziele, sterben sterben PyPI-Pakete loglib und pyg verwenden, findet sich für die anderen drei kein direkter Bezug zu bekannten Python-Paketen. Sie heissen pygrata, pygrata-utils und hkg-sol-utils.

Auch die beiden bekannten Pakete sind nicht wirklich stark verbreitet. Das als Alternative zum Paketmanagertool pip gestartete pyg ist laut der Projektbeschreibung offiziell tot und setzt noch auf die veralteten Python-Versionen 2.6 und 2.7.

Einige der Pakete enthalten direkten Schadcode, und andere laden ihn erst über eine Abhängigkeit nach. Sonatype hat im Blogbeitrag einen Screenshot eines Codeausschnitts veröffentlicht, der unter anderem den Zugriff auf Amazon-Credentials, Informationen zum Netzwerkinterface und Umgebungsvariablen zeigt.

Der Code versucht unterschiedliche Secrets auszulesen.

(Bild: Sonatype)

Der Bezug zu den beiden Paketen mit Pygrata im Namen ergibt sich im Schadcode, der die abgegriffenen Informationen auf Endpunkte der gleichnamigen .com-Domain hochlädt. Interessanterweise waren diese zunächst ungeschützt erreichbar, wodurch die Sicherheitsforscher Zugriff auf die hochgeladenen Textdateien veranlassten.

Sonatype hat die Betreiber der Domain kontaktiert und sie über den Vorfall und den unerwarteten Zugriffsschutz informiert. Damit wollten die Sicherheitsforscher ausschließen, dass es sich bei den Angreifern um ein legitim handelndes Red Team handelt, das gezielt die Sicherheit untersucht. Dass die Betreiber der Domain eine Antwort blieben, aber den öffentlichen Zugriff auf Pygrata in Folge sperrten, legt die Vermutung nahe, dass es sich um einen gezielten, bösartigen Angriff handelte.

Die PyPI-Betreiber haben inzwischen die fünf Pakete entfernt. Seitdem sind auf der Plattform zahlreiche weitere Pakete mit Schadcode aufgetaucht. Eine Suche nach „pypi“ im Frontend der National Vulnerability Database zeigt allein zwanzig Treffer vom 24. Juni. Alle Ergebnisse haben dieselbe Beschreibung der Schwachstelle, die auf eine Backdoor hinweist.

Schadcode in Open-Source-Paketen gehört zu den verbreiteten Angriffen auf die Software Supply Chain. Angreiferinnen und Angreifer veröffentlichen auf Paketmanagern vermeintlich nützliche Pakete, die Developer in ihren Anwendungen verwenden. Häufige Methoden sind das Typosquatting und das Brandjacking. Letzteres used Firmennamen wie Twilio, um eine legitime Quelle vorzutäuschen.

Beim Typosquatting tragen die Pakete mit Schadcode Namen, sterben den Bezeichnungen beliebter Pakete ähneln. Die Methode setzt zum einen auf Tippfehler und verwendet zum anderen Trennzeichen wie Unter- und Bindestriche. Aus my-packet wird my-paket, mypacket Oder my_packet. Irgendwer wird sich schon vertippen, so die berechtigte Hoffnung der Angreifenden.

Ein weiterer Angriffsvektor sind zunächst zuverlässig und harmlose Pakete, die den Schadcode erst dann mitbringen, wenn sie eine gewisse Verbreitung erreicht haben. Das npm-Team hatte 2019 mit electron-native-notify ein solches Package entdeckt. Anschließend versucht Dependency Confusion intern gehostete Dependencies durch gleichnamige externe Pakete mit Schadcode zu ersetzen. Letztere bekommen dazu eine hohe Versionsnummer, da die Paketinstallationswerkzeuge wie pip je nach Einstellung das Paket mit der höchsten Nummer verwenden, das vermeintlich das aktuellste ist.

Weitere Details zu der ursprünglichen Attacke lassen sich dem Sonatype-Blog entnehmen. Mitte Juni hatte die Open Source Security Foundation (OpenSSF) angekündigt, die Python Software Foundation mit 400.000 US-Dollar zu unterstützen. Die Stiftung ist unter anderem für den Paketmanager PyPI verantwortlich, und das Geld soll zusätzliche Sicherheits-Maßnahmen dienen.


(rme)

Zur Startseite

.
#Flut #von #Angriffen #auf #Paketmanager #PyPI #schleust #Backdoor #PythonPakete #ein