Die Analyse von Socket beschreibt eine Operation, bei der ein Angreifer mehrere PHP-Pakete im Packagist-Verzeichnis veröffentlicht hat. Während sich “nhattuanbl/lara-swagger” auf den ersten Blick harmlos gibt und keinen Schadcode direkt einbettet, listet es “nhattuanbl/lara-helper” als Composer-Abhängigkeit – wodurch der RAT bei der Installation mitgeliefert wird.

Sowohl lara-helper als auch simple-queue enthalten eine PHP-Datei namens “src/helper.php”. Diese erschwert die statische Analyse durch eine Reihe von Tricks: verschleierten Kontrollfluss, kodierte Domainnamen, Befehlsnamen und Dateipfade sowie zufällig erzeugte Bezeichner für Variablen und Funktionen.

“Nach dem Laden verbindet sich der Schadcode mit einem C2-Server unter helper.leuleu[.]net:2096, sendet Daten zur Systemerkundung und wartet auf Befehle – damit erhält der Betreiber vollständigen Fernzugriff auf den Host”, erklärt Sicherheitsforscher Kush Pandya. Der RAT übermittelt Systeminformationen und verarbeitet die vom C2-Server empfangenen Befehle zur Ausführung auf dem kompromittierten System. Die Kommunikation läuft über TCP mittels der PHP-Funktion stream_socket_client().

Für die Ausführung von Shell-Befehlen prüft der RAT laut Pandya die Einstellung disable_functions und wählt die erste verfügbare Methode aus popen, proc_open, exec, shell_exec, system und passthru. “Das macht ihn widerstandsfähig gegen gängige PHP-Härtungskonfigurationen”, so der Forscher.

Der C2-Server reagiert derzeit zwar nicht, doch der RAT versucht in einer dauerhaften Schleife alle 15 Sekunden erneut, eine Verbindung herzustellen – was ihn weiterhin zu einem Sicherheitsrisiko macht. Wer die Pakete installiert hat, sollte laut den Empfehlungen von einer Kompromittierung ausgehen, sie entfernen, sämtliche aus der Anwendungsumgebung zugänglichen Geheimnisse austauschen und den ausgehenden Datenverkehr zum C2-Server prüfen.

Neben den drei genannten Paketen hat der Angreifer drei weitere Bibliotheken veröffentlicht – “nhattuanbl/lara-media”, “nhattuanbl/snooze” und “nhattuanbl/syslog” –, die sauber sind. Damit will er offenbar Glaubwürdigkeit aufbauen und Nutzer zur Installation der bösartigen Pakete verleiten.

“Jede Laravel-Anwendung, die lara-helper oder simple-queue installiert hat, betreibt einen dauerhaften RAT. Der Angreifer hat vollen Fernzugriff auf die Shell, kann beliebige Dateien lesen und schreiben und erhält ein fortlaufendes Systemprofil jedes verbundenen Hosts”, so Socket. Da die Aktivierung beim Start der Anwendung über einen Service Provider oder beim Autoladen von Klassen über simple-queue erfolgt, läuft der RAT im selben Prozess wie die Webanwendung – mit denselben Dateisystemrechten und Umgebungsvariablen, einschließlich Datenbankzugangsdaten, API-Schlüsseln und dem Inhalt der .env-Datei.