Letzte Woche identifizierte PyTorch einen Lieferkettenangriff, der möglicherweise dazu führte, dass Entwickler eine kompromittierte PyTorch-Abhängigkeit herunterluden. Das PyTorch-Team hat eine Empfehlung veröffentlicht, um Entwickler zu warnen, dass das Paket bösartigen Code enthält, um Systemdaten zu stehlen.
PyTorch ist ein Open-Source-Framework, mit dem Python-Entwickler Anwendungen für maschinelles Lernen erstellen können. Es wurde hauptsächlich vom Facebook AI Research Team entwickelt und ist in Industrie und Wissenschaft weit verbreitet. PyTorch hilft Organisationen und Forschern bei der Durchführung anspruchsvoller Rechenaufgaben wie Reinforcement Learning, Computer Vision und Verarbeitung natürlicher Sprache.
Am 26. Dezember 2022 hat ein unbekannter böswilliger Akteur ein kompromittiertes Torchtriton-Paket (eine interne Abhängigkeit) mit hochgeladen einen doppelten Namen für das Python Package Index (PyPI)-Repository. Es wurde entwickelt, um Systemdaten und sensible Dateien vom Computer des Opfers zu sammeln und sie dann über verschlüsselte DNS-Abfragen an eine bestimmte Domäne zu senden.
„Da der PyPI-Index Vorrang hat, wurde dieses schädliche Paket anstelle der Version aus unserem offiziellen Repository installiert. Dieses Design ermöglicht es jemandem, ein Paket mit demselben Namen zu registrieren, das in einem Index eines Drittanbieters vorhanden ist, und pip installiert standardmäßig seine Version. Dieses bösartige Paket hat den gleichen Namen Torchtriton, aber Code hinzugefügt, der vertrauliche Daten von der Maschine hochlädt“, schrieb das PyTorch-Team.
Interessanterweise gab die Person, die behauptet, hinter diesem Vorfall zu stecken, an, dass seine Handlungen a Teil der ethischen Forschung. Inzwischen hat er seinen Fehler eingeräumt und sich bei allen betroffenen Entwicklern entschuldigt.
Mitigationen für Python-Umgebungen, die von der bösartigen PyTorch-Abhängigkeit betroffen sind
PyTorch rät Entwicklern, die PyTorch letzte Woche nächtlich per Pip installiert haben, dies zu tun deinstallieren Sie es von ihren Linux-Rechnern. Es wird dringend empfohlen, die neuesten Nightly-Binärdateien herunterzuladen, die nach dem 30. Dezember 2022 veröffentlicht wurden. Das Problem wirkt sich jedoch nicht auf Entwickler aus, die die stabilen PyTorch-Pakete verwenden.
Die Betreuer von PyTorch haben mehrere Maßnahmen detailliert beschrieben, die ergriffen wurden ein Problem ansprechen. Der erste Schritt besteht darin, die Torchtriton-Abhängigkeit für die nächtlichen Pakete zu entfernen und sie dann durch pytorch-triton zu ersetzen. Darüber hinaus registrierten die Betreuer ein Dummy-Paket auf PyPI, um zukünftige Angriffe durch Abhängigkeitsverwirrung zu verhindern.
Das PyTorch-Team stellte Details bereit, um Benutzern bei der Suche nach der bösartigen Binärdatei im Torchtriton-Paket zu helfen. Wenn Sie interessiert sind, können Sie sich das PyTorch-Blog für weitere Details.