CTB-Locker ist wieder da: die Webserver-Edition

Schädlinge des Typs Cryptolocker sind im Laufe der Zeit immer raffinierter geworden, sie umgehen Schutzsysteme und verbreiten Angst und Schrecken. TelsaCrypt, CryptoWall, TorrentLocker, Locky und CTB-Locker sind nur einige Beispiele für erpresserische Verschlüsselungsprogramme, vor denen wir unsere Anwender in den letzten zwei Jahren beschützt haben. Wir haben schon viele Arten und Formen von Cryptolockern gesehen, aber die neue Variante von CTB-Locker sagt schon alles. Die Cyberkriminellen sind offensichtlich dabei, die Verschlüsselungsschädlinge neu zu erfinden.

Früher unterschied sich der CTB-Locker, auch Onion Ransomware genannt, dadurch von anderer Erpressersoftware, dass der Schädling die Anonymität des Tor-Netzwerks für sich nutzte, um sich selbst vor Zerschlagungsversuchen zu schützen, die in erster Linie bei statischen Malware-Steuerungsservern Erfolg versprechen. Die Nutzung von Tor trug auch dazu bei, Detektion und Blockierung zu verhindern. Die Betreiber von CTB-Locker schützten sich zudem dadurch, dass sie als Zahlungsmittel ausschließlich Bitcoins, die dezentralisierte und weitestgehend anonyme Krypto-Währung, akzeptierten.

Eine neue Variante von CTB-Locker greift ausschließlich Webserver an, und laut unseren Daten hat der Schädling bereits Webroot-Dateien auf mehr als 70 Servern in 11 Ländern erfolgreich verschlüsselt.

ctb_locker_01

In diesem Blogpost werde ich Sie mitnehmen in die Höhle des Löwen, nachdem die Opfer so freundlich waren, uns die Verschlüsselungsprogramme zur Verfügung zu stellen, die auf ihren Webservern angewendet wurden.

Schritt 1: Defacement

Diese neue Variante versucht Webserver zu verschlüsseln und verlangt als Lösegeld weniger als einen halben Bitcoin (in etwa 150 US-Dollar). Geht die Zahlung nicht pünktlich ein, so wird das Lösegeld auf etwa 300 Dollar verdoppelt. Nach Zahlungseingang wird der Dechiffrierungsschlüssel generiert und benutzt, um die Webserver-Dateien zu entschlüsseln.

Es hat sich herausgestellt, dass die mit dieser Variante infizierten Webserver aufgrund eines Sicherheitslochs in ihrem Webserver angegriffen wurden. Mit Ausnutzung dieser Lücke wird die Website entstellt. Defacement, zu Deutsch „Entstellung“ oder „Verunstaltung“, ist eine bekannte Methode von Hacker-Gruppen, um ihren Opfern zu zeigen, dass es ihnen ernst ist. Die jüngsten Fälle, deren Zeuge wir wurden, sind nicht zufällig, sondern es geht um politische Zugehörigkeiten und kulturelle Perspektiven.

ctb_locker_de_2

In diesem Fall wird das Defacement, das einen Austausch der Haupt- php/html-Seite enthält, als Überbringer der Botschaft benutzt und beinhaltet alle Mittel, die für den Angriff notwendig sind, um den richtigen Eindruck beim Opfer zu hinterlassen. Wir werden tief in die nächsten Schritte eintauchen.

Es ist wichtig zu wissen, dass der Original-Code nicht gelöscht ist. Er ist unter anderem Namen in verschlüsselter Form sicher in der Webroot gespeichert.

Die Botschaft

Da Malware-Varianten dieser Art auf der Tatsache basieren, dass die Opfer sich mehr Sorgen über ihre Inhalte machen als darüber nachzudenken, ein Lösegeld zu zahlen, hinterlassen die Autoren normalerweise eine sehr detaillierte Nachricht, die nicht zu übersehen ist.

Das folgende Zitat ist ein Teil der auf der Hauptseite hinterlassenen Botschaft:

CTB-Locker ist wieder da: die Webserver-Edition

Der Dechiffrierungsschlüssel ist auf einem entfernten Server gespeichert, aber die Angreifer waren so freundlich, dem Opfer zu gestatten, zwei Dateien kostenlos zu entschlüsseln, um so die eigene Authentizität unter Beweis zu stellen.

Die andere Funktion, die auf der angegriffenen Website bereit steht, macht die Kommunikation via Chat mit den Angreifern möglich: Hier ist eine persönliche Signatur/ein persönlicher Code erforderlich, der nur für die Opfer verfügbar ist.

Derzeit gibt es in freier Wildbahn kein Entschlüsselungstool, daher gibt es auch keine Möglichkeit die von dem neuen CTB-Locker verschlüsselten Dateien zu decodieren. Die einzige Methode, diese Bedrohung innerhalb von Sekunden zu neutralisieren, besteht im Öffnen von vorher erstellten Datei-Backups, die an einem separaten Ort gespeichert sind.

Obgleich das nach einem großen Problem klingt, meinen wir, dass doch kein allzu großer Grund zur Sorge besteht. Große Websites haben meist zahlreiche Versionen ihres Contents, die auf viele Webserver verteilt sind. In vielen anderen Fällen werden sie von professionellen PEN-Test-Unternehmen überwacht und geprüft, sie befinden sich also unter ständiger Beobachtung von Sicherheitsexperten.

Schritt 2: Verschlüsselungsprozess

Wir wissen noch immer nicht, wie CTB-Locker auf den Webservern bereit gestellt wird, aber viele angegriffene Server haben eine Sache gemeinsam: Sie benutzen die Plattform WordPress als Content Management Tool. WordPress enthält viele Sicherheitslücken in seinen nicht aktualisierten Versionen und wir hatten es im letzten Jahr schon mit kritischen Schwachstellen zu tun. Obendrein hat WordPress auch noch einen anderen Schwachpunkt, und zwar Plugins. Diese kleinen Softwaremodule, die die Funktionalität erweitern, machen WordPress zu dem, was es ist – ein Marktführer in der Welt der CMS. Doch durch Plugins von Dritten wird der Server auch angreifbarer, da Plugin-Autoren zu keinerlei Sicherheitsmaßnahmen verpflichtet sind.

Befindet sich ein Malware-Autor einmal innerhalb des WordPress-Systems, so ist er in der Lage, die Haupt-Website auszutauschen und die Verschlüsselungsroutine auszuführen. Die Hauptdatei wird umbenannt und in verschlüsselter Form abgespeichert.

Zwei verschiedene AES-256-Schlüssel werden auf dem Server des Opfers angewandt:

  1. create_aes_cipher($keytest) – verschlüsselt die beiden Dateien, die kostenlos dechiffriert werden können.
  2. create_aes_cipher($keypass) – verschlüsselt den Rest der auf dem Webroot-Server gehosteten Dateien.

CTB-Locker ist wieder da: die Webserver-Edition

Die beiden Dateien werden von den Malware-Autoren ausgewählt und ihre Namen werden in einer Textdatei gespeichert.

Der ‚create_aes_cipher()‘ akzeptiert ein Parameter als den Schlüssel und schickt ihn an die Standardfunktion Crypt_AES():

Beim Verschlüsseln der Site verwendet das Script zunächst den Testschlüssel, um die zwei Dateien zu verschlüsseln, die für die kostenlose Dechiffrierung verwendet werden. Daraufhin erstellt es eine Liste der Dateien, die bestimmte Dateierweiterungen haben, und kodiert diese mit Hilfe der AES-256-Verschlüsselung. Die Erweiterungen, die verschlüsselt werden sollen, werden aus der Datei ./extensions.txt ausgelesen. Aktuell sind es die folgenden:

CTB-Locker ist wieder da: die Webserver-Edition

Dateien, die die folgenden Strings enthalten, werden von dem Verschlüsselungsprozess ausgenommen:

  1. „/crypt/“
  2. „secret_“

Außerdem werden offensichtlich auch Dateien ausgenommen, die Daten enthalten, welche dem Nutzer später beim Entschlüsselungsprozess helfen könnten.

  1. ./index.php – wie oben beschrieben, ist diese Datei die Eintrittstür des Opfers für die Analyse des Angriffs und sie enthält den PHP-Code der Verschlüsselungs-/Entschlüsselungsroutine.
  2. ./allenc.txt – enthält eine Liste aller verschlüsselten Dateien.
  3. ./test.txt – enthält die Dateien, die kostenlos entschlüsselt werden können.
  4. ./victims.txt – enthält eine Liste aller Dateien, die verschlüsselt werden oder bereits verschlüsselt wurden.
  5. ./extensions.txt – enthält die Liste der Datei-Erweiterungen (siehe oben).
  6. ./secret_ – wie bereits erwähnt, muss das Opfer sich selbst identifizieren, bevor die kostenlose Entschlüsselung oder der Chat überhaupt möglich werden.

Auf der Hauptseite von CTB-Locker benutzen die Angreifer JQUERY, um Proxyserver anzufragen und Zahlungen zu bestätigen. Der folgende Code wurde im Quellcode der Seite gefunden und die oben aufgeführten Server sind die Proxys, die als eine weitere Schutzschicht eingesetzt werden, anstelle des Hauptservers der Angreifer:

CTB-Locker ist wieder da: die Webserver-Edition

Proxyserver, die Teil des Entschlüsselungsprozesses sind:

http://erdeni.ru/access.php
http://studiogreystar.com/access.php
http://a1hose.com/access.php

Die Ransomware-Server sind nicht dauerhaft eingerichtet und werden in gewissen Abständen durch neue ersetzt. Wir konnten beobachten, dass der Bedrohungsakteur die Server-Logs und Analysen inspiziert, während andere Checks manchmal darauf hinaus liefen, dass der Server abgeschaltet und dann wieder angeschaltet wurde.

Schritt 3: Proxy zum C&C

Die Angreifer nutzen Server, die schon mal angegriffen wurden, um eine weiter Schutzschicht zu durchbrechen. Auf dem Quellcode eines Opferservers offenbart ein JavaScript-Code, wie der Entschlüsselungsprozess zufällig durch drei verschiedene Server geschickt wird, doch dabei handelt es sich nicht um C&C-Server.

CTB-Locker ist wieder da: die Webserver-Edition

Der oben stehende Screenshot wurde auf der access.php-Seite aufgenommen, die sich vermutlich in jedem der Bot-Server befindet, die als Proxy für den Entschlüsselungsprozess benutzt werden.

In dem weißen Block befindet sich der tatsächliche C&C-Server, der in den Code jeder der PHP-Seiten geschrieben ist (access.php).

Wenn eine POST-Anfrage mit den richtigen Parametern versendet wird, wird ein Socket-Error produziert und der sendet eine Verbindungsanfrage an den C&C-Server der Angreifer. Später wird festgestellt, ob der Dechiffrierungsprozess erfolgreich war.

Kostenlose Entschlüsselung

Die Ransomware erlaubt dem Opfer, kostenlos nicht mehr als zwei Dateien zu entschlüsseln. Das Opfer darf sich allerdings nicht aussuchen, welche, da die Daten im Vorwege ausgewählt und in einer eigens dafür vorgesehenen Datei in dem Schadprogramm hinterlegt wurden, wie oben bereits beschrieben. Die zwei Dateien werden im Laufe des Verschlüsselungsprozesses willkürlich ausgewählt.

Das folgende Bild ist eine Darstellung des kostenlosen Entschlüsselungsmoduls:

CTB-Locker ist wieder da: die Webserver-Edition

Um die zwei Dateien kostenfrei entschlüsseln zu können, muss das Opfer den Namen der Datei secret_ file richtig eingeben. Nach einem Klick auf den Button DECRYPT IT FREE erstellt das clientseitige Script eine POST-Anfrage und sendet sie an einen der C&C-Server. Es ist uns gelungen, die PHP-Berechnung nachzustellen und die exit()-Funktion der kostenfreien Dechiffrierungsroutine auszuführen:

CTB-Locker ist wieder da: die Webserver-Edition

Bei dem Folgenden handelt es sich um den PHP-Code am Backend. Die Funktion secret_ok() bestätigt die Identität des Opfers – auf der Grundlage seines Domainnamens und anderer Indikatoren:

Der Chatroom des Bedrohungsakteurs

Die Erpressersoftware enthält auch eine Funktionalität zum Kommunizieren mit den Malware-Autoren. Wie bereits erwähnt, muss das Opfer den secret_ key verwenden, um den Chat zu starten. Ohne den Namen der Datei secret_file reagiert die Chat-Anwendung nicht.

ctb_locker_de_10

Wir sind zu dem Schluss gekommen, dass diese Erpressersoftware die Malware der neuen Generation für Angreifer ist, die es auf finanzielle Gewinne abgesehen haben. Schadprogramme dieser Art sind äußerst effektiv, es gibt bisher keinen wirklich wirksamen Schutz vor dieser Bedrohung und die Schädlinge können nicht nur Desktop-Betriebssysteme angreifen, sondern nun auch Webserver.

Wir fordern alle Nutzer dringend auf, Backups von allen wichtigen Daten zu erstellen. Seien Sie zudem immer misstrauisch gegenüber Mails, die nicht direkt an Sie gerichtet sind und nehmen Sie sich vor verlockender Online-Werbung in Acht. Außerdem sollte man Software von Drittanbietern nicht automatisch aufgrund ihres Hash-Wertes vertrauen. Dieser Wert könnte von den Hackern geändert worden sein, nachdem ein Server kompromittiert wurde. Wenden Sie auch andere Überprüfungsmechanismen an, um sicherzustellen, dass die Software legitim ist.

Ähnliche Beiträge

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.