厚客戶端安全測試 是做什麼的?
ACTION REQUIRED(讀完後立刻執行)
NOW: 讀取../field-journal/precedent-pentest.mdNOW: 確認目標是 桌面厚客戶端(Win/macOS/Linux GUI 或服務伴生),非純 WebNOW: case-init;安裝包來源與測試帳號寫入 scopeNEXT: 工具(Burp 上游代理、進程監控、逆向工具)ACT: 信任邊界圖 → 本地面 → 網路面 → 更新/供應鏈
適用場景
- C/S 架構客戶端、Electron/Qt/.NET WinForms/WPF
- 本地配置/憑證儲存、IPC、命名管道
- 客戶端強制校驗繞過研究(授權)
- 自動更新通道與代碼簽名驗證
工作流
1. 建邊界
□ 進程樹、子進程、驅動/服務
□ 監聽端口與出站域名
□ 本地敏感路徑:%APPDATA%、Keychain、註冊表
2. 本地攻擊面
□ 明文配置、硬編碼金鑰、調試開關
□ DLL 劫持/搜索順序(Windows)
□ 資料庫文件(SQLite)權限與加密
□ IPC:誰可連接?是否鑑權?
3. 網路面
□ 系統代理 / 應用自定義 TLS
□ 證書釘扎 → 聯合 mobile/js 方法學或 Frida
□ API 越權:客戶端隱藏的管理接口
4. 逆向驗證
□ .NET → dotnet-reverse;原生 → ida/ghidra;Electron → asar + js-reverse
工具鏈
| 工具 | 用途 |
|---|---|
| Process Monitor / API Monitor | 行為 |
| Burp / mitmproxy | 流量 |
| dnSpy / IDA / Ghidra | 逆向 |
| Sysinternals | Windows 面 |
| asar / nexe 檢測 | Electron |
參考
references/thick-client-checklist.md../dotnet-reverse/../ida-reverse/../js-reverse/../api-security/
路由上下文
上游: MASTER R32
下游: 純協議 protocol-reverse;供應鏈更新 supply-chain-security
任務完成自檢
- 是否畫出信任邊界?
- 本地+網路面是否都覆蓋?
- Checklist?