
Daten aus modernen Chrome-Versionen extrahieren, einschließlich Refresh-Tokens, Cookies, gespeicherter Anmeldedaten, Autofill-Daten, Browserverlauf und Lesezeichen
[!IMPORTANT] Dieses Projekt wird nicht mehr gewartet. Bitte verwenden Sie stattdessen DumpBrowserSecrets, das Chrome, Edge, Brave, Firefox, Opera, Opera GX und Vivaldi unterstützt.
Extrahiert Daten aus modernen Chrome-Versionen, einschließlich Refresh-Tokens, Cookies, gespeicherter Anmeldeinformationen, Autofill-Daten, Browserverlauf und Lesezeichen.
Lehrplan für den Malware-Entwicklungskurs
Lehrplan für den Kurs „Offensive Phishing-Operationen“
Lehrplan für den Kurs „Ransomware Internals, Simulation und Erkennung“
Dieses Projekt besteht aus zwei Komponenten:
Ausführbare Datei (DumpChromeSecrets.exe) – Erstellt einen headless Chrome-Prozess, injiziert die DLL mittels Early Bird APC-Injektion und empfängt extrahierte Daten über eine Named Pipe.
DLL (DllExtractChromeSecrets.dll) – Läuft im Kontext des Chrome-Prozesses, um den App-Bound-Verschlüsselungsschlüssel mithilfe von Chromes IElevator-COM-Schnittstelle zu entschlüsseln. Anschließend werden Daten aus SQLite-Datenbanken extrahiert und entschlüsselt.
Ab Chrome 127 hat Google die App-Bound-Verschlüsselung eingeführt, die Cookie-Verschlüsselungsschlüssel an die Identität der Chrome-Anwendung bindet. Der Verschlüsselungsschlüssel (mit dem Namen "app_bound_encrypted_key") wird in der Datei "Local State" gespeichert und kann über den Elevation-Dienst von Chrome mittels der IElevator-COM-Schnittstelle entschlüsselt werden.
Dieses Projekt umgeht diesen Schutz, indem es Code in den Chrome-Prozess injiziert und so IElevator::DecryptData mit dem entsprechenden Anwendungskontext aufrufen kann. Eine weitere Methode wurde von luci4 in den Modulen Dumping Browser Cookies: Chrome und Dumping Saved Logins: Chrome implementiert.
Das obige Bild stammt aus: Verbesserung der Sicherheit von Chrome-Cookies unter Windows
Nachdem die DLL injiziert wurde, extrahiert sie die folgenden Daten aus Chrome:
Verwendung: DumpChromeSecrets.exe [Optionen]
Optionen:
/o <Datei> Ausgabedatei im JSON-Format (Standard: ChromeData.json)
/all Alle Einträge exportieren (Standard: max. 16 pro Kategorie)
/? Diese Hilfemeldung anzeigen
Beispiele:
DumpChromeSecrets.exe Extrahiert 16 Einträge in ChromeData.json
DumpChromeSecrets.exe /all Exportiert alle Einträge
DumpChromeSecrets.exe /o Output.json /all Extrahiert alle in Output.json
IElevator-COM-Schnittstelle aus snovvcrashs Gist
| Datentyp | Datenbankpfad | Format | Verschlüsselung |
|---|
| App-Bound-Schlüssel | User Data\Local State | JSON | DPAPI + IElevator |
| Cookies | User Data\Default\Network\Cookies | SQLite | AES-256-GCM (v20) |
| Anmeldungen | User Data\Default\Login Data | SQLite | AES-256-GCM (v20) |
| Tokens | User Data\Default\Web Data | SQLite | AES-256-GCM (v20) |
| Autofill | User Data\Default\Web Data | SQLite | Keine |
| Verlauf | User Data\Default\History | SQLite | Keine |
| Lesezeichen | User Data\Default\Bookmarks | JSON | Keine |