Reverse Engineering von Browsererweiterungen
ACTION REQUIRED(读完后立刻执行)
JETZT: Lies../field-journal/precedent-reverse.mdJETZT: Bestätige, dass das Ziel eine Browsererweiterung (crx/xpi/entpacktes Verzeichnis) ist, kein normales Web-JS (normal →js-reverse/)NÄCHSTER: Entpacke die Erweiterung; lies das ManifestAKTION: Berechtigungsebene → Hintergrundskript → Netzwerk-/Speicher-Hooks
Anwendungsbereiche
- Analyse von Chrome/Edge MV2/MV3-Erweiterungen
- Firefox-Erweiterungen
- IOC von bösartigen Erweiterungen, Untersuchung von Supply-Chain-Vergiftungen
- Wiederherstellung von Signatur-, Verschlüsselungs- oder Proxy-Logik, die durch Erweiterungen implementiert wurde
Arbeitsablauf
1. Paket
□ crx entpacken / Erweiterungsverzeichnis aus Profil holen
□ manifest.json: permissions, host_permissions, background, content_scripts
□ Übermäßige Berechtigungen bewerten (<all_urls>, webRequest, debugger)
2. Logik
□ service_worker / background Einstiegspunkt
□ content_script Injektionspunkte und Welt (isolated)
□ chrome.storage / IndexedDB Schlüssel
□ Wie bei `js-reverse`: Netzwerk und Nachrichtenübermittlung beobachten (runtime.sendMessage)
3. Dynamisch
□ Entwicklermodus: entpacktes Verzeichnis laden
□ chrome://extensions auf Fehler prüfen
□ DevTools an Service Worker anhängen
□ Bei Bedarf Frida / Browser-CDP (jshookmcp)
Werkzeugkette
| Werkzeug | Verwendung |
|---|---|
| Entpacken/jq | Manifest |
| Chrome DevTools | Worker-Debugging |
| js-reverse Werkzeugkette | Tiefgehendes JS |
| YARA | Regeln für bösartige Erweiterungen |
Referenzen
references/extension-analysis.md- field-journal Einträge zur Wiederherstellung von Erweiterungen
../js-reverse/../malware-analysis/
Routing-Kontext
Aufwärts: MASTER R30
Abwärts: Komplexes verschleiertes JS → js-reverse; Vergiftungsuntersuchung → supply-chain / malware
Aufgabenabschluss-Checkliste
- Wurden die Berechtigungsebene und die Einstiegsskripte aufgelistet?
- Wurde der kritische Datenfluss wiederhergestellt?
- Checkliste?