Bundled with Unleash skills pack. Upstream: https://github.com/zhaoxuya520/reverse-skill
Thick Client Security Testing
ACTION REQUIRED (execute immediately after reading)
NOW: read../field-journal/precedent-pentest.mdNOW: confirm the target is a desktop thick client (Win/macOS/Linux GUI or service companion), not pure webNOW: case-init; write the installer source and test accounts into scopeNEXT: tools (Burp upstream proxy, process monitoring, reverse engineering tools)ACT: trust-boundary map → local surface → network surface → update/supply chain
Applicable Scenarios
- C/S architecture clients, Electron/Qt/.NET WinForms/WPF
- Local config/credential storage, IPC, named pipes
- Client-side enforced-validation bypass research (authorized)
- Auto-update channels and code-signature verification
Workflow
1. Build Boundaries
□ Process tree, child processes, drivers/services
□ Listening ports and outbound domains
□ Local sensitive paths: %APPDATA%, Keychain, registry
2. Local Attack Surface
□ Cleartext config, hardcoded keys, debug switches
□ DLL hijacking/search order (Windows)
□ Database file (SQLite) permissions and encryption
□ IPC: who can connect? Is there authentication?
3. Network Surface
□ System proxy / app-custom TLS
□ Certificate pinning → combine with mobile/js methodology or Frida
□ API privilege escalation: admin endpoints hidden in the client
4. Reverse-Engineering Verification
□ .NET → dotnet-reverse; native → ida/ghidra; Electron → asar + js-reverse
Toolchain
| Tool | Purpose |
|---|---|
| Process Monitor / API Monitor | Behavior |
| Burp / mitmproxy | Traffic |
| dnSpy / IDA / Ghidra | Reverse engineering |
| Sysinternals | Windows surface |
| asar / nexe detection | Electron |
References
references/thick-client-checklist.md../dotnet-reverse/../ida-reverse/../js-reverse/../api-security/
Routing Context
Upstream: MASTER R32
Downstream: pure protocols protocol-reverse; supply-chain updates supply-chain-security
Task Completion Self-Check
- Trust boundaries drawn?
- Both local + network surfaces covered?
- Checklist?