Ousaban ist ein ausschließlich in Brasilien aktiver, lateinamerikanischer Bankentrojaner. ESET verfolgt diese Malware-Familie seit 2018. Wie die meisten anderen Banking-Trojaner der Region verwendet Ousaban Overlay-Fenster, um Anmeldeinformationen und mehr von Banken zu stehlen. Jedoch haben die Entwickler von Ousaban die Verwendung von Overlay-Fenstern erweitert, um ebenfalls Anmeldeinformationen von beliebten regionalen E-Mail-Diensten zu stehlen. In diesem Teil unserer Serie untersuchen wir die Hauptmerkmale des Trojaners und die vielen Verbindungen zu anderen lateinamerikanischen Trojanerfamilien.

Charakteristische Eigenschaften

Ousaban ist in Delphi geschrieben, ebenso wie die überwiegende Mehrheit der anderen lateinamerikanischen Bankentrojaner, die ESET verfolgt. Und wie viele von ihnen zeigt Ousaban Anzeichen einer aktiven und kontinuierlichen Entwicklung.

Der von ESET für diese Trojaner-Familie gewählte Name besteht aus zwei Wörtern. "Ousadia", was auf Portugiesisch "Kühnheit" bedeutet, und "Banking-Trojaner". Der Grund für einen solchen Namen ist, dass Ousaban sehr lange mit den in Abbildung 1 gezeigten Bildern (einige von ihnen sind obszön) verteilt wurde. In den jüngsten Kampagnen, in denen Ousaban verbreitet wurde, ist dies nicht mehr der Fall.

Abbildung 1. Verschiedene Bilder, die mit dem Ousaban-Bankentrojaner verteilt sind

Von Kaspersky wird Ousaban auch als Javali bezeichnet. Einen aktuellen Artikel über Ousaban finden Sie hier. ESET konnte Ousaban auch den in diesem Blogpost von 2018 beschriebenen Kampagnen zuschreiben. Obwohl einige Quellen behaupten, Ousaban sei in Europa aktiv, hat ESET nie eine Kampagne beobachtet, die diesen Bankentrojaner außerhalb Brasiliens verbreitet.

Ousaban schützt seine ausführbaren Dateien entweder mit Themida- oder Enigma-Binärverschleierern. Darüber hinaus werden die meisten EXE-Dateien mithilfe der binären Auffüllung auf ungefähr 400 MB vergrößert, wahrscheinlich um der Erkennung und automatisierten Verarbeitung zu entgehen.

Die neuesten Ousaban-Varianten enthalten eine Zeichenfolgentabelle, in der die Zeichenfolgen in den .rsrc-Abschnitten gespeichert sind. Eine der Ressourcen enthält eine zlib-komprimierte Liste von Zeichenfolgen, die durch Zeilenumbrüche begrenzt sind.

Die Backdoor-Funktionen sind denen eines typischen lateinamerikanischen Banking-Trojaners sehr ähnlich: Sie simulieren Maus- und Tastaturaktionen und protokollieren Tastenanschläge. Die neuesten Varianten kommunizieren mit C&C-Servern über RealThinClient - ein Protokoll, das auch von Grandoreiro verwendet wird.

Der typische lateinamerikanische Banking-Trojaner greift Bankkunden mit Overlay-Fenstern an, die speziell für seine Ziele entwickelt wurden, und Ousaban ist keine Ausnahme. Interessanterweise gehören zu den Zielen auch mehrere E-Mail-Dienste, für die ebenfalls Overlay-Fenster bereitstehen, wie in Abbildung 2 dargestellt.

Abbildung 2. Entwurf des Overlay-Fensters für den UOL-E-Mail-Dienst

Um Persistenz zu erreichen, erstellt Ousaban entweder eine LNK-Datei oder einen einfachen VBS-Loader im Startordner oder ändert den Windows-Registrierungsausführungsschlüssel.

Distribution und Ausführung

Ousaban wird hauptsächlich über Phishing-E-Mails verbreitet (siehe Abbildung 3). Die Hintermänner von Ousaban wechseln zwischen mehrere Vertriebsketten. Diese Ketten teilen einige gemeinsame Merkmale, hauptsächlich:

  • Es wird DLL-Side-Loading verwendet, um eine binäre Payload auszuführen
  • CAB-Archive werden manchmal anstelle von ZIP verwendet
  • Eine Konfigurationsdatei, die in einem Archiv einer Stufe verteilt wird, wird für die nächste Stufe benötigt
  • Ousaban verfügt besonderer weise über einen Injektor

Abbildung 3. Aktuelle Spam-E-Mail mit der Ousaban verteilt wird (eine grobe englische Übersetzung siehe rechte Seite)

MSI mit JavaScript

Diese in Abbildung 4 dargestellte Vertriebskette ist recht einfach. Das Opfer wird dazu gebracht ein an die Phishing-E-Mail angehängten MSI-Installer auszuführen. Bei der Ausführung startet dieser einen eingebetteten JavaScript-Downloader, der ein ZIP-Archiv herunterlädt und dessen Inhalt extrahiert. Anschließend wird die legitime Anwendung ausgeführt, die den Ousaban-Banking-Trojaner per Side-Loading lädt.

Abbildung 4. Einfache Ousaban-Vertriebskette

Mehrstufiger MSI-Installer

Vor kurzem hat ESET eine neue Vertriebskette beobachtet, über die Ousaban massiv verbreitet wird. Diese ist viel komplizierter als der vorher beschriebene Distributionsweg. Der gesamte Prozess ist in Abbildung 5 dargestellt.

Die ersten beiden Stufen sind nahezu identisch. In beiden Fällen ist der Kern der Stufe in einem Archiv (ZIP oder CAB) enthalten und enthält:

  • eine legitime Anwendung
  • einen verschlüsselten Injektor
  • einen verschlüsselten Downloader
  • eine verschlüsselte Konfigurationsdatei
  • weitere legitime Dateien

Wenn die legitime Anwendung ausgeführt wird, wird der Injektor per Side-Loading geladen. Der Injektor lokalisiert, entschlüsselt und führt den Downloader aus. Der Downloader entschlüsselt die Konfigurationsdatei, um die URL zu erhalten, über die er seine Remote-Konfiguration abrufen kann. Die Remote-Konfiguration enthält eine URL, die zum Archiv der nächsten Stufe führt. Der Downloader lädt das Archiv der nächsten Stufe herunter, extrahiert seinen Inhalt und führt die legitime Anwendung aus.

Die letzte Phase ist etwas anders, da der eigentliche Ousaban-Banking-Trojaner anstelle eines Downloaders entschlüsselt und ausgeführt wird. Die dritte Konfigurationsdatei führt zu einer Remote-Konfiguration mit der IP-Adresse und dem Port des C&C-Servers. Das Archiv mit der letzten Stufe enthält eine weitere Malware-bezogene Datei - ein Support-Modul, das verschiedene Einstellungen des Computers des Opfers ändert. Schließlich enthalten die Archive für alle drei Stufen zusätzliche Dateien - eine einzelne legitime ausführbare Datei im Archiv der ersten Stufe, 14 legitime Dateien im Archiv der zweiten Stufe und 13 legitime Dateien im Archiv der dritten Stufe sowie ein eingebettetes Archiv, das weitere 102 legitime Dateien enthält.

Abbildung 5. Ousabans komplexe Vertriebskette

Support-Modul

Ousaban lädt dieses Modul, um es den Hintermännern die Verbindung zum Computer des Opfers zu erleichtern. Es…

  • ändert die RDP-Einstellungen, um RDPWrap zu nutzen, ein Dienstprogramm, mit dem mehrere RDP-Verbindungen zu Home-Editionen des Windows-Betriebssystems zugelassen werden
  • ändert die Firewall-Einstellungen, um alle RDP-Verbindungen zuzulassen
  • erstellt ein neues Konto mit Administratorrechten

Das Modul enthält die RDPWrap-Binärdateien, die in seinen .rsrc-Abschnitten. Anschließend werden die RDP-Einstellungen direkt in der Windows-Registrierung unter folgender Adresse geändert:

  • HKLM\SYSTEM\CurrentControlSet\Services\TermService\
  • HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\

Das Modul verwendet dann netsh.exe, um die Windows-Firewall so zu verändern, dass der gesamte TCP- und UDP-Verkehr an Port 3389, den Standard-Port für RDP, geleitet wird. Schließlich wird ein neues Konto Administrat0r mit Administratorrechten erstellt. Wir nehmen an, dass der Bedrohungsakteur eine zweite Möglichkeit haben möchte, um auf die Maschine des Opfers zuzugreifen. Er ist dann nicht durch die Fähigkeiten des Ousaban-Banking-Trojaners eingeschränkt und kann böswillige Aktivitäten ausführen.

Kryptographie

Ousaban verwendet insgesamt drei kryptografische Schemata. Die Zeichenfolgen werden mit einem Algorithmus verschlüsselt, der von der überwiegenden Mehrheit der von uns analysierten lateinamerikanischen Banking-Trojaner verwendet wird (wir haben ihn hier ausführlich beschrieben). Die gesamte Kommunikation zwischen Ousaban und seinem C&C-Server wird mit der Standard-AES-Verschlüsselung mit einem fest codierten Schlüssel verschlüsselt.

Der endgültige Algorithmus wird in dem zuvor erwähnten Injektor dieser Familie verwendet. In Abbildung 6 stellen wir eine Python-Implementierung bereit.

def decrypt(data, key):
	data_dec = str()
	key_len = len(key)
	for i, c in enumerate(data):
		if i % 2 != 0:
			data_dec += chr(key[i % key_len ^ c ^ ((key_len - (i & key_len)) & 0xFF)])
		else
			data_dec += chr(key[i % key_len] ^ c ^ (i & 0xFF))

	return data_dec

Abbildung 6. Algorithmus, der vom Ousaban-Injektor zum Entschlüsseln seiner Nutzdaten verwendet wird

Remote-Konfiguration

Ousaban ist auf die Remote-Konfiguration angewiesen, um die URLs der nächsten Stufe sowie die zu verwendende C&C-Adresse und den zu verwendenden Port zu erhalten. Ousaban hat seine Remote-Konfiguration ähnlich wie Casbaneiro auf YouTube gespeichert, seit kurzem jedoch auch in Google Docs.

Die Remote-Konfiguration ist im JSON-Format, wobei die Werte mit demselben Algorithmus verschlüsselt werden, der für Zeichenfolgen verwendet wird, jedoch mit einem anderen Schlüssel. Die Felder haben folgende Bedeutung:

  • Host = C&C-Domäne
  • link = URL der nächsten Stufe
  • porta = C&C-Port oder 0 (der Standard-HTTP-Port 80 wird dann verwendet)
  • vers = Ousaban-Version

Beispiele für die Remote-Konfiguration finden Sie in Abbildung 7 und Abbildung 8.

Abbildung 7. Ousaban-Remote-Konfiguration auf YouTube

Abbildung 8. Remote-Konfiguration von Ousaban in Google Text & Tabellen

Ähnlichkeiten mit anderen LATAM-Banking-Trojanern

Wir haben bereits einige Ähnlichkeiten zwischen Ousaban und anderen lateinamerikanischen Banking-Trojanern erwähnt, die zuvor in dieser Serie analysiert wurden (wie der gleiche String-Entschlüsselungsalgorithmus). Während unserer Analyse haben wir zusätzliche Verbindungen zu den anderen Familien entdeckt, hauptsächlich diese:

  • einige Ousaban-Downloader enthalten denselben Code zur Verschleierung von Zeichenfolgen wie Amavaldo
  • Ousaban wurde in der Vergangenheit von denselben böswilligen Werbeanzeigen wie Mispadu verbreitet
  • Die verwendeten JavaScript-Dateien ähneln Vadokrist, Mekotio, Casbaneiro und Guildma
  • Die PowerShell-Dateien, die gelegentlich für die Verteilung verwendet werden (abgesehen von den in diesem Blogpost beschriebenen Methoden), ähneln Amavaldo, Casbaneiro und Mekotio

In unserem Whitepaper, das wir auf der Virus Bulletin Konferenz 2020 vorgestellt haben, haben wir die enge Zusammenarbeit zwischen diesen Malware-Familien eingehend analysiert.

Fazit

In diesem Teil unserer Serie haben wir uns Ousaban angesehen, einen lateinamerikanischen Banking-Trojaner, der nur auf Brasilien abzielt. Diese Malware-Familie ist seit mindestens 2018 aktiv und weist typische Merkmale ihrer Art auf. Sie ist in Delphi geschrieben und enthält Backdoor-Funktionen und führt Angriffe mithilfe von Overlay-Fenstern durch.

Wir haben die typischsten Funktionen, Verteilungs- und Ausführungsmethoden sowie die Struktur der Remote-Konfiguration beschrieben. Wir haben auch mehrere Hinweise entdeckt, die darauf hindeuten, dass Ousaban mit einigen anderen lateinamerikanischen Bankentrojanern in Verbindung steht.

Bei Fragen kontaktieren Sie uns unter threatintel@eset.com. Kompromissindikatoren (IoCs) finden Sie auch in unserem GitHub-Repository.

Indicators of Compromise (IoCs)

Hashes

SHA-1 Description ESET detection name
C52BC5B0BDFC7D4C60DF60E88835E3145F7FB34F Ousaban banking trojan Win32/Spy.Ousaban.G
D04ACFAF74861DDC3B12E75658863DA65C03013F Ousaban JS downloader JS/TrojanDownloader.Banload.AAP
9A6A4BF3B6E974E367982E5395702AFF8684D500 Ousaban JS downloader JS/TrojanDownloader.Banload.AAP
3E8A0B6400F2D02B6B8CD917C279EA1388494182 Ousaban MSI downloader Win32/Spy.Ousaban.W
6946BFB8A519FED8EC8C30D9A56619F4E2525BEA Ousaban injector Win32/Spy.Ousaban.W
E5DD2355E85B90D2D648B96C90676604A5C3AE48 Ousaban support module Win32/Spy.Ousaban.AB

Abused legitimate applications

Example SHA-1 EXE name DLL name
BA5493B08354AEE85151B7BBD15150A1C3F03D1D Avira.SystrayStartTrigger.exe Avira.OE.NativeCore.dll
7F6C820B00FC8C628E2420C388BBB9096A547DAA AudioGrabber.exe StarBurn.dll
C5D5CF1B591C40344B20370C5EE5275356D312EC PlGen.exe bass_fx.dll
53045B8047CED049BBC7EBCB3D3299D2C465E8B9 BlazeDVD.exe SkinScrollBar.dll
A6118D354D512DC29965E368F6C78AA3A42A27AD ImageGrabber.exe StarBurn.dll
F9C71277CF05738275261D60A9E938CBA7232E0D nvsmartmaxapp.exe nvsmartmax.dll

Recent configuration file URLs

https://docs.google[.]com/document/d/1o9MlOhxIJq9tMOuUHJiw2eprQ-BGCA_ERnbF54dZ25w/edit
https://docs.google[.]com/document/d/1nQqifeYFsCcI7m-L1Y1oErkp50c-y670nfk7NTKOztg/edit
https://docs.google[.]com/document/d/13A6EBLMOOdvSL3u6IfyrPWbYREXNRVdDTiKzC6ZQx7U/edit
https://docs.google[.]com/document/d/1UiuqrzI_rrtsJQHqeSkp0sexhwU_VSje8AwS-U6KBPk/edit
https://docs.google[.]com/document/d/1VKxF3yKbwQZive-ZPCA4dAU1zOnZutJxY2XZA0YHa3M/edit
https://docs.google[.]com/document/d/19bXTaiFdY5iUqUWXl92Js7i9RoZSLJqcECgpp_4Kda4/edit
https://docs.google[.]com/document/d/1DDDmJzBVcNWhuj8JMRUVb7JlrVZ5kYBugR_INSS96No/edit
https://docs.google[.]com/document/d/1UbfOcHm-T9GCPiitqDRh5TNwZRNJ8_miEpLW-2ypU-I/edit
https://docs.google[.]com/document/d/1d1903AvDBYgOo0Pt9xBBnpCHwSerOpIi4l1b6M4mbT4/edit
https://docs.google[.]com/document/d/1JLuJKoxcd0vRqut8UeBjFJXzMDQ9OiY2ItoVIRq6Gw8/edit
https://docs.google[.]com/document/d/1EOwVDlYPV3gE7PSnLZvuTgUQXvOSN9alyN5aMw7bGeI/edit
https://docs.google[.]com/document/d/18sc6rZjk529iYF2iBTsmuNXvqDqTBSH45DhSZpuLv_U/edit

MITRE ATT&CK techniques

Note: This table was built using version 8 of the MITRE ATT&CK framework.

Tactic ID Name Description
Resource Development T1583.001 Acquire Infrastructure: Domains Ousaban operators register domains to be used as C&C servers.
T1587.001 Develop Capabilities: Malware Ousaban is operated by the same group that develops it.
Initial Access T1566.001 Phishing: Spearphishing Attachment Ousaban’s initial downloader is most commonly distributed as a spam attachment.
Execution T1059.001 Command and Scripting Interpreter: PowerShell Ousaban uses PowerShell in some distribution chains.
T1059.003 Command and Scripting Interpreter: Windows Command Shell Ousaban uses the cmd.exe to execute the legitimate applications that side-load the main Ousaban payload.
T1059.007 Command and Scripting Interpreter: JavaScript/JScript Ousaban uses JavaScript in some distribution chains.
T1204.002 User Execution: Malicious File Ousaban relies on the victim to execute the distributed MSI file.
Persistence T1098 Account Manipulation Ousaban registers a new local administrator account on the victim’s machine.
T1547.001 Boot or Logon Autostart Execution: Registry Run Keys / Startup Folder Ousaban achieves persistence using the Run key or startup folder.
Defense Evasion T1140 Deobfuscate/Decode Files or Information Ousaban payloads and strings are encrypted.
T1574.002 Hijack Execution Flow: DLL Side-Loading Ousaban is often executed by this technique.
T1562.001 Impair Defenses: Disable or Modify Tools Ousaban modifies the RDP settings of the victim’s machine.
T1562.004 Impair Defenses: Disable or Modify System Firewall Ousaban modifies Windows firewall settings.
T1027.001 Obfuscated Files or Information: Binary Padding Ousaban frequently uses binary padding.
T1027.002 Obfuscated Files or Information: Software Packing Ousaban binaries are protected by Themida or Enigma packers.
T1218.007 Signed Binary Proxy Execution: Msiexec Ousaban uses the MSI format for execution.
Credential Access T1056.001 Input Capture: Keylogging Ousaban can capture keystrokes.
Discovery T1010 Application Window Discovery Ousaban looks for bank- and email-related windows based on their window names and titles.
T1518.001 Software Discovery: Security Software Discovery Ousaban collects information about the security software installed on the victim’s machine.
T1082 System Information Discovery Ousaban collects basic information about the victim’s machine, such as computer name and Windows version.
T1113 Screen Capture Ousaban can take screenshots.
Command and Control T1132.002 Data Encoding: Non-Standard Encoding Ousaban uses RealThinClient that provides non-standard encryption.
T1219 Remote Access Software Ousaban installs RDPWrap on the victim’s machine.
Exfiltration T1041 Exfiltration Over C2 Channel Ousaban exfiltrates data via C&C server.