
RustyWater stellt die Hauptnutzlast und das Rückgrat der gesamten gegnerischen Operation bei Angriffen der Static Kitten Gruppe dar.
RustyWater stellt die Hauptnutzlast und das Rückgrat des gesamten Angriffsbetriebs der Static-Kitten-Gruppe dar.
RustyWater ist eine in Rust kompilierte ausführbare Datei (getarnt als reddit.exe mit einem gefälschten Cloudflare-Symbol), bekannt als RustyWater (oder mit Archer RAT/RUSTRIC in Verbindung gebracht), die durch Prozessinjektion und registrybasierte Persistenz eine starke AV-/EDR-Umgehung bietet.
Stufe 1: CPU-Kernanzahl-Prüfung
Zunächst schaut der RustyWater-Soldat umher, um die Leistungsfähigkeit des Rechners abzuschätzen, auf dem er sich befindet. Er fragt sich: Wie viele Kerne hat dieser Prozessor? Analyseumgebungen wie Sandboxen sind in der Regel ressourcenbegrenzt und haben oft zwei Kerne oder weniger. Stellt der Soldat fest, dass der Rechner so schwach ist, entscheidet er sofort, dass die Umgebung unsicher ist, und verschwindet spurlos – die gesamte Arbeit der Analysten war umsonst.
Im bereitgestellten Bild ist ein Ausschnitt des Codes des Reddit.exe-Programms zu sehen, der diesen Mechanismus veranschaulicht. Der Pfeil zeigt auf die Zeile, in der die „CPU-Anzahl“ überprüft wird, wo das Programm die Anzahl der Prozessorkerne untersucht. Wenn die Anzahl zwei oder weniger beträgt, ist die Umgebung verdächtig und die Ausführung wird sofort gestoppt.

Stufe 2: Erkennung virtueller Maschinen-Artefakte
Nicht überzeugt von der CPU-Prüfung allein, gräbt der Soldat tiefer. Er weiß, dass virtuelle Maschinen spezifische digitale Fußabdrücke hinterlassen – wie eine Spur von Brotkrumen. Er durchsucht die Liste der laufenden Prozesse nach bekannten Namen, die mit Virtualisierungssoftware verbunden sind: vmtoolsd.exe (VMware), vboxtray.exe (VirtualBox) und xenservice.exe (Xen). Er prüft auch das Vorhandensein bestimmter Treiberdateien auf der Festplatte, wie vmmouse.sys oder VBoxGuest.sys.
Die Logik ist einfach: Wenn ein Rechner VMware-Tools ausführt, handelt es sich wahrscheinlich um eine VM. Wenn es eine VM ist, ist es wahrscheinlich eine Analyseumgebung. Wenn es eine Analyseumgebung ist, bricht der Soldat die Mission ab.

Stufe 3: Registry-Scan auf Analysetools
Der Soldat begibt sich dann in die Windows-Registrierung, eine riesige Datenbank mit Systemeinstellungen. Er weiß, dass Sicherheitsanalysten oft ihre Tools zurücklassen und diese Tools Artefakte hinterlassen. Er sucht nach Registrierungsschlüsseln, die mit Debugging- und Überwachungssoftware wie Wireshark, Process Hacker, OllyDbg und IDA Pro verbunden sind. Das Vorhandensein eines dieser Schlüssel bestätigt, dass die Umgebung feindlich ist, und löst eine sofortige Abschaltung aus.

Stufe 4: RAM-Größenanalyse
Meldet das System weniger als 4 GB, vermutet der Soldat eine ressourcenarme Sandbox und stoppt die Ausführung. Diese Prüfung ist eine zuverlässige Methode, um viele automatisierte Analysesysteme herauszufiltern.

Stufe 5: Debugger-Erkennung
Der Soldat überprüft nun seine unmittelbare Umgebung. Er verwendet einen einfachen, aber effektiven Windows-API-Aufruf – IsDebuggerPresent – um festzustellen, ob er unter der Kontrolle eines Debuggers ausgeführt wird. Ein Debugger ist wie ein Mikroskop; ist einer vorhanden, bedeutet dies, dass jemand jede Anweisung des Soldaten beobachtet. Der Soldat wird unter solcher Überwachung nicht ausführen.

Stufe 6: Systemlaufzeitprüfung
Die Zeit selbst wird zum Faktor. Der Soldat prüft, wie lange das System seit dem letzten Neustart läuft. Sandboxen und Analyseumgebungen werden oft frisch gestartet, kurz bevor eine Probe ausgeführt wird. Beträgt die Systemlaufzeit weniger als 15 Minuten, stuft der Soldat sie als verdächtige, kurzlebige Umgebung ein und zieht sich zurück.

Stufe 7: Benutzernamenanalyse
Der Soldat überprüft dann die Identität des Benutzers. Er vergleicht den aktuellen Benutzernamen mit einer schwarzen Liste häufiger Analyse-Konten: „sandbox“, „virus“, „malware“, „analysis“, „vmware“ und „test“. Diese Benutzernamen werden häufig in isolierten Analyseumgebungen verwendet. Stimmt der Benutzername mit einem Eintrag auf der Liste überein, wird die Mission sofort abgebrochen.

Stufe 8: MAC-Adress- und Hardwareprofil-Prüfung
Schließlich betrachtet der Soldat die Netzwerkkarte des Rechners. Er überprüft die MAC-Adresse auf bekannte Herstellerpräfixe, die von Virtualisierungssoftware verwendet werden. Eine MAC-Adresse, die mit 00:0C:29 beginnt, gehört zu VMware, während 08:00:27 zu VirtualBox gehört. Er durchsucht auch Hardwareprofile nach Zeichenfolgen wie „VMware“ oder „VirtualBox“ in der Systembeschreibung. Wird eines davon gefunden, weiß der Soldat, dass er sich in einer virtuellen Maschine befindet, und zieht den Stecker.

Das Implantat tarnt sich geschickt als legitimes Windows-Update-Komponente, was es für beiläufige Beobachter weniger verdächtig macht. Der Persistenzmechanismus umfasst:
Dies stellt sicher, dass Reddit.exe bei jeder Benutzeranmeldung automatisch mit dessen Berechtigungen ausgeführt wird.

Die letzte und ausgefeilteste Fähigkeit ist die Prozessinjektion in explorer.exe, die es dem Implantat ermöglicht, Shellcode innerhalb eines vertrauenswürdigen Systemprozesses auszuführen.
Reddit.exe implementiert eine klassische, aber effektive Remote-Thread-Injektionstechnik:
Diese Technik ermöglicht es den Angreifern, ihren bösartigen Code in einem vertrauenswürdigen Systemprozess zu verstecken, was die Erkennung durch Sicherheitslösungen erheblich erschwert.

Warum greifen Angreifer für die Prozessinjektion auf explorer.exe zurück?
Die Angreifer haben sich bewusst dafür entschieden, explorer.exe als Ziel für die Injektion ihres bösartigen Shellcodes zu wählen. Diese Wahl war nicht zufällig – sie basierte auf strategischen Vorteilen:

Platzieren Sie eine HTTP-Nutzlast: Verschlüsseln Sie sie mit XOR-Verschlüsselung, um eine Erkennung über das Netzwerk zu vermeiden.
Ändern von Dateimetadaten zur Umgehung der Erkennung
Nachdem die Nutzlast reddit.exe erstellt wurde, müssen wir ihre Metadaten ändern, damit sie wie ein legitimes, nicht verdächtiges Programm erscheint. Sicherheitslösungen und EDR-Tools untersuchen diese Metadatenfelder, daher ist deren Änderung für die Umgehung unerlässlich.
Welche Metadaten werden als Ziel ausgewählt?
Dateiversion: Die Versionsnummer der Datei Produktversion: Die Versionsnummer des Produkts Dateibeschreibung: Wie sich die Datei selbst beschreibt (erscheint im Task-Manager) Produktname: Der Name des Produkts Firmenname: Der Name des entwickelnden Unternehmens LegalCopyright: Urheberrechtsinformationen Originaldateiname: Der ursprüngliche Name der Datei
Das verwendete Tool: rcedit
Zur Durchführung dieser Änderungen verwenden wir ein leichtgewichtiges, kostenloses Tool namens rcedit, das offiziell auf GitHub verfügbar ist. Link: https://github.com/electron/rcedit/releases/download/v2.0.0/rcedit-x64.exe

Ich habe beobachtet, dass die Angreifer reddit.exe nicht direkt auf dem Zielsystem ausführen. Stattdessen verlassen sie sich auf ein Zwischenprogramm namens CertificationKit.ini (Dropper), das die verschlüsselte Nutzlast trägt, sie zur Laufzeit entschlüsselt und auf dem Rechner des Opfers ausführt.
Und dass der Dropper in Rust geschrieben wurde. Obwohl er sich als scheinbar harmlose Konfigurationsdatei (CertificationKit.ini) tarnt, ist er in Wirklichkeit eine kompilierte Binärdatei, die für die Bereitstellung und Ausführung der Hauptnutzlast auf dem Zielsystem verantwortlich ist.
Diese Technik bietet mehrere Vorteile:

Nutzlastverschlüsselung: Die Hauptnutzlast (reddit.exe) wird im Abschnitt ENCRYPTED_PAYLOAD gespeichert und mit dem im Dropper definierten XOR-Schlüssel (XOR_KEY) verschlüsselt. Dadurch wird sichergestellt, dass die Nutzlast bis zur Laufzeit geschützt bleibt.
Zielpfad: Der Dropper schreibt die entschlüsselte Nutzlast an den im Dropper konfigurierten Speicherort (TARGET_PATH). Dieser Pfad muss korrekt auf das vorgesehene Verzeichnis auf dem System des Opfers eingestellt sein.
Laufzeitentschlüsselung: Bei der Ausführung entschlüsselt der Dropper die Nutzlast mit dem XOR-Schlüssel und setzt sie als CertificationKit.ini am Zielort ab.
Dieser Aufbau ermöglicht es den Angreifern, verdeckt zu bleiben, die Erkennung zu umgehen und sicherzustellen, dass die Nutzlast nur bei Ausführung auf dem System des Opfers zugänglich ist.
