Schädliche PHP-Pakete von Packagist
Cybersicherheitsexperten haben auf Packagist schädliche PHP-Pakete entdeckt, die sich als legitime Laravel-Hilfsbibliotheken ausgeben und dabei unbemerkt einen plattformübergreifenden Remote-Access-Trojaner (RAT) einschleusen. Die Schadsoftware läuft nahtlos unter Windows, macOS und Linux und stellt ein erhebliches Risiko für betroffene Systeme dar.
Die identifizierten Pakete umfassen:
- nhattuanbl/lara-helper (37 Downloads)
- nhattuanbl/simple-queue (29 Downloads)
- nhattuanbl/lara-swagger (49 Downloads)
Obwohl nhattuanbl/lara-swagger selbst keinen Schadcode enthält, wird nhattuanbl/lara-helper als Composer-Abhängigkeit aufgeführt, was zur Installation der eingebetteten RAT führt. Trotz der öffentlichen Bekanntmachung sind diese Pakete weiterhin im Repository verfügbar und sollten umgehend aus allen betroffenen Umgebungen entfernt werden.
Inhaltsverzeichnis
Verschleierungstaktiken verbergen böswillige Absichten
Eine detaillierte Codeanalyse zeigt, dass sowohl lara-helper als auch simple-queue eine Datei namens src/helper.php enthalten, die so gestaltet ist, dass sie nicht erkannt wird. Die Malware verwendet ausgefeilte Verschleierungsstrategien, darunter die Manipulation des Kontrollflusses, verschlüsselte Domainnamen und Befehlszeichenfolgen, verborgene Dateipfade sowie zufällige Variablen- und Funktionsbezeichner.
Diese Techniken erschweren die statische Analyse erheblich und helfen der schädlichen Nutzlast, herkömmliche Code-Review- und automatisierte Sicherheitsscanning-Tools zu umgehen.
Die Kommando- und Kontrollinfrastruktur ermöglicht die vollständige Übernahme des Hosts
Nach der Ausführung stellt die RAT eine Verbindung zu einem Command-and-Control-Server (C2-Server) unter helper.leuleu.net auf Port 2096 her. Sie übermittelt Systemaufklärungsdaten und wechselt in einen permanenten Lauscherzustand, um weitere Anweisungen zu erhalten. Die Kommunikation erfolgt über TCP mithilfe der PHP-Funktion `stream_socket_client()`.
Die Hintertür unterstützt eine breite Palette von Bedienerbefehlen und ermöglicht so die vollständige Systemsteuerung. Zu den Funktionen gehören:
- Automatische Herzschlagsignale werden alle 60 Sekunden per Ping gesendet.
- Übermittlung von Systemprofilierungsdaten über Info.
- Shell-Befehlsausführung (cmd).
- PowerShell-Befehlsausführung (powershell).
- Hintergrundausführung von Befehlen (run).
- Bildschirmaufnahme mit imagegrabscreen() (screenshot).
- Dateiexfiltration (Download).
- Beliebigen Datei-Upload mit Lese-, Schreib- und Ausführungsberechtigungen für alle Benutzer (Upload).
- Verbindungsabbruch und Beendigung (Stopp).
Um maximale Zuverlässigkeit zu gewährleisten, prüft der RAT die PHP-Konfiguration `disable_functions` und wählt die erste verfügbare Ausführungsmethode aus den folgenden Optionen: `popen`, `proc_open`, `exec`, `shell_exec`, `system` oder `passthru`. Dieser adaptive Ansatz ermöglicht es ihm, gängige PHP-Sicherheitsmaßnahmen zu umgehen.
Der Mechanismus der anhaltenden Wiederverbindung erhöht das Risiko
Obwohl der identifizierte C2-Server derzeit nicht reagiert, ist die Malware so programmiert, dass sie alle 15 Sekunden in einer Endlosschleife die Verbindungen erneut versucht. Dieser Persistenzmechanismus stellt sicher, dass kompromittierte Systeme weiterhin angreifbar bleiben, selbst wenn der Angreifer die Serververfügbarkeit wiederherstellt.
Jede Laravel-Anwendung, die lara-helper oder simple-queue installiert hat, arbeitet effektiv mit einer eingebetteten Remote-Access-Software (RAT). Der Angreifer erhält vollen Remote-Shell-Zugriff, die Möglichkeit, beliebige Dateien zu lesen und zu verändern, sowie kontinuierliche Einblicke in Systemdetails jedes infizierten Hosts.
Der Ausführungskontext verstärkt die Wirkung
Die Aktivierung erfolgt automatisch beim Anwendungsstart über einen Dienstanbieter oder, im Falle von simple-queue, durch automatisches Laden von Klassen. Dadurch wird die RAT im selben Prozess wie die Webanwendung ausgeführt und erbt identische Dateisystemberechtigungen und Umgebungsvariablen.
Dieser Ausführungskontext ermöglicht dem Angreifer den Zugriff auf sensible Daten wie Datenbankzugangsdaten, API-Schlüssel und den Inhalt der .env-Datei. Die Kompromittierung geht daher über die Systemkontrolle hinaus und führt zur vollständigen Offenlegung von Anwendungsgeheimnissen und des Infrastrukturzugriffs.
Strategie zum Aufbau von Glaubwürdigkeit durch saubere Verpackungen
Weitere Untersuchungen ergaben, dass derselbe Herausgeber zusätzliche Pakete veröffentlichte – nhattuanbl/lara-media, nhattuanbl/snooze und nhattuanbl/syslog –, die keinen Schadcode enthalten. Diese scheinen der Imagepflege zu dienen, um das Vertrauen zu stärken und die Verbreitung der präparierten Pakete zu fördern.
Sofortmaßnahmen zur Schadensbegrenzung und Reaktion
Organisationen, die eines der schädlichen Pakete installiert haben, sollten von einer Kompromittierung ausgehen. Zu den erforderlichen Maßnahmen gehören die sofortige Entfernung der betroffenen Bibliotheken, die regelmäßige Änderung aller Zugangsdaten, die über die Anwendungsumgebung zugänglich sind, und eine gründliche Überprüfung des ausgehenden Netzwerkverkehrs auf Verbindungsversuche zur identifizierten C2-Infrastruktur.
Ein Versäumnis, entschieden zu reagieren, könnte dazu führen, dass Systeme erneut Angreifern zugänglich werden, falls die Kommando- und Kontrollinfrastruktur wieder betriebsbereit ist.