Die Cyberkriminelle RTM stiehlt seit 2015 Geld von Bankkunden. Die meisten Opfer sind russische Unternehmen. Von Cyberkriminellen verwendete schädliche Software wird in der Informationssicherheitsgemeinschaft häufig auch als RTM bezeichnet.
Über dieses Programm wurden zahlreiche technische Berichte verfasst, in denen der allgemeine Mechanismus der Malware ausführlich beschrieben wird . In diesem Artikel konzentrieren wir uns auf Methoden zum Abrufen der Adressen der verwaltenden (C & C) RTM-Server. In jeder Iteration des Programms nähern sich Angreifer dieser Aufgabe erfinderisch: Sie verteilen die Adresse über Blogs, verwenden das System alternativer DNS-Server und das Tor-Netzwerk. Neulich stellten wir fest, dass RTM begann, IP in Transaktionen auf einer Bitcoin-Brieftasche zu verbergen.
Was ist RTM?
RTM ist im Kern ein Bankentrojaner. Das Hauptziel des Programms besteht darin, Angreifern die Manipulation von Zahlungsaufträgen des Opferunternehmens zu ermöglichen, um seine Gelder stillschweigend auf das Konto von Cyberkriminellen zu überweisen.
In der Regel wird RTM über Mailinglisten an den Computer des Opfers gesendet, seltener über gehackte Websites (z. B. Nachrichtenpublikationen) oder gefälschte Ressourcen für Buchhalter. Kriminelle hängen eine gepackte ausführbare Datei an Briefe an. Als Mittel zum Verpacken verwenden Angreifer sowohl ihre eigenen Entwicklungs- als auch selbstextrahierenden Archive.

Beispiele für ausführbare EXE-Dateien, die von der RTM-Gruppe verteilt werden
Die Beispieldateien in der Abbildung sind in der Reihenfolge ihrer Verteilung angeordnet. Die meiste Zeit wurden ausführbare RTM-Dateien mit einem benutzerdefinierten Packer gepackt und als PDF-Dokument getarnt. Anfang 2019 erschienen die ersten Beispiele, die ein selbstextrahierendes RAR-Archiv sind und als Datei im DOCX-Format getarnt sind. RTM wird derzeit als selbstextrahierendes CAB-Archiv vertrieben.

Binäre Darstellung der Datei "Payment 11.06.exe"
Nach dem Start kopiert die ausführbare Datei die gepackte DLL auf die Festplatte und startet sie mit dem Dienstprogramm rundll32.exe. Der interne Name dieser Bibliothek lautet in der Regel core.dll. Die nachfolgende Operation erfolgt im Adressraum des Prozesses rundll32.exe.
Es ist core.dll, die die primäre Interaktion mit dem RTM-Steuerungsserver bereitstellt, über die das Programm Befehle und zusätzliche Module von den Angreifern empfängt.
Die Module werden in verschlüsselter Form geliefert und können auf verschiedene Arten gestartet werden. Mit diesen Komponenten können Angreifer einen kompromittierten Computer fernsteuern, Zahlungsdokumente im 1C-System ersetzen usw.
Möglichkeiten, einen Verwaltungsserver zu finden
In den ersten Versionen von RTM wurde ein RSS-Feed verwendet, um die Adressen der Steuerungsserver zu aktualisieren. Angreifer haben in LiveJournal ein Blog erstellt, das C & C-Adressen in verschlüsselter Form enthält. Um neue Adressen von Steuerungsservern zu erhalten, wurde eine Anfrage an die Adresse hxxps: //.livejournal [.] Com / data / rss / gesendet und die Antwort im folgenden Format verarbeitet (z. B. https://f72bba81c921.livejournal.com/data/rss/ ). ::

RSS-Feed-Inhalt. Das Beschreibungsfeld enthält verschlüsselte Adressen von Steuerungsservern

Entschlüsselte Zeilen mit der Anfangsadresse des verwaltenden Servers und der Adresse des RSS-Feeds
.bit
Im März 2016 begann RTM, Domänen in der Bit-Zone als Adressen von Steuerungsservern zu verwenden. Sie werden von einem alternativen Namecoin-DNS-Registrar unterstützt, der auf der Blockchain-Technologie basiert. Das System ist dezentralisiert, sodass es schwierig ist, .bit-Domänen zu blockieren.
Die IP-Adressen der Verwaltungsserver auf .bit RTM wurden auf zwei Arten ermittelt:
- über die Namecoin Block Browser API;
- durch Domainnamenauflösung mit speziellen DNS-Servern.

Die Funktion zum Abrufen von IP-Adressen von Verwaltungsservern
Beim Abrufen von IP-Adressen von Steuerungsservern über die Namecoin-Blockbrowser-API wird der Inhalt unter der Adresse hxxps: //namecoin.cyphrs [.] Com / api / name_show / d / stat-counter-7 (am Beispiel des Domain-Stat-Counters) verarbeitet -7 [.] Bit):

Die Funktion zum Abrufen von IP-Adressen von Steuerungsservern über die Namecoin-Blockbrowser-API
Die IP-Adressen des Verwaltungsservers werden vom Antworttext abgerufen. Zusätzlich zu Anfragen an hxxps: //namecoin.cyphrs [.] Com / api / name_show / d / verwendeten Angreifer auch Anfragen an hxxps: // namecha [.] In / name / d / verarbeiteten sie das Feld "Aktueller Wert":

Webseiteninhalt unter URL hxxps: // namecha [.] In / name / d / stat-counter-7
Wenn es nicht möglich war, auf diese Weise eine IP-Adresse zu erhalten, lösen die Angreifer den Domänennamen des Steuerungsservers mit der Funktion DnsQuery_A mithilfe spezieller DNS-Server auf (z. B. von hier aus ).
Die Verwendung der Funktion DnsQuery_A im Bibliothekscode core.dll sieht folgendermaßen aus:

Die Funktion zum Abrufen von IP-Adressen von Verwaltungsservern durch Auflösen von Domänennamen mithilfe spezieller DNS-Server
Die Funktion DnsQuery_A hat den folgenden Prototyp:

Der Prototyp der in der Header-Datei WinDNS.h deklarierten Funktion DnsQuery_A
Das vierte Argument für die Funktion DnsQuery_A ist die Adresse der Struktur _IP4_ARRAY auf dem Stapel. Es enthält ein Array von IP-Adressen spezieller DNS-Server:

_IP4_ARRAY-Struktur auf dem Stapel
Wenn die Funktion DnsQuery_A erfolgreich ausgeführt wurde, kann die IP-Adresse des verwaltenden Servers durch Lesen des folgenden Werts abgerufen werden: pDnsRecord -> Data.A.IpAddress.
Aus dem dekompilierten Code einer der Instanzen ist ersichtlich, dass ein spezieller DNS-Server 188.165 [.] 200.156 zum Auflösen des C & C-Domänennamens verwendet wird. Im Fehlerfall wird eine Liste mit drei DNS-Servern verwendet: 91.217 [.] 137.37, 188.165 [.] 200.156, 217.12 [.] 210.54.
Tor
Am 15. Februar 2019 entdeckten wir erstmals RTM-Beispiele, deren Verwaltungsserver sich im Tor-Netzwerk befindet (hxxp: // 5aaw3unbkm5jqx7d [.] Onion / index [.] Php).

Tor-Verwaltungsserveradresse unter entschlüsselten Zeichenfolgen

Der Abschnitt des disassemblierten Codes, in dem die URL des Steuerungsservers analysiert wird
Solche Proben wurden bis zum 9. April 2019 gesendet, wonach RTM erneut auf die Verwendung der .bit-Domänenzone umstellte.
Bitcoin
Am 10. Juni 2019 haben wir ein RTM-Beispiel entdeckt, das die IP-Adressen von C & C-Servern aus Transaktionen mit einer bestimmten Krypto-Brieftasche empfängt. Jede IP-Adresse ist in der Anzahl der aufgelisteten Bitcoins in zwei Transaktionen verborgen.
Um IP-Adressen zu erhalten, stellt C & C VPO eine Anfrage an hxxps: // chain [.] Also / api / v2 / get_tx_received / BTC /. Die Antwort enthält eine Reihe von Transaktionen mit dem Crypto Wallet-Konto. Ein Beispiel zeigt der Screenshot:

Betrachten Sie den Codeabschnitt, in dem die IP-Adressen des Verwaltungsservers abgerufen werden:

Die FindValue-Funktion sucht nach dem Bruchteil des Überweisungsbetrags. Die Suche wird ab dem Ende des Puffers ausgeführt, und bei jedem nachfolgenden Funktionsaufruf werden Daten ausgehend vom aktuellen Index verarbeitet. Das heißt, bei aufeinanderfolgenden Aufrufen der FindValue-Funktion werden die Werte 8483, 40030, 14728 usw. erhalten. Das Programm generiert zwei IP-Adressen: Jede Adresse wird in zwei aufeinander folgenden Übersetzungen ausgeblendet.

Zerlegter Code zum Abrufen einer IP-Adresse aus Übertragungen an eine Krypto-Brieftasche
Dieser Code führt Folgendes aus:
ip_address = str(value_1 & 0xff) + "." + str(value_1 >> 0x8) + "." + str(value_0 & 0xff) + "." + str(value_0 >> 0x8)
Das heißt, durch Auflisten von 0,00008483 BTC und dann 0,00040030 BTC versteckten die Angreifer die IP-Adresse 94.156 [.] 35.33 für ihr Programm. In ähnlicher Weise erhält RTM aus den beiden vorherigen Transaktionen die zweite IP-Adresse des Verwaltungsservers.
Daher wird bis heute RTM-Malware gesendet.
Fazit
Möglicherweise stellen Sie fest, dass RTM bei der Organisation der Übertragung der C & C-Serveradresse gerne Ansätze verwendet, mit denen Sie die IP-Adresse dynamisch ändern können, ohne den Quellcode der Malware zu ändern.
Dies erleichtert einerseits den Angreifern das Leben und kann Analysten in die Irre führen. Auf der anderen Seite können Spezialisten die Adressen von Kontrollservern vorhersagen, bevor böswillige Mailings ausgeführt werden.