Wie echte Software-Downloads ferngesteuerte Hintertüren verbergen können
Detection stack
- AIDR
- Alert
- ETL
- Query
Zusammenfassung
Angreifer betreiben eine nachahmende RustDesk-Downloadseite (rustdesk.work), die einen trojanisierten Installer bereitstellt: ein legitimes RustDesk-Setup, das mit einem bösartigen Loader namens Winos4.0gebündelt ist. Bei der Ausführung pflanzt der Dropper logger.exe and Libserver.exe, lädt dann das Backdoor im Speicher , um Artefakte auf der Festplatte zu reduzieren. Das Implantat stellt die Verbindung zu Kommando-und-Kontrolle zu 207.56.13.76 über TCP/5666her und ermöglicht einen dauerhaften Fernzugriff. Diese Aktivität wird durch Social Engineering und Markenimitationangetrieben, nicht durch eine RustDesk-Software-Schwachstelle.
Untersuchung
Analysten erhielten die bösartige Binärdatei rustdesk-1.4.4-x86_64.exe und beobachteten, wie es einen legitimen RustDesk-Installer plus einen gefährlichen logger.exe auf die Festplatte schrieb. Der logger.exe Komponente generiert Libserver.exe, der dann WinosStager DLLs und eine große In-Memory-Nutzlast inszeniert, ohne diese Module auf der Festplatte zu speichern. Netzwerktelemetrie bestätigte ausgehende Kommunikation zu 207.56.13.76:5666, bewertet als der Campaign-C2-Kanal. Ermittler extrahierten wichtige IOCs, einschließlich der gefälschten Domain (rustdesk.work), abgelegte Dateinamen und zugehörige Datei-Hashes.
Minderung
Setzen Sie verifizierte Praktiken zur Softwarebeschaffung durch und laden Sie RustDesk nur von der offiziellen Quelle herunter (rustdesk.com). Anwenden von Anwendungs-Allowlisting (oder gleichwertiger Kontrollen), um die Ausführung nicht vertrauenswürdiger Binärdateien zu verhindern, insbesondere von „Installer“-Dateien aus benutzerbeschreibbaren Verzeichnissen. Überwachen und Beschränken des ausgehenden Datenverkehrs zu TCP/5666, und fügen Sie Regeln zur Erkennung und Sperrung für Verbindungen zu rustdesk.workhinzu. Blockieren 207.56.13.76 und die bösartige Domain über DNS-, Proxy- und Firewallsteuerelemente.
Reaktion
Erstellen Sie Erkennungen für die Ausführung von logger.exe and Libserver.exeund alarmieren Sie bei allen Netzwerkverbindungen zu 207.56.13.76:5666. Durchsuchen Sie proaktiv Endpunkte nach dem trojanisierten Installer (und allen verfügbaren SHA-256 Indikatoren) und validieren Sie, ob RustDesk von nicht genehmigten Quellen installiert wurde. Wenn ein Kompromiss bestätigt wird, isolieren Sie die betroffenen Hosts, beenden Sie den bösartigen Prozessbaum, entfernen Sie zugehörige Artefakte und ändern Sie möglicherweise offengelegte Anmeldeinformationen (insbesondere alle während der Installation oder nachfolgenden Fernsteuerungen verwendeten Konten).
Angriffsablauf
Erkennungen
RustDesk-Protokolldatei wurde erstellt (über file_event)
Ansehen
Mögliche Kommando- und Kontrollaktivität durch Fernzugriff-Software-Domänenkommunikationsversuch (über DNS)
Ansehen
Alternative Fernzugriffs-/Verwaltungssoftware (über process_creation)
Ansehen
IOCs (SourceIP) zu erkennen: Wie echte Softwaredownloads versteckte Hintertüren transportieren können
Ansehen
IOCs (HashSha256) zu erkennen: Wie echte Softwaredownloads versteckte Hintertüren transportieren können
Ansehen
IOCs (DestinationIP) zu erkennen: Wie echte Softwaredownloads versteckte Hintertüren transportieren können
Ansehen
Erkennung von Winos4.0-Netzwerkaktivität über bösartigen Kommando-und-Kontroll-Server [Windows-Netzwerkverbindung]
Ansehen
Trojanisierter RustDesk-Installer mit Winos4.0-Backdoor [Windows-Prozesserstellung]
Ansehen
Simulationsausführung
Voraussetzung: Der Telemetrie- und Grundlagentest muss bestanden sein.
Begründung: Dieser Abschnitt beschreibt die genaue Umsetzung der gegnerischen Technik (TTP), die darauf abzielt, die Erkennungsregel auszulösen. Die Befehle und das Narrativ MÜSSEN die identifizierten TTPs direkt widerspiegeln und das genaue Telemetrieergebnis erzeugen, das von der Erkennungslogik erwartet wird.
-
Angriffserzählung und Befehle:
- Bereitstellung und Ausführung: Ein Angreifer liefert einen trojanisierten RustDesk-Installer (
rustdesk-1.4.4-x86_64.exe) über eine Phishing-E-Mail. Die Datei wird unter%TEMP%gespeichert und mit erhöhten Rechten ausgeführt. - Nutzlast Abwurf: Bei der Ausführung extrahiert der Installer zwei bösartige Binärdateien—
logger.exeandLibserver.exe—in das gleiche Verzeichnis und startet sie sofort als Kindprozesse. - Persistenz (T1546.016):
logger.exeschreibt einen Run-Key-Eintrag (HKCUSoftwareMicrosoftWindowsCurrentVersionRun) und verweist auf sich selbst, was für Persistenz nach einem Neustart sorgt. - Code Injection (T1574.005 / T1055.005):
Libserver.exeinjiziert eine reflektierende DLL inexplorer.exe, um eine hochprivilegierte Ausführung zu erhalten und öffnet eine Rückenschale zum C2 des Angreifers. - Evasion (Maskerade – T1036.011): Alle Binärdateien behalten die „RustDesk“-Namenskonvention, um sich mit legitimer Software zu vermischen.
- Bereitstellung und Ausführung: Ein Angreifer liefert einen trojanisierten RustDesk-Installer (
-
Regressionstest-Skript: Das folgende Skript automatisiert die Schritte 1‑3, wobei die drei erforderlichen Ereignisse zur Prozesserstellung erzeugt werden. Es verwendet PowerShell, um vorab bereitgestellte bösartige Binärdateien zu kopieren (simuliert mit harmlosen Platzhaltern zur Sicherheit) und sie mit der richtigen übergeordneten-Kind-Beziehung zu starten.
# ------------------------------------------------- # Simulationsskript – Trojanisierter RustDesk-Installer # ------------------------------------------------- # Voraussetzung: Zwei harmlose Platzhalter-Executable-Dateien, platziert in C:Malware (benannt logger.exe & Libserver.exe) # In einem echten Red-Team-Test wären diese die eigentlichen bösartigen Nutzlasten. # ------------------------------------------------- $installerPath = "$env:TEMPrustdesk-1.4.4-x86_64.exe" $payloadDir = "$env:TEMPrustdesk_payload" $loggerPath = "$payloadDirlogger.exe" $libserverPath = "$payloadDirLibserver.exe" # 1. Dummy-Installer bereitstellen (einfach eine Kopie einer harmlosen exe) Write-Host "[*] Fake-RustDesk-Installer bereitstellen..." New-Item -ItemType Directory -Path $payloadDir -Force | Out-Null Copy-Item -Path "C:WindowsSystem32notepad.exe" -Destination $installerPath -Force # 2. Nutzlastabwurf simulieren – Platzhalterbinärdateien kopieren Write-Host "[*] Nutzlasten abwerfen..." Copy-Item -Path "C:Malwarelogger.exe" -Destination $loggerPath -Force Copy-Item -Path "C:MalwareLibserver.exe" -Destination $libserverPath -Force # 3. Installer ausführen (erstellt übergeordneten Prozess) Write-Host "[*] Installer ausführen..." $installer = Start-Process -FilePath $installerPath -PassThru # 4. logger.exe als Kind des Installers starten Write-Host "[*] logger.exe als Kind des Installers starten..." Start-Process -FilePath $loggerPath -ArgumentList "--parent $($installer.Id)" -NoNewWindow # 5. Libserver.exe als Kind des Installers starten Write-Host "[*] Libserver.exe als Kind des Installers starten..." Start-Process -FilePath $libserverPath -ArgumentList "--parent $($installer.Id)" -NoNewWindow Write-Host "[+] Simulation vollständig. Überprüfen Sie Alarme im SIEM." -
Aufräumbefehle: Entfernen Sie die temporären Dateien und beenden Sie verbleibende Prozesse.
# ------------------------------------------------- # Bereinigungsskript – Entfernen von Simulationsartefakten # ------------------------------------------------- $installerPath = "$env:TEMPrustdesk-1.4.4-x86_64.exe" $payloadDir = "$env:TEMPrustdesk_payload" Write-Host "[*] Beendigung der gestarteten Prozesse..." Get-Process -Name "logger","Libserver","rustdesk-1.4.4-x86_64" -ErrorAction SilentlyContinue | Stop-Process -Force Write-Host "[*] Löschen von Dateien..." Remove-Item -Path $installerPath -Force -ErrorAction SilentlyContinue Remove-Item -Recurse -Force -Path $payloadDir -ErrorAction SilentlyContinue Write-Host "[+] Bereinigung abgeschlossen."