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.
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.
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.
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.
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
Ä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. |