Operation Windigo: Umfangreiche Attacke auf zahlreiche Server

Das IT-Security-Unternehmen ESET hat vor einigen Tagen eine detaillierte Analyse der kürzlich bekannt gewordenen Windigo-Attacke veröffentlicht. Bei Operation Windigo handelt es sich um ein komplexes System von Angriffs-Tools, womit es den unbekannten Akteuren gelang, mehr als 25.000 Server und rund eine halbe Million PCs zu infizieren. Zweck der Attacke scheint das Versenden von Spam-Mails sowie das Infizieren und Umleiten von Web-Anwendern zu sein, um Geld damit zu verdienen. Im Vergleich zu anderen Bot-Netzwerken scheinen die Zahlen der infizierten Rechner und Server bisher klein. Allerdings verbreitet sich Windigo-Malware sehr effizient über infizierte Webserver.

Die Windigo Attacke besteht aus folgenden Software-Komponenten:

  • Linux/Ebury: Open-SSH-Backdoor zur Kontrolle über infizierte Server und zum Sammeln von Account-Daten.
  • Linux/Cdorked: HTTP-Backdoor zum Redirect von Web-Traffic. Verteilen von Windows Malware an Besucher der Website.
  • Linux/Onimiki: Läuft auf DNS-Servern und löst bestimmte Domain-Namen zu gewünschten IP-Adressen auf. Die Konfiguration des DNS-Servers muss hierzu nicht verändert werden.
  • Perl/Calfbot: Perl-Skript zum Senden von Spam
  • Win32/Boaxxe.G und Win32/Glubteta.M: Fraud-Malware für Windows (Drive-By-Downloads)

Alle diese Komponenten arbeiten zusammen, um möglichst viele Systeme zu infizieren und dann die angestrebten Aktionen (etwa das Versenden von Spam) massenhaft auszuführen sowie sich weiter auszubreiten. Dabei hat die Attacke zwei Opfer im Auge: Windows-PC-Anwender und Linux-Server.

Für Linux-Server besonders heikel ist die Linux/Ebury-Backdoor, die den Angreifern volle Kontrolle über den Server gibt. Laut ESET sind derzeit 26.024 Systeme von Linux/Ebury befallen (die meisten davon in den USA und Deutschland). Angreifer haben vollen Root-Zugriff auf betroffenen Systeme. Keinerlei neue Schwachstellen wurden ausgenutzt, lediglich schon bekannte Angriffsmuster. Die Attacke läuft bereits seit 2011. Sie funktioniert auf unterschiedlichen Betriebssystemen: Mac OS X, OpenBSD, FreeBSD, Windows (Cygwin), und Linux. Das Spam-Modul läuft auf allen Systemen, die Backdoors nur unter Linux und FreeBSD.

Die Hauptaufgabe von Linux/Ebury besteht darin, eine Backdoor auf den Servern bereitzustellen, und Account-Daten verschiedener Art abzufangen. Die eigentliche Backdoor-Funktionalität wird über eine gepatchte OpenSSH realisiert, wodurch die Angreifer eine Root-Shell zum Server öffnen können. Eine andere Möglichkeit des Angriffs besteht darin, die Backdoor in einer gepatchten “libkeyutils.so”-Bibliothek unterzubringen. Zum Verstecken aller Modifikation verwenden die Angreifer einige Tricks, zum Beispiel:

  • es werden so weit wie möglich Pipes verwendet, um keine unnötigen Dateien zu erzeugen
  • keine Spuren in Log-Dateien hinterlassen
  • Datei-Signaturen werden korrekt neu generiert
  • Ändern der OpenSSH-Konfiguration im Speicher statt auf der Festplatte

Ist die Backdoor erst einmal auf dem System installiert, so wird die Interaktion mit ihr über ein 11 Zeichen langes Backdoor-Access-Passwort initiiert, welches über den SSH-Handshake über die SSH-Versionsnummer ausgetauscht wird und in die gepatchte Version fest einprogrammiert ist. Dabei kommt eine einfache, auf der IP-Adresse basierende Verschlüsselung der 11 Zeichen zum Einsatz. Eine solche SSH-Version könnte wie folgt aussehen:

SSH-2.0-fb54c28ba102cd73c1fe43

Die Backdoor-Aktivität kann also prinzipiell auf der Netzwerkebene erkannt werden, denn solche SSH-Versionsnummern kommen anderenfalls nicht vor. Nach dieser Initialisierung bekommt der Angreifer eine Root-Shell auf das System. Die Backdoor ist sogar so bequem ausgestattet, dass insgesamt drei Shortcut-Befehle einprogrammiert wurden, die beispielsweise automatisch alle abgefangen Passwörter des Servers liefern.

Derzeit wird hauptsächliche die Attacke über die modifizierte “libkeyutils.so” gefahren, da diese unauffälliger ist. Diese Bibliothek überschreibt dann einige von OpenSSH verwendete Funktionen, um die Backdoor zu öffen. Folgende Funktionen sind betroffen: “hosts_access”, “syslog_chk”, “audit_log_user_message”, “audit_log_acct_message”, “connect”, “write”, “syslog”, “popen”, “crypt” und “pam_start”.

Neben der reinen Backdoor versucht Linux/Ebury auch, Account-Daten abzufangen, beispielsweise Accounts auf dem Server selbst, SSH-Key-Passphrases und SSH-Keys. Wurden auf diese Weise genug Account-Information gesammelt, kann die Backdoor auf diesen neuen Systemen dann ebenfalls installiert werden. Damit verbreitet sich die Malware immer weiter.

Nach oben