
Erster Entschlüssler für die The-Gentlemen-Ransomware — stellt Verschlüsselungsschlüssel aus Prozessspeicher-Dumps mithilfe der Extraktion ephemeraler X25519-Schlüssel wieder her. 35/35 Dateien entschlüsselt. Forschung von Bedrock Safeguard Inc.
Die erste öffentlich verfügbare Entschlüsselungsmethode für die The Gentlemen Ransomware.
The Gentlemen (auch bekannt als hastalamuerte) ist derzeit der weltweit aktivste Ransomware-as-a-Service (RaaS)-Betrieb mit über 320 bestätigten Opfern Stand Q1 2026. Bisher bewerteten alle großen Sicherheitsanbieter – Cybereason, Group-IB, Check Point, ASEC, Trend Micro – die Verschlüsselung als kryptografisch unbrechbar. Es gab keinen öffentlichen Entschlüsseler.
Wir haben ihn geknackt.
The Gentlemen verwendet XChaCha20-Stream-Verschlüsselung mit X25519-ECDH-Schlüsselaustausch. Jede Datei wird mit einem eindeutigen Schlüssel verschlüsselt, der von einem frischen ephemeren Schlüsselpaar abgeleitet wird. Die Verschlüsselung ist mathematisch einwandfrei – wir haben die Mathematik nicht geknackt.
Wir haben die Implementierung geknackt.
Go löscht kryptografisches Schlüsselmaterial im Heap nach der Verwendung nicht (CWE-244). Sobald ein ephemerer X25519-privater Schlüssel für eine Datei generiert wurde, verbleibt er im Prozessspeicher, anstatt gelöscht zu werden – ein Dump des live-Prozesses stellt daher die Schlüssel für bereits verschlüsselte Dateien wieder her, oft in mehreren GC-übriggebliebenen Kopien. Das Betriebssystem gibt diesen Speicher frei, sobald der Prozess beendet wird.
Ein Speicherdump des live-Prozesses, der während oder gegen Ende der Verschlüsselung erstellt wurde, enthält in der Regel die ephemeren Schlüssel für jede bis zu diesem Zeitpunkt verarbeitete Datei – in unserer Analyse von 35 Dateien alle.
Ergebnisse: 35/35 Dateien mit 100% Genauigkeit entschlüsselt. Alle 35 Schlüssel in 0,6 Sekunden aus einem einzigen Speicherdump wiederhergestellt.
Wenn Sie von der The Gentlemen Ransomware betroffen sind, können Sie möglicherweise Dateien wiederherstellen, falls ein Speicherabbild des Ransomware-Prozesses erfasst wurde, während er ausgeführt wurde. Die Wiederherstellung erfolgt durch Extrahieren der dateispezifischen ephemeren privaten Schlüssel aus diesem Abbild, daher ist sie im besten Fall möglich und kann partiell sein – nur Dateien, deren Schlüssel bereits generiert und zum Zeitpunkt der Erfassung noch resident war, können wiederhergestellt werden.
Was das in der Praxis bedeutet:
Wo ein brauchbares Speicherabbild vorhanden sein könnte – jedes hilft nur, wenn es den Prozess während der Ausführung erfasst hat:
procdump, Task-Manager → "Dump-Datei erstellen" oder ein anderes forensisches Werkzeug verwendet hat, um den Ransomware-Prozess vor seiner Beendigung zu erfassen.C:\ProgramData\Microsoft\Windows\WER\ vorhanden sein.C:\Windows\Minidump\ und C:\Windows\MEMORY.DMP, falls ein Bugcheck auftrat, während der Prozess lief (nur vollständige Speicherabbilder enthalten Prozessspeicher; Minidumps tun das normalerweise nicht).C:\hiberfil.sys, falls das System während der Ransomware-Prozess aktiv war in den Ruhezustand versetzt wurde (es friert einen RAM-Schnappschuss zu diesem Zeitpunkt ein).Sie sind sich nicht sicher, ob einer dieser Fälle für Ihren Vorfall zutrifft? Kontaktieren Sie uns unter [email protected] und wir helfen Ihnen bei der Überprüfung.
# 1. Install dependencies
pip install cryptography
# 2. Extract ephemeral public keys from your encrypted files
python extract_keys_from_files.py --input-dir /path/to/encrypted/files --output keys.json
# 3. Search the memory dump for matching private keys
python recover_keys.py --dump process_memory.dmp --pubkeys keys.json --output recovered_keys.json
# 4. Decrypt your files
python decrypt.py --keys recovered_keys.json --input-dir /path/to/encrypted/files --output-dir /path/to/recovered
--fast / --superfast / --ultrafast)Der The Gentlemen Locker unterstützt Geschwindigkeitsflags, die eine Teilverschlüsselung bei Dateien größer als 1 MB durchführen. Unter --superfast werden nur etwa 3% der Bytes einer großen Datei verschlüsselt; die restlichen ~97% bleiben als Klartext an der ursprünglichen Position auf der Festplatte. Dies wurde in veröffentlichten REs (ASEC, Trend Micro, Cybereason) bestätigt.
Eine Ganzkörper-XChaCha20-Entschlüsselung einer teilverschlüsselten Datei würde die unverschlüsselten Bereiche DOPPELT BESCHÄDIGEN – das Anwenden des Keystreams auf die Klartextsegmente macht sie zu Müll und zerstört wiederherstellbare Daten.
Aus diesem Grund weigert sich decrypt.py standardmäßig, Dateien größer als 1 MB zu verarbeiten. Wenn Sie überprüft haben, dass der Locker im Vollverschlüsselungsmodus lief (nur kleine Dateien oder ein Build ohne die Geschwindigkeitsflags), übergeben Sie --force-large zum Überschreiben.
Für Opfer der Teilverschlüsselung verwenden Sie stattdessen formatbewusste Wiederherstellungswerkzeuge auf den unverschlüsselten Bereichen:
Bedrock Safeguard reverse-engineert aktiv die Chunk-Offset-Geometrie des Teilverschlüsselungsmodus. Sobald diese Arbeit abgeschlossen ist, wird dieser Entschlüsseler aktualisiert, um die teilverschlüsselten Segmente sicher zu behandeln.
Per-file encryption:
1. Generate 32 random bytes -> ephemeral private key (crypto/rand.Read)
2. X25519(ephemeral_priv, operator_pub) -> shared_secret (32 bytes)
3. XChaCha20(plaintext, shared_secret) -> ciphertext
4. Append to file: --eph--<base64(ephemeral_PUBLIC_key)>--marker--GENTLEMEN
Der ephemere private Schlüssel ist das kritische Geheimnis. Er existiert nur im Prozessspeicher und wird niemals auf die Festplatte geschrieben. Aber der Goroutine-Stack-Allokator von Go löscht keine Speicherbereiche, wenn Variablen den Gültigkeitsbereich verlassen (CWE-244), wodurch das Schlüsselmaterial über Speicherforensik zugänglich bleibt.
| ID | Beschreibung |
|---|---|
| CWE-244 | Unzureichende Löschung des Heap-Speichers vor der Freigabe |
| CWE-316 | Klartextspeicherung sensibler Informationen im Speicher |
public = X25519(candidate, basepoint)shared_secret = X25519(ephemeral_private, operator_public)shared_secret als Schlüssel| IOC | Wert |
|---|---|
| Öffentlicher X25519-Schlüssel des Betreibers | fcb11717cab989424755a957c1d55361b119de4fdcfecdb2f2e56b15ad801922 |
| Feld | Wert |
|---|---|
| SHA256 | 3ab9575225e00a83a4ac2b534da5a710bdcf6eb72884944c437b5fbe5c5c9235 |
| Typ | PE32+ x64, Go binary, Garble-obfuscated |
| Größe | 2,962,944 bytes |
| Erstmals gesehen | 2026-04-03 |
| Indikator | Wert |
|---|---|
| Lösegeldforderung | README-GENTLEMEN.txt |
| Verschlüsselte Erweiterung | Randomisiert pro Build (z. B. .axfsmg) |
| Dateifußzeile | --eph--<base64>--marker--GENTLEMEN |
vssadmin und wmicAdd-MpPreference hinzugentlemen.bmpLOCKER_BACKGROUND=1--path, --fast, --full, --shares, --silent, --system, -T (Verzögerung)Diese Forschung führte zur Entwicklung von Bedrock RansomGuard – einem Open-Source-Windows-Dienst, der automatisch Ransomware-Verschlüsselung erkennt und den Prozessspeicher erfasst, bevor Schlüssel zerstört werden. RansomGuard funktioniert gegen alle Ransomware-Familien, nicht nur The Gentlemen.
Diese Arbeit erweitert Adrien Guinet's WannaCry-Schlüsselwiederherstellung (2017) auf moderne Go-basierte Ransomware unter Verwendung elliptischer Kurvenkryptografie. Unseres Wissens ist dies die erste veröffentlichte Anwendung der X25519-Key-Recovery aus Speicherforensik gegen eine Ransomware-Familie.
Dieses Projekt ist unter der Business Source License 1.1 lizenziert – kostenlos für alle nicht-kommerziellen Zwecke, interne geschäftliche Nutzung, Incident Response und akademische Forschung.
Bedrock Safeguard Inc. ist ein kanadisches Cybersicherheits-Intelligence-Unternehmen, das sich auf die Analyse der Infrastruktur von Bedrohungsakteuren, Malware-Reverse-Engineering und digitale Forensik spezialisiert hat. Diese Forschung wurde im Rahmen unserer Mission durchgeführt, kanadische Organisationen und Einzelpersonen vor Ransomware-Bedrohungen zu schützen.
Wenn Sie Opfer der The Gentlemen Ransomware sind und Hilfe bei der Schlüsselwiederherstellung benötigen, kontaktieren Sie uns unter [email protected].
| TOX ID | 88984846080D639C9A4EC394E53BA616D550B2B3AD691942EA2CCD33AA5B9340FD1A8FF40E9A |
| Verhandlungs-E-Mail | [email protected] |
| Leak-Site (.onion) | tezwsse5czllksjb7cwp65rvnk4oobmzti2znn42i43bjdfd2prqqkad.onion |