SOC Prime Bias: Kritisch

19 Nov. 2025 17:21

APT41-Gruppe Taktiken vs Ransomware-Emulationen in AttackIQ Ransom Tales

Author Photo
Ruslan Mikhalov Chief of Threat Research at SOC Prime linkedin icon Follow
APT41-Gruppe Taktiken vs Ransomware-Emulationen in AttackIQ Ransom Tales
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

ZUSAMMENFASSUNG

Der Artikel beschreibt das fünfte Volumen der Ransom Tales Serie von AttackIQ, die die Taktiken, Techniken und Verfahren von drei berüchtigten Ransomware-Familien – REvil, DarkSide und BlackMatter – in einem kontrollierten Laborsetting nachstellt. Jede Emulation umfasst die Phasen Ausführung, Persistenz, Erkundung, Verteidigungsevasion und Auswirkungen, wodurch Verteidiger Detektion und Reaktionsabläufe üben und validieren können. Die Ransom Tales-Szenarien spiegeln Lektionen aus der APT41 Cyber-Spionage-Kampagne wider, während sie Lieferkettenkompromisse und den Aufstieg des Ransomware-As-a-Service-Ökosystems für moderne Blue-Teams und Analysten dokumentieren.

APT41 Angriffsanalyse

Das Adversary Research Team von AttackIQ analysierte öffentliche Bedrohungsberichte, Malware-Proben und Telemetrie, um realistische Angriffsgraphen für jede Ransomware-Familie zu erstellen, ähnlich wie Analysten die Aktivitäten der APT41-Gruppe rekonstruierten. Sie ordneten beobachtete Schritte den MITRE ATT&CK-Techniken zu und entwarfen Ausführungsabläufe, die Nutzlasten abrufen, Persistenz etablieren, Hosts enumerieren und Daten verschlüsseln. Außerdem modellierten sie, wie die APT41-Gruppe eine Cyber-Espionage-Operation gegen ein US-amerikanisches Unternehmen startete, um gemeinsame Handelspraktiken zu veranschaulichen.

Minderung

Minderungsempfehlungen betonen strikten minimalen Zugriff nach Bedarf, die Deaktivierung unnötiger Dienste und das schnelle Patchen der Infrastruktur, einschließlich Atlassian Confluence, Apache Struts und GoAhead RCE Schwachstellen sowie Log4j-Schwachstellen wie CVE-2021-44228, CVE-2022-26134, CVE-2017-9805 und CVE-2017-17562. Teams sollten den Remote-Desktop-Zugriff einschränken, Änderungen im Registrierungseditor und Aufgaben überwachen und Sicherungen validieren.

Reaktion

Bei Erkennung von Aktivitäten sollten Responder betroffene Systeme isolieren, flüchtige Speicher erfassen, Registrierungs-Hives sammeln und Log-Quellen zur Überprüfung sichern. Sie müssen Schattenkopien, geplante Aufgaben und Registrierungsschlüssel auf Beweise für von der APT41-Gruppe verwendete Techniken untersuchen und dann Daten aus Backups wiederherstellen. Teams sollten nach lateralen Bewegungen suchen, Stakeholder informieren und Vorfälle mit Bedrohungsinformationen anreichern.

mermaid graph TB %% Class Definitions classDef action fill:#99ccff classDef builtin fill:#cccccc %% Nodes – Attack Stages node_initial_access[„<b>Anfänglicher Zugriff</b> – <b>T1190 Exploitiere öffentlich zugängliche Anwendungen</b><br />Techniken: CVE-2021-4428 (Log4j), CVE-2022-26134 (Confluence), CVE-2017-9805 (Struts), CVE-2017-17562 (GoAhead)“] class node_initial_access action node_execution[„<b>Ausführung</b> – <b>T1127.001 Vertrauenswürdige Entwickler-Utilities Proxy Execution</b><br />Werkzeug: msbuild.exe führt bösartige XML-Nutzlast aus“] class node_execution action node_persistence[„<b>Persistenz & Privilegieneskalation</b> – <b>T1053 Geplante Aufgabe/Job</b><br />Erstellte SYSTEM geplant Aufgabe, um msbuild wiederholt zu starten“] class node_persistence action node_defev1[„<b>Verteidigungsevasion</b> – <b>T1574.002 DLL Side-Loading</b><br />Missbrauchte signiertes VipreAV-Executable (vetysafe.exe), um bösartiges sbamres.dll zu laden“] class node_defev1 action node_credential[„<b>Anmeldeinformationszugriff</b> – <b>T1003.006 OS Credential Dumping DCSync</b><br />Harvestete Domain-Admin-Passworthashes über DCSync“] class node_credential action node_discovery[„<b>Erkundung</b> – <b>T1046 Network Service Discovery</b> & <b>T1082 System Information Discovery</b><br />Scannte interne Dienste und sammelte Host-Informationen“] class node_discovery action node_c2[„<b>Befehls- und Kontrollzentrum</b> – <b>T1102 Webdienst</b><br />Bidirektionaler Web-Traffic verwendet, um Policy-Dokumente zu exfiltrieren“] class node_c2 action node_defev2[„<b>Verteidigungsevasion</b> – <b>T1027 Verschleierte Dateien oder Informationen</b><br />Imjpuexc-Dienstprogramm verbirgt Code und führt dynamische API-Auflösung durch“] class node_defev2 action node_exfil[„<b>Exfiltration</b> – <b>T1048 Exfiltration über alternatives Protokoll</b><br />Datenübertragung über denselben Webkanal mit alternativen Protokoll“] class node_exfil action %% Nodes – Tools tool_msbuild[„<b>Werkzeug</b> – <b>Name</b>: msbuild.exe<br /><b>Beschreibung</b>: Microsoft Build Engine verwendet zum Kompilieren und Ausführen von XML“] class tool_msbuild builtin tool_vetysafe[„<b>Werkzeug</b> – <b>Name</b>: vetysafe.exe (VipreAV)<br /><b>Beschreibung</b>: Signiertes AV-Executable verwendet für DLL Side-Loading“] class tool_vetysafe builtin tool_scheduledtask[„<b>Werkzeug</b> – <b>Name</b>: schtasks.exe<br /><b>Beschreibung</b>: Windows-Dienstprogramm zum Erstellen geplanter Aufgaben“] class tool_scheduledtask builtin tool_imjpuexc[„<b>Werkzeug</b> – <b>Name</b>: Imjpuexc<br /><b>Beschreibung</b>: Dienstprogramm, das Nutzlasten verschleiert und APIs zur Laufzeit auflöst“] class tool_imjpuexc builtin %% Connections – Attack Flow node_initial_access u002du002d>|ausnutzen| node_execution node_execution u002du002d>|verwendet| tool_msbuild node_execution u002du002d>|erstellt| node_persistence node_persistence u002du002d>|verwendet| tool_scheduledtask node_persistence u002du002d>|führt zu| node_defev1 node_defev1 u002du002d>|verwendet| tool_vetysafe node_defev1 u002du002d>|ermöglicht| node_credential node_credential u002du002d>|liefert Daten für| node_discovery node_discovery u002du002d>|unterstützt| node_c2 node_c2 u002du002d>|kommuniziert über| tool_imjpuexc node_defev2 u002du002d>|unterstützt| node_c2 node_c2 u002du002d>|exfiltriert| node_exfil

Angriffsfluss

Simulationen

Simulation Ausführung

Voraussetzung: Die Telemetrie- und Baseline-Preflight-Überprüfung muss bestanden sein.

Begründung: Dieser Abschnitt beschreibt die genaue Ausführung der gegnerischen Technik (TTP), die zum Auslösen der Erkennungsregel entwickelt wurde. Die Befehle und die Beschreibung MÜSSEN die identifizierten TTPs direkt widerspiegeln und darauf abzielen, die genau erwartete Telemetrie der Erkennungslösung zu erzeugen.

  • Angriffserzählung & Befehle:
    Der Gegner, der APT41 emuliert, kompiliert zuerst ein bösartiges C#-Backdoor mithilfe von msbuild.exe, um die Anwendungs-Whitelist zu umgehen. Die kompilierte Nutzlast wird dann als geplante Aufgabe mit schtasks.exe bereitgestellt, um Persistenz zu erreichen. Beide Binärdateien werden aus nicht standardmäßigen Pfaden ausgeführt, um ein realistisches Angreiferverhalten zu emulieren und gleichzeitig die Bedingung zum Image-Namen der Regel zu erfüllen.

  • Regressionstest-Skript:

  •  

    # APT41-Stil Persistenztest – PowerShell
    # -------------------------------------------------
    # 1. Bösartiges C#-Payload vorbereiten
    $source = @"
    using System;
    using System.Diagnostics;
    public class Backdoor {
        public static void Main() {
            Process.Start(new ProcessStartInfo {
                FileName = "cmd.exe",
                Arguments = "/c echo Compromised > C:Temppwned.txt",
                CreateNoWindow = true,
                UseShellExecute = false
            });
        }
    }
    "@
    $srcPath = "$env:TEMPbackdoor.cs"
    $projPath = "$env:TEMPbackdoor.csproj"
    $dllPath = "$env:TEMPbackdoor.dll"
    $srcPath | Out-File -Encoding ASCII -Force
    $projContent = @"
    <Project Sdk=`"Microsoft.NET.Sdk`">
      <PropertyGroup>
        <TargetFramework>net48</TargetFramework>
        <OutputType>Library</OutputType>
      </PropertyGroup>
    </Project>
    "@
    $projPath | Out-File -Encoding ASCII -Force
    # 2. Bösartige DLL mit msbuild kompilieren (nicht-standardisierter Pfad)
    $msbuildPath = "$env:ProgramFilesMicrosoft Visual Studio2022CommunityMSBuildCurrentBinMSBuild.exe"
    & $msbuildPath $projPath /p:OutDir=$env:TEMP /t:Build /p:Configuration=Release
    # 3. Geplante Aufgabe erstellen, um die DLL über Powershell auszuführen
    $taskName = "SystemUpdater"
    $taskCmd = "powershell -ExecutionPolicy Bypass -File `"$dllPath`""
    $schPath = "$env:SystemRootSystem32schtasks.exe"
    & $schPath /Create /SC ONLOGON /TN $taskName /TR $taskCmd /RL HIGHEST /F
    # 4. Aufgabe sofort auslösen
    & $schPath /Run /TN $taskName
  • Bereinigungsbefehle:

    # Geplante Aufgabe entfernen
    $schPath = "$env:SystemRootSystem32schtasks.exe"
    & $schPath /Delete /TN "SystemUpdater" /F
    
    # Payload-Dateien löschen
    Remove-Item -Path "$env:TEMPbackdoor.cs","$env:TEMPbackdoor.csproj","$env:TEMPbackdoor.dll" -Force