Der eigentliche Backdoor steckt in der Datei “ssh/terminal/terminal.go”. Jedes Mal, wenn eine betroffene Anwendung die Funktion ReadPassword() aufruft — die eigentlich dazu dient, Eingaben wie Passwörter aus einem Terminal zu lesen —, werden die interaktiv eingegebenen Geheimnisse abgefangen.
Das nachgeladene Shell-Skript fungiert als Linux-Stager. Es hängt den SSH-Schlüssel des Angreifers an die Datei “/home/ubuntu/.ssh/authorized_keys” an, setzt die Standardregeln von iptables auf ACCEPT, um Firewall-Beschränkungen aufzuweichen, und ruft weitere Schadprogramme von einem externen Server ab. Diese werden dabei mit der Endung .mp5 getarnt.
Eines der beiden nachgeladenen Programme prüft die Internetverbindung und versucht, eine IP-Adresse (“154.84.63[.]184”) über den TCP-Port 443 zu erreichen. Laut Socket dient es wahrscheinlich der Erkundung oder als Loader. Das zweite Programm wurde als Rekoobe eingestuft, ein bekannter Linux-Trojaner, der mindestens seit 2015 beobachtet wird. Der Backdoor kann Befehle von einem durch den Angreifer kontrollierten Server entgegennehmen, um weitere Schadprogramme herunterzuladen, Dateien zu stehlen und eine Reverse Shell auszuführen. Noch im August 2023 wurde Rekoobe von chinesischen staatlich gesteuerten Gruppen wie APT31 eingesetzt.
Nach Einschätzung von Kirill Boychenko dürfte sich diese Kampagne wiederholen, weil das Muster wenig Aufwand erfordert und große Wirkung erzielt: ein täuschend ähnliches Modul, das mit ReadPassword() an einer hochwertigen Schnittstelle ansetzt, GitHub Raw als wechselnden Verweis nutzt und dann in eine Staging-Kette per “curl | sh” sowie die Auslieferung von Linux-Schadcode übergeht.
Verteidiger sollten laut Boychenko mit ähnlichen Angriffen auf die Lieferkette rechnen, die auf weitere Bibliotheken am “Rand der Anmeldedaten” zielen — etwa SSH-Hilfsprogramme, Authentifizierungsabfragen von Kommandozeilenwerkzeugen oder Datenbankconnectoren. Ebenso sei mit mehr Umwegen über Hosting-Plattformen zu rechnen, um die Infrastruktur zu wechseln, ohne den Code neu veröffentlichen zu müssen.
