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,204 @@
|
|
|
1
|
+
# 沙箱编排与自动化
|
|
2
|
+
|
|
3
|
+
## 沙箱选型
|
|
4
|
+
|
|
5
|
+
| 沙箱 | 类型 | 速度 | 逃逸检测 | 推荐场景 |
|
|
6
|
+
|------|:--:|------|:--:|------|
|
|
7
|
+
| CAPE v2 | 开源 | 中 | 强 | 深度分析 + YARA 集成 |
|
|
8
|
+
| ASD Azul | 开源 | 快 | 中 | 大规模批量分类 |
|
|
9
|
+
| Joe Sandbox | 商业 | 中 | 极强 | 高价值样本深度分析 |
|
|
10
|
+
| ANY.RUN | 商业云 | 快 | 中 | 交互式快速分诊 |
|
|
11
|
+
| Triage | 商业云 | 极快 | 弱 | 批量初筛 |
|
|
12
|
+
| Cuckoo v3 | 开源 | 慢 | 弱 | 学习/研究 |
|
|
13
|
+
|
|
14
|
+
## CAPE Sandbox 部署
|
|
15
|
+
|
|
16
|
+
```bash
|
|
17
|
+
# Ubuntu 22.04+
|
|
18
|
+
git clone https://github.com/kevoreilly/CAPEv2
|
|
19
|
+
cd CAPEv2
|
|
20
|
+
sudo ./cape2.sh base # 安装依赖
|
|
21
|
+
sudo ./cape2.sh all # 完整安装
|
|
22
|
+
|
|
23
|
+
# Web 界面: http://localhost:8000
|
|
24
|
+
# API: http://localhost:8000/apiv2/
|
|
25
|
+
|
|
26
|
+
# 提交样本
|
|
27
|
+
curl -F "file=@sample.exe" http://localhost:8000/apiv2/tasks/create/file/
|
|
28
|
+
|
|
29
|
+
# 批量提交
|
|
30
|
+
for f in samples/*.exe; do
|
|
31
|
+
curl -F "file=@$f" http://localhost:8000/apiv2/tasks/create/file/
|
|
32
|
+
done
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
## 自动化分析管道
|
|
36
|
+
|
|
37
|
+
```python
|
|
38
|
+
# 多沙箱串联管道
|
|
39
|
+
import requests
|
|
40
|
+
import time
|
|
41
|
+
|
|
42
|
+
def analyze_sample(filepath):
|
|
43
|
+
"""提交样本到多个沙箱并汇总结果"""
|
|
44
|
+
results = {}
|
|
45
|
+
|
|
46
|
+
# 1. 快速分诊(Triage)
|
|
47
|
+
triage_result = submit_to_triage(filepath)
|
|
48
|
+
results['triage'] = triage_result
|
|
49
|
+
|
|
50
|
+
# 2. 如果 triage 判定可疑 → 深度分析
|
|
51
|
+
if triage_result['score'] >= 5:
|
|
52
|
+
cape_result = submit_to_cape(filepath)
|
|
53
|
+
results['cape'] = cape_result
|
|
54
|
+
|
|
55
|
+
# 3. YARA 规则扫描
|
|
56
|
+
yara_matches = run_yara(filepath, 'rules/')
|
|
57
|
+
results['yara'] = yara_matches
|
|
58
|
+
|
|
59
|
+
# 4. Sigma 规则生成
|
|
60
|
+
if cape_result.get('behaviors'):
|
|
61
|
+
sigma_rules = generate_sigma(cape_result['behaviors'])
|
|
62
|
+
results['sigma'] = sigma_rules
|
|
63
|
+
|
|
64
|
+
# 5. IOC 汇总
|
|
65
|
+
iocs = extract_iocs(results)
|
|
66
|
+
results['iocs'] = iocs
|
|
67
|
+
|
|
68
|
+
return results
|
|
69
|
+
|
|
70
|
+
def submit_to_cape(filepath):
|
|
71
|
+
resp = requests.post(
|
|
72
|
+
'http://cape:8000/apiv2/tasks/create/file/',
|
|
73
|
+
files={'file': open(filepath, 'rb')},
|
|
74
|
+
data={'timeout': 300, 'enforce_timeout': True}
|
|
75
|
+
)
|
|
76
|
+
task_id = resp.json()['task_id']
|
|
77
|
+
|
|
78
|
+
# 轮询等待完成
|
|
79
|
+
while True:
|
|
80
|
+
status = requests.get(
|
|
81
|
+
f'http://cape:8000/apiv2/tasks/view/{task_id}'
|
|
82
|
+
).json()['task']['status']
|
|
83
|
+
if status == 'reported':
|
|
84
|
+
break
|
|
85
|
+
time.sleep(5)
|
|
86
|
+
|
|
87
|
+
return requests.get(
|
|
88
|
+
f'http://cape:8000/apiv2/tasks/report/{task_id}/json/'
|
|
89
|
+
).json()
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
## ASD Azul 集成
|
|
93
|
+
|
|
94
|
+
```bash
|
|
95
|
+
# Azul — 2026 年 ASD 发布的免费大规模分析平台
|
|
96
|
+
git clone https://github.com/AustralianSignalsDirectorate/azul
|
|
97
|
+
cd azul
|
|
98
|
+
|
|
99
|
+
# 批量导入样本
|
|
100
|
+
azul import samples/ --tags "phishing_campaign_202605"
|
|
101
|
+
|
|
102
|
+
# 应用 YARA 规则
|
|
103
|
+
azul scan --yara rules/anti_vm_rules.yar
|
|
104
|
+
|
|
105
|
+
# Snort 规则检测
|
|
106
|
+
azul scan --snort rules/c2_detection.rules
|
|
107
|
+
|
|
108
|
+
# 自动提取 IOC
|
|
109
|
+
azul export --format stix2 --output iocs.json
|
|
110
|
+
|
|
111
|
+
# 自定义插件
|
|
112
|
+
azul plugin add custom_unpacker.py # 添加自定义解包逻辑
|
|
113
|
+
```
|
|
114
|
+
|
|
115
|
+
## 反沙箱对抗
|
|
116
|
+
|
|
117
|
+
### 常见沙箱逃逸技术
|
|
118
|
+
|
|
119
|
+
```text
|
|
120
|
+
1. 定时延迟
|
|
121
|
+
→ Sleep(120000) // 2分钟,超出沙箱超时
|
|
122
|
+
→ 检测: Hook Sleep → 加速时间
|
|
123
|
+
|
|
124
|
+
2. 用户交互检测
|
|
125
|
+
→ GetTickCount() 检查鼠标移动
|
|
126
|
+
→ 检测: 模拟用户交互
|
|
127
|
+
|
|
128
|
+
3. 磁盘大小检测
|
|
129
|
+
→ GetDiskFreeSpaceEx < 60GB
|
|
130
|
+
→ 检测: 扩展虚拟磁盘
|
|
131
|
+
|
|
132
|
+
4. 特定文件/进程检测
|
|
133
|
+
→ C:\agent\agent.pyw (CAPE)
|
|
134
|
+
→ 检测: 重命名检测组件
|
|
135
|
+
|
|
136
|
+
5. WMI 虚拟机检测
|
|
137
|
+
→ Win32_ComputerSystem.Manufacturer = "VMware, Inc."
|
|
138
|
+
→ 检测: 修改 SMBIOS
|
|
139
|
+
|
|
140
|
+
6. MAC 地址检测
|
|
141
|
+
→ 00:0C:29 (VMware OUI), 08:00:27 (VirtualBox)
|
|
142
|
+
→ 检测: 随机 MAC
|
|
143
|
+
```
|
|
144
|
+
|
|
145
|
+
### CAPE 反逃逸配置
|
|
146
|
+
|
|
147
|
+
```python
|
|
148
|
+
# CAPE 配置
|
|
149
|
+
[processing]
|
|
150
|
+
# 启用反反分析
|
|
151
|
+
antievasion = yes
|
|
152
|
+
|
|
153
|
+
# 模拟人机交互
|
|
154
|
+
human_interaction = yes
|
|
155
|
+
|
|
156
|
+
# 最小运行时间
|
|
157
|
+
timeout = 600
|
|
158
|
+
|
|
159
|
+
# 检测特定技术
|
|
160
|
+
detect_sleep_skip = yes
|
|
161
|
+
detect_debugger_check = yes
|
|
162
|
+
detect_vm_check = yes
|
|
163
|
+
```
|
|
164
|
+
|
|
165
|
+
## IOC 自动化提取
|
|
166
|
+
|
|
167
|
+
```python
|
|
168
|
+
def extract_iocs(analysis_results):
|
|
169
|
+
iocs = {
|
|
170
|
+
'network': {'ip': [], 'domain': [], 'url': [], 'user_agent': []},
|
|
171
|
+
'host': {'files': [], 'registry': [], 'mutex': [], 'services': []},
|
|
172
|
+
'mitre': [],
|
|
173
|
+
'hashes': {}
|
|
174
|
+
}
|
|
175
|
+
|
|
176
|
+
# CAPE → IOC 提取
|
|
177
|
+
if 'cape' in analysis_results:
|
|
178
|
+
cape = analysis_results['cape']
|
|
179
|
+
behavior = cape.get('behavior', {})
|
|
180
|
+
|
|
181
|
+
# 网络 IOC
|
|
182
|
+
for conn in behavior.get('network', {}).get('tcp', []):
|
|
183
|
+
iocs['network']['ip'].append(conn['dst'])
|
|
184
|
+
for dns in behavior.get('network', {}).get('dns', []):
|
|
185
|
+
iocs['network']['domain'].append(dns['request'])
|
|
186
|
+
|
|
187
|
+
# 文件 IOC
|
|
188
|
+
for dropped in behavior.get('dropped', []):
|
|
189
|
+
iocs['host']['files'].append(dropped['path'])
|
|
190
|
+
|
|
191
|
+
# Mutex
|
|
192
|
+
for mutex in behavior.get('summary', {}).get('mutex', []):
|
|
193
|
+
iocs['host']['mutex'].append(mutex)
|
|
194
|
+
|
|
195
|
+
# YARA → MITRE 映射
|
|
196
|
+
if 'yara' in analysis_results:
|
|
197
|
+
for match in analysis_results['yara']:
|
|
198
|
+
if 'mitre_id' in match.get('meta', {}):
|
|
199
|
+
iocs['mitre'].extend(match['meta']['mitre_id'].split(','))
|
|
200
|
+
|
|
201
|
+
return iocs
|
|
202
|
+
```
|
|
203
|
+
|
|
204
|
+
Source: CAPE v2 docs, ASD Azul documentation, Joe Sandbox v44, Anti-VM YARA Library (2026)
|
|
@@ -0,0 +1,232 @@
|
|
|
1
|
+
# YARA + Sigma 规则编写方法论
|
|
2
|
+
|
|
3
|
+
## YARA 规则编写
|
|
4
|
+
|
|
5
|
+
### 基本语法
|
|
6
|
+
|
|
7
|
+
```yara
|
|
8
|
+
rule RuleName {
|
|
9
|
+
meta:
|
|
10
|
+
description = "规则描述"
|
|
11
|
+
author = "作者"
|
|
12
|
+
date = "2026-01"
|
|
13
|
+
severity = "low/medium/high/critical"
|
|
14
|
+
mitre_id = "T1234"
|
|
15
|
+
|
|
16
|
+
strings:
|
|
17
|
+
$ = "ASCII 字符串"
|
|
18
|
+
$ = { 48 65 6C 6C 6F } // 十六进制
|
|
19
|
+
$ = /regex[0-9]{4}/ // 正则
|
|
20
|
+
$ = "wide_string" wide // UTF-16
|
|
21
|
+
$ = "xor_encoded" xor // XOR 编码
|
|
22
|
+
$ = "case_insensitive" nocase // 忽略大小写
|
|
23
|
+
|
|
24
|
+
condition:
|
|
25
|
+
// 逻辑组合
|
|
26
|
+
uint16(0) == 0x5A4D and // MZ header
|
|
27
|
+
filesize < 500KB and
|
|
28
|
+
(2 of ($s*) or $hex1) and
|
|
29
|
+
not ($benign1 and $benign2)
|
|
30
|
+
}
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
### 性能优化
|
|
34
|
+
|
|
35
|
+
```yara
|
|
36
|
+
// ❌ 慢 — 全文件正则
|
|
37
|
+
condition: /https?:\/\/.*\.php/
|
|
38
|
+
|
|
39
|
+
// ✅ 快 — 先锚定字符串再限定位置
|
|
40
|
+
strings: $url = "http"
|
|
41
|
+
condition: $url and /https?:\/\/[a-z0-9.-]+\/[a-z]{3,8}\.php/ in (0..filesize)
|
|
42
|
+
|
|
43
|
+
// ❌ 慢 — 无锚点
|
|
44
|
+
condition: any of them
|
|
45
|
+
|
|
46
|
+
// ✅ 快 — 锚定在可用字符串上
|
|
47
|
+
condition: uint16(0) == 0x5A4D and any of them
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
### 反分析技术检测规则
|
|
51
|
+
|
|
52
|
+
```yara
|
|
53
|
+
// 虚拟机检测
|
|
54
|
+
rule AntiVM_WMI_Detection {
|
|
55
|
+
meta:
|
|
56
|
+
description = "检测通过 WMI 查询虚拟机信息"
|
|
57
|
+
severity = "medium"
|
|
58
|
+
mitre_id = "T1497"
|
|
59
|
+
strings:
|
|
60
|
+
$wmi1 = "SELECT * FROM Win32_BIOS" nocase
|
|
61
|
+
$wmi2 = "SELECT * FROM Win32_VideoController" nocase
|
|
62
|
+
$wmi3 = "SELECT * FROM Win32_NetworkAdapter" nocase
|
|
63
|
+
$wmi4 = "SELECT * FROM Win32_ComputerSystem" nocase
|
|
64
|
+
$bios = "VMware" nocase
|
|
65
|
+
$bios2 = "VirtualBox" nocase
|
|
66
|
+
$bios3 = "QEMU" nocase
|
|
67
|
+
condition:
|
|
68
|
+
uint16(0) == 0x5A4D and
|
|
69
|
+
(2 of ($wmi*)) and
|
|
70
|
+
(1 of ($bios*))
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
// 调试器检测
|
|
74
|
+
rule AntiDebug_PEB_Check {
|
|
75
|
+
meta:
|
|
76
|
+
description = "通过 PEB.BeingDebugged 检测调试器"
|
|
77
|
+
severity = "medium"
|
|
78
|
+
mitre_id = "T1622"
|
|
79
|
+
strings:
|
|
80
|
+
// x64: mov rax, gs:[0x60]; movzx eax, byte [rax+2]
|
|
81
|
+
$peb_x64 = { 65 48 8B 04 25 60 00 00 00 0F B6 40 02 }
|
|
82
|
+
// x86: mov eax, fs:[0x30]; movzx eax, byte [eax+2]
|
|
83
|
+
$peb_x86 = { 64 A1 30 00 00 00 0F B6 40 02 }
|
|
84
|
+
condition:
|
|
85
|
+
uint16(0) == 0x5A4D and
|
|
86
|
+
any of them
|
|
87
|
+
}
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
### 94 种反分析技术分类
|
|
91
|
+
|
|
92
|
+
| 类别 | 技术数量 | YARA 可检测 | 示例 |
|
|
93
|
+
|------|:--:|:--:|------|
|
|
94
|
+
| 定时检测 | 12 | 低 | Sleep → GetTickCount 对比 |
|
|
95
|
+
| CPU 指纹 | 8 | 中 | CPUID 指令检测 hypervisor |
|
|
96
|
+
| 固件/BIOS 检测 | 6 | **高** | SMBIOS 字符串匹配 |
|
|
97
|
+
| 硬件指纹 | 10 | 中 | MAC 地址/硬盘序列号检测 |
|
|
98
|
+
| API Hook 枚举 | 5 | 中 | NtQueryInformationProcess |
|
|
99
|
+
| 进程检测 | 15 | **高** | 进程名字符串 (frida, wireshark) |
|
|
100
|
+
| 文件系统检测 | 12 | **高** | 路径字符串 (C:\Program Files\VMware) |
|
|
101
|
+
| 注册表检测 | 8 | **高** | 注册表路径字符串 |
|
|
102
|
+
| 窗口检测 | 8 | **高** | 窗口类名/标题 (x64dbg, OLLYDBG) |
|
|
103
|
+
|
|
104
|
+
> 42/82 条规则 ≥75% 精度 (Anti-VM YARA Library, April 2026)
|
|
105
|
+
|
|
106
|
+
## Sigma 规则编写
|
|
107
|
+
|
|
108
|
+
### 规则模板
|
|
109
|
+
|
|
110
|
+
```yaml
|
|
111
|
+
title: 标题 — 描述检测行为
|
|
112
|
+
id: UUID-v4(生成后不变)
|
|
113
|
+
status: stable/experimental/test/deprecated
|
|
114
|
+
description: 详细描述
|
|
115
|
+
author: 作者
|
|
116
|
+
date: YYYY/MM/DD
|
|
117
|
+
modified: YYYY/MM/DD
|
|
118
|
+
references:
|
|
119
|
+
- https://attack.mitre.org/techniques/TXXXX/
|
|
120
|
+
- 内部引用
|
|
121
|
+
|
|
122
|
+
logsource:
|
|
123
|
+
category: process_creation # Windows 事件 ID 4688
|
|
124
|
+
product: windows
|
|
125
|
+
# 或: service, product: linux, category: sysmon
|
|
126
|
+
|
|
127
|
+
detection:
|
|
128
|
+
# 选择条件
|
|
129
|
+
selection_base:
|
|
130
|
+
EventID: 4688
|
|
131
|
+
selection_malicious:
|
|
132
|
+
CommandLine|contains:
|
|
133
|
+
- 'suspicious_command'
|
|
134
|
+
- 'malware_pattern'
|
|
135
|
+
# 过滤条件
|
|
136
|
+
filter_legitimate:
|
|
137
|
+
ParentImage|endswith: '\explorer.exe'
|
|
138
|
+
|
|
139
|
+
# 最终条件
|
|
140
|
+
condition: selection_base and selection_malicious and not filter_legitimate
|
|
141
|
+
|
|
142
|
+
falsepositives:
|
|
143
|
+
- 合法管理工具
|
|
144
|
+
- 软件开发工具
|
|
145
|
+
level: low/medium/high/critical
|
|
146
|
+
tags:
|
|
147
|
+
- attack.tXXXX
|
|
148
|
+
- attack.tXXXX.XXX
|
|
149
|
+
- detection.malware
|
|
150
|
+
```
|
|
151
|
+
|
|
152
|
+
### PowerShell 恶意行为检测
|
|
153
|
+
|
|
154
|
+
```yaml
|
|
155
|
+
title: Suspicious PowerShell Download and Execute
|
|
156
|
+
id: e3b0c442-98fc-4c78-a0e5-123456789abc
|
|
157
|
+
status: experimental
|
|
158
|
+
description: |
|
|
159
|
+
检测使用 PowerShell 下载并执行 Payload 的行为,
|
|
160
|
+
常见于无文件恶意软件和初始访问阶段。
|
|
161
|
+
logsource:
|
|
162
|
+
category: process_creation
|
|
163
|
+
product: windows
|
|
164
|
+
detection:
|
|
165
|
+
selection:
|
|
166
|
+
Image|endswith:
|
|
167
|
+
- '\powershell.exe'
|
|
168
|
+
- '\pwsh.exe'
|
|
169
|
+
CommandLine|contains|all:
|
|
170
|
+
- 'DownloadString'
|
|
171
|
+
- 'Invoke-Expression' # security-allowlist: SEC004
|
|
172
|
+
condition: selection
|
|
173
|
+
falsepositives:
|
|
174
|
+
- 系统管理员自动化脚本
|
|
175
|
+
- 软件部署工具
|
|
176
|
+
level: high
|
|
177
|
+
tags:
|
|
178
|
+
- attack.t1059.001 # PowerShell
|
|
179
|
+
- attack.t1105 # Ingress Tool Transfer
|
|
180
|
+
```
|
|
181
|
+
|
|
182
|
+
### 勒索软件行为检测
|
|
183
|
+
|
|
184
|
+
```yaml
|
|
185
|
+
title: Potential Ransomware Activity — File Encryption + Shadow Copy Deletion
|
|
186
|
+
id: a1b2c3d4-5678-90ab-cdef-0123456789ab
|
|
187
|
+
status: stable
|
|
188
|
+
description: |
|
|
189
|
+
检测同时出现批量文件写入和卷影副本删除的勒索软件特征行为。
|
|
190
|
+
logsource:
|
|
191
|
+
category: process_creation
|
|
192
|
+
product: windows
|
|
193
|
+
detection:
|
|
194
|
+
sel_vss:
|
|
195
|
+
CommandLine|contains:
|
|
196
|
+
- 'vssadmin delete shadows'
|
|
197
|
+
- 'wmic shadowcopy delete'
|
|
198
|
+
- 'Get-WmiObject Win32_Shadowcopy | Remove-WmiObject'
|
|
199
|
+
sel_bcdedit:
|
|
200
|
+
CommandLine|contains:
|
|
201
|
+
- 'bcdedit /set {default} recoveryenabled No'
|
|
202
|
+
condition: sel_vss or sel_bcdedit
|
|
203
|
+
level: critical
|
|
204
|
+
tags:
|
|
205
|
+
- attack.t1490 # Inhibit System Recovery
|
|
206
|
+
- attack.t1486 # Data Encrypted for Impact
|
|
207
|
+
```
|
|
208
|
+
|
|
209
|
+
## 规则测试
|
|
210
|
+
|
|
211
|
+
```bash
|
|
212
|
+
# YARA 规则验证
|
|
213
|
+
yara -C rule.yara sample_dir/ # 编译规则并扫描
|
|
214
|
+
yara -s rule.yara sample.exe # 显示匹配字符串
|
|
215
|
+
yara --print-meta rule.yara # 打印元数据
|
|
216
|
+
|
|
217
|
+
# Sigma 规则转换
|
|
218
|
+
sigmac -t splunk rule.yml # → Splunk SPL
|
|
219
|
+
sigmac -t elastalert rule.yml # → Elastalert
|
|
220
|
+
sigmac -t es-qs rule.yml # → Elasticsearch Query
|
|
221
|
+
sigma convert -t splunk rule.yml # sigma-cli 新版
|
|
222
|
+
|
|
223
|
+
# 规则质量检查
|
|
224
|
+
# 1. 不会在正常系统触发
|
|
225
|
+
# 2. 不会在常见软件安装/运行中触发
|
|
226
|
+
# 3. 在已知恶意样本上 100% 触发
|
|
227
|
+
|
|
228
|
+
# False Positive 验证
|
|
229
|
+
# 在 Assemblage 良性样本集(92,508 样本)上测试
|
|
230
|
+
```
|
|
231
|
+
|
|
232
|
+
Source: CCCS YARA Standard, SigmaHQ, Anti-VM YARA Library (2026), Joe Sandbox v44
|
|
@@ -0,0 +1,222 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: mobile-reverse
|
|
3
|
+
description: "Authorized Android/iOS application reverse engineering and security testing: APK/IPA analysis, runtime instrumentation (Frida/Objection), SSL-pinning and jailbreak/root-detection bypass, per OWASP MASTG."
|
|
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
|
+
# Mobile Reverse Engineering
|
|
27
|
+
## When to Use
|
|
28
|
+
|
|
29
|
+
- Assessing a mobile app's security posture within an approved scope.
|
|
30
|
+
- Instrumenting runtime behavior or bypassing transport protections in tests.
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
## 适用场景
|
|
34
|
+
|
|
35
|
+
- Android APK 逆向与安全测试
|
|
36
|
+
- iOS IPA 逆向与安全测试
|
|
37
|
+
- 移动应用运行时动态插桩
|
|
38
|
+
- SSL Pinning / Root 检测 / 越狱检测绕过
|
|
39
|
+
- 移动端加密算法提取(AES/RSA/HMAC 密钥)
|
|
40
|
+
- 移动应用渗透测试(OWASP MASTG)
|
|
41
|
+
- 非 Root/越狱环境下的应用测试
|
|
42
|
+
|
|
43
|
+
## 四阶段工作流
|
|
44
|
+
|
|
45
|
+
### Phase 1: 信息收集
|
|
46
|
+
|
|
47
|
+
```text
|
|
48
|
+
Android:
|
|
49
|
+
□ APK 获取(Google Play / APKMirror / adb pull)
|
|
50
|
+
□ Manifest 分析: 权限、导出组件、Intent Filter、backup 标志
|
|
51
|
+
□ androguard: androguard analyze APK → 组件/权限/签名
|
|
52
|
+
□ APKLeaks: 硬编码 API Key / Token / Secret 扫描
|
|
53
|
+
□ 加固检测: 是否加壳(360/腾讯/梆梆/爱加密)
|
|
54
|
+
|
|
55
|
+
iOS:
|
|
56
|
+
□ IPA 获取(App Store / ipatool / Apple Configurator)
|
|
57
|
+
□ 解密 App Store 二进制: frida-ios-dump / Clutch
|
|
58
|
+
□ Info.plist 分析: ATS 配置、URL Scheme、Queries Schemes
|
|
59
|
+
□ class-dump: 导出 ObjC 类结构
|
|
60
|
+
□ 加固检测: 是否使用 Swift/ObjC 混淆
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
### Phase 2: 静态分析
|
|
64
|
+
|
|
65
|
+
```text
|
|
66
|
+
跨平台:
|
|
67
|
+
□ JADX-GUI: APK → Java 源码(Android)
|
|
68
|
+
□ Ghidra / Hopper: .so / Mach-O 反编译
|
|
69
|
+
□ radare2 / Cutter: CLI 快速侦察
|
|
70
|
+
|
|
71
|
+
Android 专项:
|
|
72
|
+
□ apktool d app.apk → smali 代码 + 资源
|
|
73
|
+
□ dex2jar: DEX → JAR → JD-GUI
|
|
74
|
+
□ smali/baksmali: Dalvik 字节码修改
|
|
75
|
+
|
|
76
|
+
iOS 专项:
|
|
77
|
+
□ class-dump: 导出 ObjC 头文件
|
|
78
|
+
□ Swift 符号恢复: swift-demangle
|
|
79
|
+
□ dsymutil: 调试符号提取
|
|
80
|
+
□ otool -L: 查看动态库依赖
|
|
81
|
+
□ jtool2: Mach-O 分析
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
### Phase 3: 动态分析
|
|
85
|
+
|
|
86
|
+
```text
|
|
87
|
+
Frida — 通用动态插桩:
|
|
88
|
+
□ frida-ps -U: 列出设备进程
|
|
89
|
+
□ frida-trace -U -i "open*" com.app: 追踪函数调用
|
|
90
|
+
□ 自定义 Hook 脚本: 修改参数/返回值、调用私有方法
|
|
91
|
+
|
|
92
|
+
Objection — Frida 增强层(无需写脚本):
|
|
93
|
+
□ objection -g "com.app" explore
|
|
94
|
+
□ android root disable / ios jailbreak disable
|
|
95
|
+
□ android sslpinning disable / ios sslpinning disable
|
|
96
|
+
□ android keystore list / ios keychain dump
|
|
97
|
+
□ env / ls / sqlite connect
|
|
98
|
+
|
|
99
|
+
Frida Gadget(免 Root/越狱):
|
|
100
|
+
□ 注入 frida-gadget.so / FridaGadget.dylib 到 APK/IPA
|
|
101
|
+
□ 重新签名 → 安装 → 无需设备权限即可 Hook
|
|
102
|
+
□ objection patchapk --source app.apk(全自动)
|
|
103
|
+
```
|
|
104
|
+
|
|
105
|
+
### Phase 4: 网络分析
|
|
106
|
+
|
|
107
|
+
```text
|
|
108
|
+
□ Burp Suite: 拦截 HTTP/HTTPS,修改请求/响应
|
|
109
|
+
□ mitmproxy: 脚本化代理(Python API)
|
|
110
|
+
□ Wireshark: PCAP 抓包分析
|
|
111
|
+
□ 证书安装: Android 用户证书 → 系统证书(Magisk + MoveCert)
|
|
112
|
+
□ SSL Pinning 绕过: Frida/Objection/Xposed/SSL Kill Switch 2
|
|
113
|
+
□ WebSocket / gRPC 流量分析
|
|
114
|
+
```
|
|
115
|
+
|
|
116
|
+
## 常见绕过速查
|
|
117
|
+
|
|
118
|
+
### SSL Pinning
|
|
119
|
+
|
|
120
|
+
```bash
|
|
121
|
+
# Objection(最简)
|
|
122
|
+
objection -g "com.app" explore
|
|
123
|
+
android sslpinning disable
|
|
124
|
+
|
|
125
|
+
# Frida 通用脚本
|
|
126
|
+
frida -U -l ssl_pinning_bypass.js -f com.app
|
|
127
|
+
|
|
128
|
+
# Xposed(Android)
|
|
129
|
+
TrustMeAlready 模块 → 全局禁用证书校验
|
|
130
|
+
```
|
|
131
|
+
|
|
132
|
+
### Root / 越狱检测
|
|
133
|
+
|
|
134
|
+
```bash
|
|
135
|
+
# Objection
|
|
136
|
+
android root disable
|
|
137
|
+
ios jailbreak disable
|
|
138
|
+
|
|
139
|
+
# Frida 自定义(多层检测)
|
|
140
|
+
Java.perform(function() {
|
|
141
|
+
var RootBeer = Java.use("com.scottyab.rootbeer.RootBeer");
|
|
142
|
+
RootBeer.isRooted.implementation = function() { return false; };
|
|
143
|
+
// 额外绕过: Magisk su 检测、frida-server 检测、/proc/self/maps 检测
|
|
144
|
+
});
|
|
145
|
+
```
|
|
146
|
+
|
|
147
|
+
### 反调试
|
|
148
|
+
|
|
149
|
+
```bash
|
|
150
|
+
# Android
|
|
151
|
+
frida -U -l anti_debug_bypass.js -f com.app
|
|
152
|
+
# 绕过: ptrace(TracerPid)、/proc/self/status、isDebuggerConnected()
|
|
153
|
+
|
|
154
|
+
# iOS
|
|
155
|
+
# 绕过: PT_DENY_ATTACH、sysctl CTL_KERN/KERN_PROC/KERN_PROC_PID
|
|
156
|
+
frida -U -l ios_anti_debug.js -f com.app
|
|
157
|
+
```
|
|
158
|
+
|
|
159
|
+
## 移动端加密提取
|
|
160
|
+
|
|
161
|
+
```javascript
|
|
162
|
+
// Android — Hook Cipher.getInstance 获取密钥+算法
|
|
163
|
+
Java.perform(function() {
|
|
164
|
+
var Cipher = Java.use("javax.crypto.Cipher");
|
|
165
|
+
Cipher.getInstance.overload('java.lang.String').implementation = function(algo) {
|
|
166
|
+
console.log("[Cipher] Algorithm: " + algo);
|
|
167
|
+
return this.getInstance(algo);
|
|
168
|
+
};
|
|
169
|
+
Cipher.init.overload('int', 'java.security.Key').implementation = function(mode, key) {
|
|
170
|
+
console.log("[Cipher] Key: " + bytesToHex(key.getEncoded()));
|
|
171
|
+
return this.init(mode, key);
|
|
172
|
+
};
|
|
173
|
+
});
|
|
174
|
+
|
|
175
|
+
// iOS — Hook CCCrypt
|
|
176
|
+
Interceptor.attach(Module.findExportByName("libcommonCrypto.dylib", "CCCrypt"), {
|
|
177
|
+
onEnter: function(args) {
|
|
178
|
+
console.log("CCCrypt op: " + args[0] + " alg: " + args[1]);
|
|
179
|
+
console.log("Key: " + hexdump(args[3], { length: args[4].toInt32() }));
|
|
180
|
+
}
|
|
181
|
+
});
|
|
182
|
+
```
|
|
183
|
+
|
|
184
|
+
## 工具链
|
|
185
|
+
|
|
186
|
+
| 工具 | 平台 | 用途 |
|
|
187
|
+
|------|:--:|------|
|
|
188
|
+
| JADX-GUI | A | Java 反编译 |
|
|
189
|
+
| apktool | A | APK 解包/重建 |
|
|
190
|
+
| Ghidra | A+I | 多架构反编译 |
|
|
191
|
+
| Hopper | I | iOS 专用反汇编 |
|
|
192
|
+
| Frida | A+I | 动态插桩 |
|
|
193
|
+
| Objection | A+I | Frida REPL 增强 |
|
|
194
|
+
| MobSF | A+I | 自动化 SAST+DAST |
|
|
195
|
+
| class-dump | I | ObjC 类导出 |
|
|
196
|
+
| frida-ios-dump | I | IPA 解密 |
|
|
197
|
+
| jtool2 | I | Mach-O 分析 |
|
|
198
|
+
| Burp Suite | A+I | HTTP 拦截 |
|
|
199
|
+
| mitmproxy | A+I | 脚本化代理 |
|
|
200
|
+
|
|
201
|
+
> A=Android, I=iOS
|
|
202
|
+
|
|
203
|
+
## 参考
|
|
204
|
+
|
|
205
|
+
- `references/frida-objection-deep.md` — Frida + Objection 深度用法
|
|
206
|
+
- `references/ios-reverse-guide.md` — iOS 逆向专项
|
|
207
|
+
- `references/anti-detection-bypass.md` — Root/越狱/反调试/SSL Pinning 绕过
|
|
208
|
+
|
|
209
|
+
|
|
210
|
+
## 任务完成自检(声称完成前 MUST 通过)
|
|
211
|
+
|
|
212
|
+
- [ ] 我是否执行了工作流中的每一步(而不是只阅读)?
|
|
213
|
+
- [ ] 我是否基于 `tool-index` 使用了真实工具路径?
|
|
214
|
+
- [ ] 我是否产出了可复现证据(命令/脚本/截图/报告)?
|
|
215
|
+
- [ ] 我是否完成并回写了 RULES 要求的 Checklist 项?
|
|
216
|
+
|
|
217
|
+
## Limitations
|
|
218
|
+
|
|
219
|
+
- iOS instrumentation requires a jailbroken device or patched build.
|
|
220
|
+
- Bypass techniques break with app-shield vendor updates.
|
|
221
|
+
|
|
222
|
+
> Adapted from [zhaoxuya520/reverse-skill](https://github.com/zhaoxuya520/reverse-skill) (MIT).
|