Schließen
Schließen
Ihr Netzwerk von morgen
Ihr Netzwerk von morgen
Planen Sie Ihren Weg zu einem schnelleren, sichereren und widerstandsfähigeren Netzwerk, das auf die von Ihnen unterstützten Anwendungen und Benutzer zugeschnitten ist.
          Erleben Sie Netskope
          Get Hands-on With the Netskope Platform
          Here's your chance to experience the Netskope One single-cloud platform first-hand. Sign up for self-paced, hands-on labs, join us for monthly live product demos, take a free test drive of Netskope Private Access, or join us for a live, instructor-led workshops.
            Ein führendes Unternehmen im Bereich SSE. Jetzt ein führender Anbieter von SASE.
            Ein führendes Unternehmen im Bereich SSE. Jetzt ein führender Anbieter von SASE.
            Netskope debütiert als Leader im Gartner ® Magic Quadrant ™ für Single-Vendor SASE
              Generative KI für Dummies sichern
              Generative KI für Dummies sichern
              Learn how your organization can balance the innovative potential of generative AI with robust data security practices.
                Modern data loss prevention (DLP) for Dummies eBook
                Moderne Data Loss Prevention (DLP) für Dummies
                Get tips and tricks for transitioning to a cloud-delivered DLP.
                  Modernes SD-WAN für SASE Dummies-Buch
                  Modern SD-WAN for SASE Dummies
                  Hören Sie auf, mit Ihrer Netzwerkarchitektur Schritt zu halten
                    Verstehen, wo die Risiken liegen
                    Advanced Analytics transforms the way security operations teams apply data-driven insights to implement better policies. With Advanced Analytics, you can identify trends, zero in on areas of concern and use the data to take action.
                        Die 6 überzeugendsten Anwendungsfälle für den vollständigen Ersatz älterer VPNs
                        Die 6 überzeugendsten Anwendungsfälle für den vollständigen Ersatz älterer VPNs
                        Netskope One Private Access is the only solution that allows you to retire your VPN for good.
                          Colgate-Palmolive schützt sein "geistiges Eigentum" mit intelligentem und anpassungsfähigem Datenschutz
                          Colgate-Palmolive schützt sein "geistiges Eigentum" mit intelligentem und anpassungsfähigem Datenschutz
                            Netskope GovCloud
                            Netskope erhält die FedRAMP High Authorization
                            Wählen Sie Netskope GovCloud, um die Transformation Ihrer Agentur zu beschleunigen.
                              Let's Do Great Things Together
                              Die partnerorientierte Markteinführungsstrategie von Netskope ermöglicht es unseren Partnern, ihr Wachstum und ihre Rentabilität zu maximieren und gleichzeitig die Unternehmenssicherheit an neue Anforderungen anzupassen.
                                Netskope solutions
                                Netskope Cloud Exchange
                                Netskope Cloud Exchange (CE) provides customers with powerful integration tools to leverage investments across their security posture.
                                  Technischer Support von Netskope
                                  Technischer Support von Netskope
                                  Überall auf der Welt sorgen unsere qualifizierten Support-Ingenieure mit verschiedensten Erfahrungen in den Bereichen Cloud-Sicherheit, Netzwerke, Virtualisierung, Content Delivery und Software-Entwicklung für zeitnahen und qualitativ hochwertigen technischen Support.
                                    Netskope-Video
                                    Netskope-Schulung
                                    Netskope-Schulungen helfen Ihnen, ein Experte für Cloud-Sicherheit zu werden. Wir sind hier, um Ihnen zu helfen, Ihre digitale Transformation abzusichern und das Beste aus Ihrer Cloud, dem Web und Ihren privaten Anwendungen zu machen.

                                      Von der Zustellung bis zur Ausführung: Eine ausweichende Azorult-Kampagne wurde über Google Sites geschmuggelt

                                      März 15 2024

                                      Zusammenfassung

                                      Netskope Threat Labs hat eine ausweichende Azorult-Kampagne in freier Wildbahn beobachtet, bei der mehrere Techniken zur Umgehung der Verteidigung von der Lieferung bis zur Ausführung eingesetzt werden, um beim Diebstahl sensibler Daten unter dem Radar des Verteidigers zu fliegen.

                                      Azorult ist ein Informationsdieb, der erstmals 2016 entdeckt wurde und sensible Informationen wie Benutzeranmeldeinformationen, Browserinformationen und Krypto-Wallet-Daten stiehlt. Azorult ist auf dem Vormarsch und gehört derzeit zu den Top-Malware-Familien, die Netskope Threat Labs im letzten Jahr im Gesundheitswesen beobachtet hat.

                                      In diesem Blogbeitrag führt Netskope Threat Labs eine detaillierte Analyse einer ausweichenden AzoruIt-Malware-Kampagne durch, die wir in freier Wildbahn beobachtet haben.  Diese Kampagne ist aus folgenden Gründen bemerkenswert:

                                      • Es liefert seine anfängliche Nutzlast durch HTML-Schmuggel, eine Technik zur Umgehung der Erkennung, die bei Angreifern immer beliebter wird. Diese Technik zur Umgehung der Verteidigung wurde auch von einer nationalstaatlichen Gruppe verwendet, um einen Remote-Access-Trojaner zu schmuggeln, und von der Nokoyawa-Ransomware, bei der sie den Infektionsprozess durch HTML-Schmuggel begannen.
                                      • Es verwendet eine unorthodoxe HTML-Schmuggeltechnik, bei der die bösartige Nutzlast in eine separate JSON-Datei eingebettet ist, die auf einer externen Website gehostet wird.
                                      • Es führt den dateilosen Azorult Infostealer heimlich aus, indem es reflektierendes Code-Laden verwendet, die festplattenbasierte Erkennung umgeht und Artefakte minimiert.
                                      • Es verwendet eine AMSI-Bypass-Technik, um der Erkennung durch eine Vielzahl hostbasierter Antischadsoftwareprodukte, einschließlich Windows Defender, zu entgehen.
                                      • Es stiehlt sensible Daten, darunter Informationen zu 137 verschiedenen Krypto-Wallets, Anmeldedaten, Browserdateien und wichtige Dokumente.

                                      Google Sites dient als Lockvogel für HTML-Schmuggel

                                      HTML-Schmuggel ist eine Technik zur Umgehung der Verteidigung, die darauf abzielt, Webkontrollen zu umgehen, die riskante Dateitypen blockieren. Es missbraucht legitime HTML5-Download-Attribute und Javascript-Blobs, um bösartige Nutzlasten auf der Client-Seite zu erstellen und Netzwerksicherheitsfilter zu umgehen. 

                                      Im Rahmen der Bedrohungsjagd von Netskope Threat Labs haben wir eine Kampagne aufgedeckt, bei der ein Angreifer gefälschte Google Docs-Seiten auf Google Sites erstellt hat, von denen er HTML-Schmuggel nutzte, um bösartige Nutzlasten herunterzuladen. Sie locken ihre Opfer auf die gefälschten Google Docs-Seiten, um sie glauben zu machen, dass die heruntergeladene Datei von Google Docs stammt. In den meisten Fällen, die wir in freier Wildbahn sehen, bettet der Angreifer die geschmuggelte bösartige Nutzlast in das Javascript selbst ein. In diesem Beispiel bettete der Angreifer die bösartige Nutzlast in eine separate JSON-Datei als BASE64-codierte Zeichenfolge ein. Wenn das Opfer auf die Website zugreift, sendet es eine GET-Anforderung, um die JSON-Datei von einer separaten Domain herunterzuladen (mahmudiyeresort[.]com[.]tr) und extrahiert die Nutzlast von dort.

                                      HTML-Schmuggelcode, der Nutzlast von einer kompromittierten Domain sammelt

                                      Schmuggel mit einem Captcha

                                      Wenn ein Opfer auf eine Website zugreift, die HTML-Schmuggel verwendet, um bösartige Payloads zu liefern, wird die Payload normalerweise sofort heruntergeladen. Für diese Kampagne initiiert die auf Google Sites gehostete Website des Angreifers ein CAPTCHA, das als zusätzliche Schutzschicht gegen URL-Scanner dient. Dies trägt dazu bei, dass die HTML-Datei in öffentlichen Scannern wie Virustotal unentdeckt bleibt, die nicht über das CAPTCHA hinausgehen können.

                                      HTML-Schmuggelcode, der Nutzlast von einer kompromittierten Domain sammelt

                                      Böswillige Verknüpfung, die mehrere Powershells und Javascripts herunterlädt

                                      Sobald der Benutzer den CAPTCHA-Test bestanden hat, rekonstruiert der HTML-Schmuggel-Javascript-Code die Nutzlast und lädt sie auf den Computer des Opfers herunter. Bei der Payload handelt es sich um eine LNK-Verknüpfungsdatei, die ein PDF-Symbol verwendet, um Benutzer dazu zu verleiten, darauf zu klicken. Ein Klick auf die LNK-Datei startet die folgende Ereigniskette.

                                      1. Die LNK-Datei erzeugt eine Eingabeaufforderung, in der ein base64-codierter Powershell-Befehl in einer Batch-Datei mit dem Namen Fyap4cKJ.bat
                                      2. Der PowerShell-Befehl wird dann mit einer nativen Windows-Anwendung mit dem Namen certutil.exe "Benannt" decodiert und überschrieben Fyap4cKJ.bat
                                      3. Anschließend wird eine geplante Aufgabe mit dem Namen t09pxsrXKG erstellt, die die Batchdatei Fyap4cKJ.batausführt. 
                                      4. Die Batch-Datei Fyap4cKJ.bat führt ein Powershell-Skript aus, das Invoke-WebRequest zum Herunterladen einer PHP-Datei von sqjeans[.]com und speichert es als qtoW0vI2.js im Ordner temp. Es wird dann qtoW0vI2.js mit wscript.exeausgeführt.
                                      5. Der PowerShell-Befehl aus der Batchdatei Fyap4cKJ.bat löscht dann die zuvor erstellte geplante Aufgabe t09pxsrXKG .
                                      LNK-Payload mit PDF-Symbol

                                      Das Javascript qtoW0vI2.js führt dann die folgenden drei Aufgaben aus:

                                      1. Kopiert sich selbst in und %ProgramData%benennt sich um als agent.js
                                      2. Überprüft und löscht sich selbst, ob eine Datei mit dem Namen  7z52OJFPXT4J im temporären Ordner vorhanden ist. 
                                      3. Lädt zwei Powershell-Skripte mit dem Namen agent1.ps1 und agent3.ps1 mit Invoke-WebRequestherunter und führt sie mit Invoke-Expressionaus.
                                      qtoW0vI2.js von der kompromittierten Domain

                                      Azorult Fileless Malware wird durch Reflective Code Loading geladen

                                      Eine weitere Technik zur Umgehung der Verteidigung, die der Angreifer verwendet, besteht darin, den Azorult-Infostealer im Speicher auszuführen, indem er reflektierenden Code lädt. Das reflektierende Laden von Code in einer portablen ausführbaren Datei bedeutet, dass die Malware nicht auf die Festplatte geschrieben und ausgeführt wird, wo sie mehr Fußabdrücke und Artefakte hinterlässt, sondern Code in den eigenen Speicher eines laufenden Powershell-Prozesses lädt. Schauen wir uns an, wie sie das Laden von reflektierendem Code mit den beiden ausgeführten Powershell-Skripten erreichen.

                                      agent1.ps1

                                      Das erste PowerShell-Skript (agent1.ps1) ausgeführt wird verwendet, um die Antischadsoftware-Scanschnittstelle (AMSI) zu umgehen. Dazu AmsiInitFailed wird ein True Wert festgelegt, bei dem die AMSI-Initialisierung fehlschlägt, was bedeutet, dass für den aktuellen Prozess kein Scan ausgeführt wird.

                                      Der Wert von AmsiInitFailed wird durch das Javascript qtoW0vI2.js definiert, während es ausführt agent1.ps1.

                                      AMSI-Umgehung von agent1.ps1

                                      agent3.ps1

                                      Das zweite PowerShell-Skript (agent3.ps1) ist so festgelegt, dass es die folgenden Aufgaben ausführt:

                                      1. Laden Sie einen Azorult-Lader herunter

                                      Das Powershell-Skript (agent3.ps1) beginnt mit dem Herunterladen des Azorult Loaders (service.exe) aus der zuvor kompromittierten Domäne mit Invoke-WebRequest. Die ausführbare Datei wurde wahrscheinlich im November 2023 kompiliert und erstmals im Februar bei VirusTotal eingereicht.

                                      Allgemeine Informationen zu Azorult Loader mit Detect It Easy

                                      Der heruntergeladene Loader wird nicht auf die Festplatte geschrieben, sondern später in einem zugewiesenen Speicher ausgeführt. Der Binärinhalt wird als Byte-Array in der Variablen $imagegespeichert und später mit einer Kopierfunktion von System.Runtime.InteropServices.Marshal in einem Speicherblockpuffer $imagebBuf gespeichert. 

                                      Powershell-Skript, das den Loader in einem Byte-Array speichert und später einem Speicherblock zuweist.

                                      Der Loader enthält einige Anti-Analyse-Funktionen, mit denen er seinen Prozess beendet, wenn er mit seiner Liste der gängigen Sandbox-Benutzernamen und Hostnamen übereinstimmt. Folgende Benutzernamen und Hostnamen werden überwacht: "Paul Jones", "Joe Cage", "PJones", "STRAZNJICA GRUBUTT", "WillCarter-PC", "FORTI-PC".

                                      Loader-Beendigungsprozess basierend auf dem gemeinsamen Sandbox-Benutzernamen und Hostnamen

                                      2. Definieren Sie einen Shellcode

                                      Im Skript wird ein Shellcode für das Byte-Array $sc definiert. Später wird dies im Speicher innerhalb desselben Threads wie die heruntergeladene ausführbare Datei ausgeführt.

                                      Shellcode, der zusammen mit der ursprünglich geladenen Malware geladen wurde

                                      3. Führen Sie eine Routine aus, die sowohl den Shellcode als auch die ausführbare Datei in den Prozessspeicher lädt

                                      Das Skript definiert zwei Funktionen: Get-DelegateType (GDT) und Get-ProcAddr (GPA). Die GDT-Funktion definiert einen Delegattyp zur Laufzeit, während die GPA-Funktion die Speicheradresse einer Funktion von einem Modul zurückgibt. Später im Skript ruft die GPA-Funktion die Speicheradressen von VirtualAlloc, CreateThreadund WaitForSingleObject von kernel32.dllab.

                                      Das Skript initiiert dann die Speicherzuweisung für den shellcode ($sc), indem es VirtualAlloc. Anschließend wird der Inhalt des Shellcodes mit der Methode in den zugewiesenen Speicher übertragen, der durch eine Marshal.Copy Variable $x dargestellt wird.

                                      Was den Azorult-Lader (service.exe) betrifft, Das Skript verwendet die Marshal-Methode AllocHGlobal , um nicht verwalteten Speicher zuzuweisen, der entsprechend der Länge des Bytearrays ($image) der ausführbaren Datei dimensioniert ist, und weist ihn zu $imageBuf. Anschließend wird $imageBuf der binäre Inhalt der ausführbaren Datei, der in $image gespeichert ist, mit der Marshal.Copy Methode

                                      Zuletzt wird CreateThread vom Skript ein neuer Thread initiiert, der die Speicheradressen sowohl des Shellcodes als auch der ausführbaren Datei bereitstellt. Anschließend wird verwendet WaitForSingleObject , um auf den Abschluss des Ausführungsprozesses des Threads zu warten.

                                      Laden von Shellcode und ausführbarer Datei in den Speicher

                                      sd2.ps1

                                      Wenn der Loader ausgeführt wird, sendet er eine HTTP GET-Anforderung, um ein weiteres Powershell-Skript mit dem Namen sd2.ps1. Das Skript stellt zunächst eine Verbindung zu einem C2-Server her, um einen XOR-Schlüssel zu erfassen und in der $config Variablen zu speichern. Der Schlüssel wird dann für eine byteweise XOR-Operation für die Azorult-Binärdatei verwendet, die im Skript definiert ist. 

                                      sd2.ps1

                                      Azorult

                                      Die Azorult-Nutzlast ist eine .NET-kompilierte Binärdatei mit dem Namen pg20.exe , die mithilfe der Assembly.Load Methode im Arbeitsspeicher ausgeführt wird. Es zielt darauf ab, sensible Benutzerinformationen zu sammeln, einschließlich persönlicher Dokumente, Krypto-Wallet-Informationen, Anmeldeinformationen und Browserdaten. Alle gestohlenen Dateien und Daten werden dann über HTTP an den C2-Server übertragen.

                                      Die Malware beginnt mit einer Parameterprüfung. Wenn weniger als 2 Parameter übergeben werden, wird die Ausführung beendet.

                                      Parameterprüfung mit einem Dummy-C2-Server

                                      Anschließend generiert Azorult einen privaten und öffentlichen Schlüssel sowie einen gemeinsamen geheimen Schlüssel. Es verwendet die elliptische Kurvenkryptografie von Curve25519, um einen privaten 32-Byte-Schlüssel zu generieren und daraus einen öffentlichen Schlüssel und einen gemeinsamen geheimen Schlüssel zu generieren. Diese werden verwendet, um die gestohlenen Dateien zu verschlüsseln, um eine Entdeckung zu verhindern, wenn die gestohlenen Dateien auf den C2-Server hochgeladen werden.

                                      Routine zum Generieren von privaten und öffentlichen Schlüsseln

                                      Der Infostealer sammelt die folgenden Daten vom Opfer:

                                      Screenshot des primären Displays

                                      Azorult sammelt zunächst einen Screenshot des Bildschirms des Geräts. Die Methode wird verwendet GetDeviceCaps , um die Auflösung des primären Bildschirms abzurufen. Anschließend wird mit der Methode, bei Graphics.CopyFromScreen der der Inhalt des Bildschirms in ein Bitmapobjekt kopiert wird, ein Screenshot des gesamten Bildschirms erstellt. Abschließend wird das aufgenommene Bild als JPEG-Datei gespeichert.

                                      Code zum Sammeln von Screenshots

                                      Browser-Daten

                                      Azorult stiehlt die Browserdaten des Opfers. Es kopiert den Inhalt der Anmeldedaten, des lokalen Status, der Cookies und der Webdaten von Chrome in den Roaming-Ordnerpfad, um später exfiltriert zu werden. Es verwendet die InternalCopy intern definierte Methode und verwendet die Win32-Funktion CopyFile , um alle Browserdaten zu kopieren.

                                      Routine zum Kopieren der zugehörigen Dateien von Chrome

                                      Die gleiche Routine wird auf die Datenbankdateien von Firefox angewendet. Er kopiert den Inhalt mehrerer datenbankbezogener Dateien und speichert ihn im Roaming-Profilpfad. Es kopiert die folgenden Dateien: formhistory.sqlite, places.sqlite, cookies.sqlite, logins.json, und key4.db.

                                      Informationen zur Krypto-Wallet

                                      Der Infostealer kopiert dann Krypto-Wallet-Daten vom Zielcomputer, die in Chrome, Edge und Firefox gespeichert sind. Die Malware enthält eine Liste von 119 Ziel-Chrome-Wallets und 12 Edge-Wallet-Erweiterungen. Es überprüft, ob ein Benutzer eine Google Chrome- oder Edge-Wallet-Erweiterung installiert hat, indem überprüft wird, ob der Ordnername der Wallet aus der Liste im Verzeichnis "Lokale Erweiterung" vorhanden ist. Wenn das Wallet-Verzeichnis vorhanden ist, werden die Dateien in das Roaming-Profilverzeichnis kopiert.

                                      Routine zum Überprüfen und Kopieren der Wallet-Erweiterung von Chrome
                                      Chrome-Geldbörsen ins Visier nehmen
                                      Ziel-Edge-Geldbörsen

                                      In ähnlicher Weise sucht Azorult auch nach einigen Ziel-Wallet-Erweiterungen in Firefox. Dazu werden alle Firefox-Erweiterungs-IDs auf dem Gerät gesammelt und mit der Liste der Ziel-Wallets abgeglichen. Sobald das Vorhandensein der Wallet-Erweiterung bestätigt wurde, kopiert es den Inhalt der Datei in den Roaming-Profilpfad.

                                      Routine, die nach der Crypto Wallet Firefox-Erweiterung sucht
                                      Ziel-Firefox-Wallets

                                      Sensible Dokumente

                                      Schließlich sucht Azorult auf dem Desktop nach sensiblen Dokumenten und Dateien. Es sucht nach bestimmten Dateierweiterungen und Dateien, die mit Schlüsselwörtern benannt sind, die möglicherweise persönliche vertrauliche Informationen enthalten. Bei der Suche nach bestimmten Dateien werden auch bestimmte Dateitypen übersprungen. 

                                      Dateiendung des Ziels 

                                      txtaxxdocxls
                                      kdbxdocxxlsx

                                      Schlüsselwörter für Dateinamen

                                      SicherungskopieBrieftascheHauptbuchSafePalUTC–20*
                                      Zwei-FAgeheimTrezorPapier-Geldbörse-*.png

                                      Unerwünschte Dateiendung

                                      lnkjscppd
                                      exetshpdb
                                      dllasmphpsvg
                                      objspywav
                                      vcxprojcpycsmali
                                      vcprojcccs

                                      Wenn alle Bedingungen erfüllt sind, liest es den Inhalt der Dateien und schreibt sie in einen Speicherstream, der später zum Exfiltrieren auf den C2-Server verwendet wird.

                                      Routine zum Kopieren des Dateiinhalts

                                      Alle gesammelten Dateien und Daten werden über HTTPS mit der WebRequest Klasse an den Server gesendet. Die kopierten Daten werden mit Hilfe der GZip-Komprimierung komprimiert und anschließend in einem Array gespeichert. Das Array wird dann mit dem zuvor erstellten gemeinsamen geheimen Schlüssel verschlüsselt und dann mit der WebRequest.Create Methode an den C2-Server gesendet. Der zuvor generierte öffentliche Schlüssel wird über requestStreamgesendet.

                                      Routine zum Exfiltrieren gestohlener Dateien mit einem Dummy-C2-Server
                                      Beispiel für eine exfiltrierte Datei

                                      Schlussfolgerungen

                                      Azorult ist ein Infostealer, der verwendet wird, um die Anmeldeinformationen und Karteninformationen von Benutzern zu stehlen. In diesem Blog haben wir eine Kampagne analysiert, bei der ein Angreifer mehrere Umgehungstechniken einsetzte, darunter HTML-Schmuggel, Umgehung von AMSI und reflektierendes Laden von Code, um seine Aktivitäten vor Sicherheitskontrollen zu verbergen. Im Gegensatz zu herkömmlichen Smugglier-Dateien, bei denen sich das Blob bereits im HTML-Code befindet, kopiert diese Kampagne eine codierte Nutzlast von einer separaten kompromittierten Website. Die Verwendung legitimer Domains wie Google Sites kann dazu beitragen, das Opfer dazu zu verleiten, zu glauben, dass der Link legitim ist. Die Azorult-Malware stiehlt dann mehrere sensible Informationen und Zahlungsdaten von ihrem Ziel. Netskope Threat Labs wird diese und andere Malware-Kampagnen, die zur Verbreitung von Infostealern verwendet werden, weiterhin überwachen.

                                      IOCs

                                      Alle IOCs, die sich auf diese Kampagne beziehen, finden Sie in unserem GitHub-Repository.

                                      author image
                                      Jan Michael Alcantara
                                      Jan Michael Alcantara ist ein erfahrener Incident Responder mit Hintergrund in Forensik, Bedrohungssuche und Vorfallanalyse.
                                      Jan Michael Alcantara ist ein erfahrener Incident Responder mit Hintergrund in Forensik, Bedrohungssuche und Vorfallanalyse.

                                      Bleiben Sie informiert!

                                      Abonnieren Sie den Netskope-Blog