Forscher von Intezer und BlackBerry haben eine Malware entdeckt, die den Code-Namen Simbiote trägt und zur Installation von Backdoors und Rootkits auf kompromittierten Linux-Servern verwendet wird. Die Malware wurde in den Systemen von Finanzinstitutionen in mehreren Ländern Lateinamerikas gefunden. Um Simbiote im System zu installieren, muss der Angreifer Root-Zugriff haben, der beispielsweise durch das Ausnutzen ungeschlossener Sicherheitslücken oder durch den Diebstahl von Anmeldedaten erlangt werden kann. Simbiote ermöglicht es, nach einem Angriff dauerhaft im System präsent zu bleiben, um weitere Angriffe durchzuführen, die Aktivitäten anderer Malware zu verbergen und den Zugriff auf vertrauliche Daten zu organisieren.
Eine Besonderheit von Simbiote ist die Verbreitung in Form einer Shared Library, die beim Start aller Prozesse über den Mechanismus LD_PRELOAD geladen wird und bestimmte Aufrufe der Standardbibliothek ersetzt. Die Handler der ersetzten Aufrufe verbergen die mit dem Backdoor verbundenen Aktivitäten, indem sie beispielsweise bestimmte Elemente in der Prozessliste ausschließen, den Zugang zu bestimmten Dateien im /proc blockieren, Dateien in Verzeichnissen verstecken und die schadhafte Shared Library im Output von ldd (dies erfolgt durch das Abfangen der Funktion execve und die Analyse der Aufrufe mit der Umgebungsvariable LD_TRACE_LOADED_OBJECTS) nicht anzeigen. Auch die mit der schädlichen Aktivität verbundenen Netzwerk-Sockets werden nicht angezeigt.
Um den Datenverkehr vor Überwachung zu schützen, werden die Funktionen der libpcap-Bibliothek umgeleitet, das Lesen von /proc/net/tcp gefiltert und ein eBPF-Programm in den Kernel geladen, das die Funktion von Verkehrsanalyse-Tools behindert und unerwünschte Anfragen an die eigenen Netzwerk-Handler blockiert. Das eBPF-Programm wird als einer der ersten Handler gestartet und wird auf der untersten Ebene des Netzwerk-Stacks ausgeführt, wodurch die Netzwerkaktivität des Backdoors vor später gestarteten Analysewerkzeugen verborgen bleibt.
Simbiote ermöglicht es außerdem, einige Dateiaktivitätsanalysatoren zu umgehen, da der Diebstahl sensibler Daten nicht auf der Ebene des Dateiöffnens, sondern durch das Abfangen von Leseoperationen aus diesen Dateien in legitimen Anwendungen erfolgen kann. Beispielsweise ermöglicht das Ersetzen von Bibliotheksfunktionen das Abfangen der Benutzereingabe von Passwörtern oder von aus einer Datei geladenen Daten mit Zugangsschlüsseln. Für den Remote-Zugriff wird Simbiote verwendet, um einige PAM-Aufrufe (Pluggable Authentication Module) abzufangen, was die Verbindung zum System über SSH mit bestimmten Angreifer-Anmeldeinformationen ermöglicht. Es gibt auch eine versteckte Möglichkeit, die Privilegien bis zum Benutzer root durch Setzen der Umgebungsvariable HTTP_SETTHIS zu erhöhen.

Quelle: opennet.ru
