瀏覽器擴充功能逆向工程 是做什麼的?
ACTION REQUIRED(讀完後立刻執行)
NOW:讀取../field-journal/precedent-reverse.mdNOW:確認目標是瀏覽器擴充功能(crx/xpi/解壓目錄),不是普通網頁 JS(普通 →js-reverse/)NEXT:解壓擴充功能;讀取 manifestACT:權限面 → 背景腳本 → 網路/儲存鉤子
適用場景
- Chrome/Edge MV2/MV3 擴充功能分析
- Firefox 擴充功能
- 惡意擴充功能 IOC、供應鏈擴充功能投毒調查
- 擴充功能實作的簽名/加密/代理邏輯還原
工作流
1. 包體
□ crx 解壓 / 從 profile 取擴充功能目錄
□ manifest.json:permissions、host_permissions、background、content_scripts
□ 評估過度權限(<all_urls>、webRequest、debugger)
2. 邏輯
□ service_worker / background 入口
□ content_script 注入點與世界(isolated)
□ chrome.storage / IndexedDB 金鑰
□ 與 `js-reverse` 相同:Observe 網路與訊息傳遞(runtime.sendMessage)
3. 動態
□ 開發者模式載入解壓目錄
□ chrome://extensions 檢查錯誤
□ DevTools 附加 service worker
□ 必要時 Frida/瀏覽器 CDP(jshookmcp)
工具鏈
| 工具 | 用途 |
|---|---|
| 解壓/jq | manifest |
| Chrome DevTools | worker 除錯 |
| js-reverse 工具鏈 | 深度 JS |
| YARA | 惡意擴充功能規則 |
參考
references/extension-analysis.md- field-journal 擴充功能恢復相關條目
../js-reverse/../malware-analysis/
路由上下文
上游: MASTER R30
下游: 複雜混淆 JS → js-reverse;投毒調查 → supply-chain / malware
任務完成自檢
- 是否列出權限面與入口腳本?
- 是否還原關鍵資料流?
- Checklist?