Packj — ein Werkzeug zur Erkennung von schĂ€dlichen Bibliotheken in Python und JavaScript.

Die Entwickler der Plattform Packj, die die Sicherheit von Bibliotheken analysiert, haben ein Open-Source-Tool fĂŒr die Kommandozeile veröffentlicht, das riskante Konstrukte in Paketen aufdecken kann, die mit der DurchfĂŒhrung von böswilligen AktivitĂ€ten oder der Existenz von Schwachstellen in Verbindung stehen, die fĂŒr Angriffe auf Projekte verwendet werden, die diese Pakete nutzen («supply chain»). Es wird eine ÜberprĂŒfung von Paketen in den Programmiersprachen Python und JavaScript unterstĂŒtzt, die in den Repositories PyPi und NPM abgelegt sind (diesen Monat wird auch die UnterstĂŒtzung fĂŒr Ruby und RubyGems hinzugefĂŒgt). Der Code des Tools ist in Python geschrieben und wird unter der Lizenz AGPLv3 verbreitet.

Bei der Analyse von 330.000 Paketen mit dem bereitgestellten Tool im Repository PyPi wurden 42 bösartige Pakete mit Backdoors und 2.400 riskante Pakete identifiziert. WĂ€hrend der Untersuchung wird eine statische Codeanalyse durchgefĂŒhrt, um Merkmale der API zu identifizieren und das Vorhandensein bekannter Schwachstellen, die in der OSV-Datenbank erfasst sind, zu bewerten. FĂŒr die API-Analyse wird das Paket MalOSS verwendet. Der Code der Pakete wird auf das Vorhandensein typischer Muster untersucht, die ĂŒblicherweise in bösartiger Software vorkommen. Diese Muster basieren auf der Untersuchung von 651 Paketen mit nachgewiesener bösartiger AktivitĂ€t.

Es werden auch Attribute und Metadaten identifiziert, die das Risiko einer nicht zielgerichteten Nutzung erhöhen, wie zum Beispiel die AusfĂŒhrung von Codeblöcken ĂŒber «eval» oder «exec», die Erstellung neuen Codes zur Laufzeit, die Verwendung von Techniken zur Verschleierung und Verstecken von Code (obfuscated), Manipulationen mit Umgebungsvariablen, unzulĂ€ssiger Zugriff auf Dateien, Anfragen an Netzwerkressourcen in Installationsszenarien (setup.py), die Verwendung von Typ-Squatting (Vergabe von Namen, die populĂ€ren Bibliotheken Ă€hneln), die Identifizierung veralteter und aufgegebener Projekte, die Angabe nicht existierender E-Mail-Adressen und Websites, und das Fehlen eines öffentlichen Repositories mit Code.

ZusĂ€tzlich kann erwĂ€hnt werden, dass andere Sicherheitsforscher fĂŒnf bösartige Pakete im Repository PyPi identifiziert haben, die Daten nach außen sendeten. Server Inhalte von Umgebungsvariablen zur Entwendung von Tokens fĂŒr AWS und kontinuierliche Integrationssysteme: loglib-modules (vorgestellt als Module der legitimen Bibliothek loglib), pyg-modules, pygrata und pygrata-utils (vorgestellt als ErgĂ€nzungen zur legitimen Bibliothek pyg) sowie hkg-sol-utils.

Packj - ein Werkzeug zur Erkennung schadhafter Bibliotheken in Python- und JavaScript-Sprachen


Quelle: opennet.ru
60GB SSD 8Gb DDR4