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,311 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: malware-analysis
|
|
3
|
+
description: "Analyze suspected malware through static, dynamic, and behavioral techniques: IOC extraction, YARA/Sigma rule authoring, sandbox orchestration, and anti-analysis detection."
|
|
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
|
+
# Malware Analysis
|
|
13
|
+
## When to Use
|
|
14
|
+
|
|
15
|
+
- Triaging a suspicious sample in a controlled environment.
|
|
16
|
+
- Producing detections (YARA/Sigma) from observed behavior.
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
## 适用场景
|
|
20
|
+
|
|
21
|
+
- 恶意软件样本分析(PE/ELF/Mach-O/APK/脚本)
|
|
22
|
+
- YARA 规则编写与验证
|
|
23
|
+
- Sigma 行为检测规则生成
|
|
24
|
+
- 沙箱自动化分析编排
|
|
25
|
+
- IOC 提取与威胁情报
|
|
26
|
+
- 反分析技术检测与绕过
|
|
27
|
+
|
|
28
|
+
## 六阶段分析流程
|
|
29
|
+
|
|
30
|
+
### Phase 1: 初步分诊
|
|
31
|
+
|
|
32
|
+
```bash
|
|
33
|
+
# 快速静态检测
|
|
34
|
+
file sample.exe # 文件类型
|
|
35
|
+
strings sample.exe | grep -i "http\|cmd\|powershell\|base64" # 快速 IOCs
|
|
36
|
+
rabin2 -zz sample.exe # 字符串提取 + 交叉引用
|
|
37
|
+
floss sample.exe # 去混淆字符串提取(FireEye)
|
|
38
|
+
|
|
39
|
+
# PE 头部分析
|
|
40
|
+
pecheck sample.exe # PE 结构验证
|
|
41
|
+
pescan sample.exe # 异常检测(节表、入口点)
|
|
42
|
+
diec sample.exe # Detect It Easy(壳/编译器识别)
|
|
43
|
+
|
|
44
|
+
# Hash 查询
|
|
45
|
+
sha256sum sample.exe
|
|
46
|
+
# → VirusTotal / MalwareBazaar / Triage 查询
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
```text
|
|
50
|
+
Triage MUST 清单(Issue #65):
|
|
51
|
+
□ 文件类型:EXE / DLL / SYS / .NET / 脚本(bat|ps1|vba) / 其他
|
|
52
|
+
□ 架构 x86/x64/ARM;查壳(DIE 等)与编译语言线索
|
|
53
|
+
□ DLL/SYS:导入表与导出表并列检查(见 Phase 2 硬门)
|
|
54
|
+
□ .NET:无传统 IAT → 走 dnSpy/IL/元数据等价锚点(见 Phase 2)
|
|
55
|
+
□ 脚本/宏/DLL 专项 P0:见 nonpe-format-cookbook U–AV(E-batch-deobf / E-ps-decode / E-vba-pcode / E-dll-*)
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
### Phase 1b: 脱壳与 IAT 处理(有壳时 · Issue #65)
|
|
59
|
+
|
|
60
|
+
```text
|
|
61
|
+
□ 无壳 / .NET → 跳到 Phase 2
|
|
62
|
+
□ 有壳:尝试脱壳(授权隔离环境)→ 尝试修复 IAT
|
|
63
|
+
- x86:ImportREC(或等价);x64:Scylla(或等价)。禁止 64 位死磕 ImportREC
|
|
64
|
+
□ 【IAT 修复铁律】优先自动/半自动修复;若工具报错或修复后无法运行:
|
|
65
|
+
- 立即终止继续静态 IAT 修复
|
|
66
|
+
- MUST 记录 E-iat-repair-fail(命令、工具、现象)
|
|
67
|
+
- 转入 Phase 3 动态:API 断点(如 bp CreateFile)/ 硬件断点 / 内存搜索抓取导入
|
|
68
|
+
- 这不算跳过导入表:路径已尝试并记 Evidence
|
|
69
|
+
□ 【补丁 6】脱壳+修 IAT 后闪退/蓝屏(疑 CRC/大小自校验):
|
|
70
|
+
- 放弃继续静态修文件;记 E-self-check-crash 或并入 E-iat-repair-fail
|
|
71
|
+
- 转 Phase 3:对 CreateFile / GetFileSize / 哈希相关 API 下断
|
|
72
|
+
□ 用户指令可行性(§0.5):加壳时用户抢跑「先别脱壳先看导入表」→ 说明阻塞 + 请确认;强制则记 quality=unreadable/packed,禁止冒充完成有意义 IAT
|
|
73
|
+
□ 用户要求重做「IAT 修复 / 导入表检查」:MUST 重做被点名步骤(或经确认的前提协商结果),禁止换无关步骤冒充
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
### Phase 2: 静态分析
|
|
77
|
+
|
|
78
|
+
```text
|
|
79
|
+
反汇编/反编译:
|
|
80
|
+
□ IDA Pro / Ghidra: 深度反编译
|
|
81
|
+
□ radare2: CLI 快速分析
|
|
82
|
+
□ x64dbg: Windows GUI 调试器
|
|
83
|
+
|
|
84
|
+
重点分析区域:
|
|
85
|
+
□ 入口点(Entry Point)→ 初始化逻辑
|
|
86
|
+
□ 导入表 → API 用途推断(CreateRemoteThread=注入, CryptEncrypt=勒索)
|
|
87
|
+
**MUST(硬门)**:执行 rabin2 -i / IDA imports / pecheck 等价命令,将导入表分类摘要写入 Evidence(E-imports)后才能进入 Phase 3(除非已记 E-iat-repair-fail 并走动态旁路,见 Phase 1b)
|
|
88
|
+
分类至少覆盖:网络 / 文件 / 加密 / 进程注入 / 注册表 / 其他可疑 API
|
|
89
|
+
解析失败或表为空:仍 MUST 记录失败输出,禁止静默跳过
|
|
90
|
+
**DLL/SYS**:MUST 并列记录导出表 Evidence(E-exports,`rabin2 -E` 或等价)
|
|
91
|
+
**.NET**:无传统 IAT 时 MUST 用 dnSpy/IL/元数据/程序集引用与敏感 API 摘要作为等价锚点,写入 E-imports / E-triage-imports 语义槽
|
|
92
|
+
**干净导入表**:仅基础 DLL、几乎无业务 API → MUST 注明动态加载嫌疑(LoadLibrary/GetProcAddress),SHOULD 转入 Phase 3 抓内存 API;若见哈希解析特征 → E-api-hash(补丁 N)
|
|
93
|
+
**宽字符串(T)**:ASCII strings 无 IOC 时 MUST 再试 UTF-16(strings -el / IDA unicode)
|
|
94
|
+
**签名(F)**:有签名仍 MUST SigCheck;伪造/吊销不降威胁等级
|
|
95
|
+
用户要求「重做导入表检查」:MUST 重做本项(阻塞时先走可行性门闩协商),禁止改换其他步骤冒充完成
|
|
96
|
+
**高危 API 组合(补丁 8)**:表过长时优先输出恶意组合簇(如 FindWindow+WriteProcessMemory+CreateRemoteThread),过滤纯系统基础调用噪声
|
|
97
|
+
□ 资源段 → 嵌入 Payload(.rsrc 节)
|
|
98
|
+
□ 字符串表 → URL/C2/文件路径/Base64 blob
|
|
99
|
+
□ TLS 回调 → 调试器启动前执行
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
### Phase 3: 沙箱动态分析
|
|
103
|
+
|
|
104
|
+
```text
|
|
105
|
+
自动化沙箱:
|
|
106
|
+
□ Joe Sandbox / ANY.RUN / Triage: 商业沙箱
|
|
107
|
+
□ CAPE Sandbox: 开源 + YARA 集成(推荐)
|
|
108
|
+
□ ASD Azul: 开源恶意软件分析平台(2026 新发布)
|
|
109
|
+
□ Cuckoo Sandbox: 经典开源(逐步被 CAPE 取代)
|
|
110
|
+
|
|
111
|
+
调试起手式(补丁 7+10 · MUST 顺序,用户态调试器):
|
|
112
|
+
□ ① TLS 回调断点 → ② 入口点 EP 断点 → ③ 敏感 API 断点 → ④ ExitProcess/退出路径保底断点
|
|
113
|
+
□ ExitProcess 触发时:不急着重启;立即 dump memory,路径写入 Evidence(补丁 10)
|
|
114
|
+
|
|
115
|
+
监控重点:
|
|
116
|
+
□ 进程创建: CreateProcess / ShellExecute
|
|
117
|
+
□ 文件操作: WriteFile → 勒索? DeleteFile → Wiper?
|
|
118
|
+
□ 注册表: Run/RunOnce 持久化
|
|
119
|
+
□ 网络: HTTP/DNS → C2 通信
|
|
120
|
+
□ 内存: VirtualAllocEx → 进程注入
|
|
121
|
+
□ 服务: CreateService → 持久化
|
|
122
|
+
□ IAT 修复失败 / 自校验闪退样本:敏感 API + CreateFile/GetFileSize 断点 / 硬件执行断点 / 内存搜索
|
|
123
|
+
|
|
124
|
+
无行为应急分支(MUST):
|
|
125
|
+
□ 沙箱无行为、秒退或无限休眠 → 检查反调试/反虚拟机(CPUID、计时、环境特征)
|
|
126
|
+
□ 尝试硬件断点绕过、补丁检测点、或换物理机/更高保真环境
|
|
127
|
+
□ 将「无行为 + 条件」写入 Evidence;禁止无条件写成「样本无害」
|
|
128
|
+
|
|
129
|
+
时间盒(补丁 9 · SHOULD 默认,可覆盖):
|
|
130
|
+
□ 静态深挖约 15 分钟无关键路径 → 强制转入本 Phase 动态
|
|
131
|
+
□ 动态单步约 200 条指令无恶意线索 → 强制回静态字符串/交叉引用重锚
|
|
132
|
+
|
|
133
|
+
反调试/混淆旁路(Issue #65 A–T · 详见 reverse-engineering/anti-analysis.md 菜谱):
|
|
134
|
+
□ P0:CPUID / RDTSC / PEB / NtQueryInformationProcess → 记录检测点后 lab 绕过或换环境(E-anti-debug-*)
|
|
135
|
+
□ P0:干净 IAT → API 哈希动态解析(bp GetProcAddress,E-api-hash)
|
|
136
|
+
□ P0:strings 空 → 串解密例程 + 宽字符串 UTF-16(E-string-decrypt / E-wide-strings)
|
|
137
|
+
□ P0:可疑签名 → SigCheck;无效/吊销不降威胁(E-sig-forge)
|
|
138
|
+
□ P1:进程名扫描 / VEH / int3·DR / 重叠节 / Overlay / .rsrc / Delay-Load
|
|
139
|
+
□ H/S 平坦化与不透明谓词 → ollvm-deobfuscation.md(不在此复制长文)
|
|
140
|
+
□ 绕过失败也写 Evidence;禁止反调试退出 = 样本无害
|
|
141
|
+
|
|
142
|
+
非 PE / 脚本 / DLL 补洞(Issue #65 U–AV · 详见 reverse-engineering/references/nonpe-format-cookbook.md):
|
|
143
|
+
□ bat/cmd:SET 拼接还原(U)→ E-batch-deobf;UTF-16 BOM(V);REM/GOTO 淹没(W)
|
|
144
|
+
□ PowerShell:多层 Base64/Gzip(X)逐层 Evidence;IEX 拼接/反转(Z) # security-allowlist: SEC005
|
|
145
|
+
□ VBA:Stomping/P-Code(AA);Chr/Base64(AB);自修改宏(AC)
|
|
146
|
+
□ DLL:TLS+DllMain(AJ);导出异常/无导出(AK/AL);Delay-Load 见 A–T R(AM);侧加载/反射(AO/AP)
|
|
147
|
+
□ JS/APK/驱动:路由 js-reverse / apk-reverse / kernel-driver-reverse + cookbook,不在此复制长文
|
|
148
|
+
```
|
|
149
|
+
|
|
150
|
+
### Phase 4: YARA 规则编写
|
|
151
|
+
|
|
152
|
+
```yara
|
|
153
|
+
// 规则结构
|
|
154
|
+
rule MalwareFamily_Example {
|
|
155
|
+
meta:
|
|
156
|
+
description = "检测 Example 恶意软件家族"
|
|
157
|
+
author = "分析者"
|
|
158
|
+
date = "2026-05"
|
|
159
|
+
severity = "high"
|
|
160
|
+
hash = "d41d8cd98f00b204e9800998ecf8427e"
|
|
161
|
+
mitre_id = "T1055" // Process Injection
|
|
162
|
+
|
|
163
|
+
strings:
|
|
164
|
+
// 字符串匹配
|
|
165
|
+
$str1 = "C2_SERVER_URL" ascii wide
|
|
166
|
+
$str2 = "payload.dat" ascii
|
|
167
|
+
|
|
168
|
+
// 十六进制匹配
|
|
169
|
+
$hex1 = { 8B 45 ?? 50 FF 15 [4] 85 C0 }
|
|
170
|
+
// 操作码序列: mov eax, [ebp-?]; push eax; call [import]; test eax, eax
|
|
171
|
+
|
|
172
|
+
// 正则匹配
|
|
173
|
+
$re1 = /https?:\/\/[a-z0-9.-]+\/[a-z]{3,8}\.php/ ascii
|
|
174
|
+
|
|
175
|
+
condition:
|
|
176
|
+
// 组合条件
|
|
177
|
+
uint16(0) == 0x5A4D and // MZ 头
|
|
178
|
+
filesize < 500KB and
|
|
179
|
+
(2 of ($str*) or $hex1)
|
|
180
|
+
}
|
|
181
|
+
```
|
|
182
|
+
|
|
183
|
+
### Phase 5: Sigma 规则生成
|
|
184
|
+
|
|
185
|
+
```yaml
|
|
186
|
+
# 行为检测规则
|
|
187
|
+
title: Suspicious Process Injection via CreateRemoteThread
|
|
188
|
+
id: 5a3d2c1b-1234-5678-9abc-def012345678
|
|
189
|
+
status: experimental
|
|
190
|
+
description: 检测使用 CreateRemoteThread 的进程注入行为
|
|
191
|
+
author: 分析者
|
|
192
|
+
date: 2026/05/25
|
|
193
|
+
tags:
|
|
194
|
+
- attack.t1055 # Process Injection
|
|
195
|
+
- attack.t1055.001 # DLL Injection
|
|
196
|
+
logsource:
|
|
197
|
+
category: process_creation
|
|
198
|
+
product: windows
|
|
199
|
+
detection:
|
|
200
|
+
selection:
|
|
201
|
+
Image|endswith: '\powershell.exe'
|
|
202
|
+
CommandLine|contains:
|
|
203
|
+
- 'CreateRemoteThread'
|
|
204
|
+
- 'VirtualAllocEx'
|
|
205
|
+
- 'WriteProcessMemory'
|
|
206
|
+
condition: selection
|
|
207
|
+
falsepositives:
|
|
208
|
+
- 合法的调试工具
|
|
209
|
+
level: high
|
|
210
|
+
```
|
|
211
|
+
|
|
212
|
+
### Phase 6: IOC 提取与情报
|
|
213
|
+
|
|
214
|
+
```text
|
|
215
|
+
IOC 类型分类:
|
|
216
|
+
□ 网络 IOC:
|
|
217
|
+
- IP: C2 地址(注意时效性)
|
|
218
|
+
- Domain: DGA 算法生成的域名(rsnkfda.com, xpqmje.net)
|
|
219
|
+
- URL: Payload 托管地址
|
|
220
|
+
- User-Agent: 自定义 UA 字符串
|
|
221
|
+
|
|
222
|
+
□ 主机 IOC:
|
|
223
|
+
- 文件路径: %APPDATA%\Microsoft\Crypto\RSA\*.dat
|
|
224
|
+
- 注册表: HKCU\Software\Microsoft\Windows\CurrentVersion\Run\
|
|
225
|
+
- Mutex: Global\{GUID} 互斥体名称
|
|
226
|
+
- 服务名: 伪装成系统服务的名称
|
|
227
|
+
|
|
228
|
+
□ 行为 IOC:
|
|
229
|
+
- MITRE ATT&CK 技术 ID (T1055, T1003, T1571...)
|
|
230
|
+
- Sigma 规则 → SIEM 集成
|
|
231
|
+
- YARA 规则 → 端点检测
|
|
232
|
+
|
|
233
|
+
□ 静态 IOC:
|
|
234
|
+
- 编译时间戳(可伪造)
|
|
235
|
+
- PDB 路径(含开发者信息)
|
|
236
|
+
- 节名异常(非标准 .text/.data)
|
|
237
|
+
- 导入表异常组合(如勒索软件 CryptEncrypt + DeleteShadowCopies)
|
|
238
|
+
```
|
|
239
|
+
|
|
240
|
+
## 反分析技术速查
|
|
241
|
+
|
|
242
|
+
| 技术 | 检测方法 | YARA 特征 |
|
|
243
|
+
|------|---------|----------|
|
|
244
|
+
| 虚拟机检测 | WMI Win32_BIOS/VideoController/Processor | `Win32_` 字符串 + 特定厂商名 |
|
|
245
|
+
| 沙箱检测 | 磁盘 < 60GB, RAM < 2GB, 单核 CPU | GlobalMemoryStatusEx 调用模式 |
|
|
246
|
+
| 调试器检测 | IsDebuggerPresent, CheckRemoteDebuggerPresent | PEB.BeingDebugged 偏移访问 |
|
|
247
|
+
| 定时逃逸 | Sleep(300000) 后执行恶意行为 | NtDelayExecution 长参数 |
|
|
248
|
+
| 地理位置检测 | 检查键盘布局/时区 → 排除 CIS 国家 | GetKeyboardLayoutList 调用 |
|
|
249
|
+
| 父进程检测 | explorer.exe vs cmd.exe | 进程名字符串比较 |
|
|
250
|
+
| API 直接 syscall | 绕过 EDR hook | syscall 指令 + SSN 解析 |
|
|
251
|
+
|
|
252
|
+
## 多 Agent 自动化分析 (SentinelHive 架构)
|
|
253
|
+
|
|
254
|
+
```text
|
|
255
|
+
┌─────────────────────────────────────────────────┐
|
|
256
|
+
│ Hive Director │
|
|
257
|
+
│ (Claude Opus 编排 + 仲裁) │
|
|
258
|
+
└──────┬──────┬──────┬──────┬──────┬───────┘
|
|
259
|
+
│ │ │ │ │
|
|
260
|
+
┌───┘ ┌───┘ ┌───┘ ┌───┘ ┌───┘
|
|
261
|
+
▼ ▼ ▼ ▼ ▼ ▼
|
|
262
|
+
Triage RE Behav Intel Detect Remed
|
|
263
|
+
快速 反编译 行为 威胁 规则 修复
|
|
264
|
+
分诊 静态 动态 情报 YARA 方案
|
|
265
|
+
Sigma
|
|
266
|
+
```
|
|
267
|
+
|
|
268
|
+
## 工具链
|
|
269
|
+
|
|
270
|
+
| 工具 | 用途 | 获取 |
|
|
271
|
+
|------|------|------|
|
|
272
|
+
| Ghidra / IDA Pro | 深度反编译 | ghidra-sre.org |
|
|
273
|
+
| CAPE Sandbox | 开源恶意软件沙箱 | GitHub: kevoreilly/CAPEv2 |
|
|
274
|
+
| ASD Azul | 大规模自动化分析 | GitHub: ASD |
|
|
275
|
+
| YARA | 模式匹配规则引擎 | `pip install yara-python` |
|
|
276
|
+
| Sigma | SIEM 行为检测规则 | GitHub: SigmaHQ/sigma |
|
|
277
|
+
| FLOSS | 去混淆字符串提取 | `pip install flare-floss` |
|
|
278
|
+
| Detect It Easy | 壳/编译器检测 | GitHub: horsicq/Detect-It-Easy |
|
|
279
|
+
| pe-sieve | 进程内存扫描 | GitHub: hasherezade/pe-sieve |
|
|
280
|
+
| VirusTotal API | 多引擎扫描 | virustotal.com |
|
|
281
|
+
| MalwareBazaar | 恶意软件样本库 | bazaar.abuse.ch |
|
|
282
|
+
|
|
283
|
+
## 参考
|
|
284
|
+
|
|
285
|
+
- `references/yara-sigma-rules.md` — YARA + Sigma 编写方法论
|
|
286
|
+
- `references/sandbox-orchestration.md` — 沙箱编排与自动化
|
|
287
|
+
- `references/anti-analysis-techniques.md` — 94 种反分析技术检测
|
|
288
|
+
- `../reverse-engineering/references/re-agent-workflow.md` — IAT 铁律与六阶段门闩(Issue #65)
|
|
289
|
+
- `../reverse-engineering/anti-analysis.md` — Agent 响应菜谱 A–T(反调试/混淆旁路)
|
|
290
|
+
- `../reverse-engineering/references/nonpe-format-cookbook.md` — 非 PE/多格式菜谱 U–AV(脚本/宏/JS/驱动/DLL/Android)
|
|
291
|
+
- `../reverse-engineering/references/ollvm-deobfuscation.md` — 平坦化/不透明谓词(H/S)
|
|
292
|
+
|
|
293
|
+
## 任务完成自检(声称完成前 MUST 通过)
|
|
294
|
+
|
|
295
|
+
- [ ] 我是否执行了工作流中的每一步(而不是只阅读)?
|
|
296
|
+
- [ ] 导入表 MUST 检查是否已执行并写入 Evidence(E-imports 或 .NET 等价锚点)?DLL/SYS 是否含 E-exports?
|
|
297
|
+
- [ ] 若 IAT 修复失败或自校验闪退:是否记录 E-iat-repair-fail / E-self-check-crash 并转入动态?
|
|
298
|
+
- [ ] 重做请求是否回到被点名步骤或经确认的前提协商?阻塞时是否说明+请确认而非偷换步骤?
|
|
299
|
+
- [ ] 动态是否按 TLS→EP→敏感 API→ExitProcess 保底顺序预置断点?时间盒/高危 API 组合是否按旁路处理?
|
|
300
|
+
- [ ] 反调试/混淆(A–T)是否按 anti-analysis 菜谱记录 Evidence?签名无效是否未错误降级威胁?
|
|
301
|
+
- [ ] 脚本/宏/DLL 等非 PE 类型是否按 U–AV cookbook 记录对应 Evidence(如 E-batch-deobf / E-ps-decode / E-vba-pcode / E-dll-*)?
|
|
302
|
+
- [ ] 我是否基于 `tool-index` 使用了真实工具路径?
|
|
303
|
+
- [ ] 我是否产出了可复现证据(命令/脚本/截图/报告)?
|
|
304
|
+
- [ ] 我是否完成并回写了 RULES 要求的 Checklist 项?
|
|
305
|
+
|
|
306
|
+
## Limitations
|
|
307
|
+
|
|
308
|
+
- Never detonate live samples outside isolated, disposable VMs.
|
|
309
|
+
- Anti-VM techniques can stall or mislead automated sandboxes.
|
|
310
|
+
|
|
311
|
+
> Adapted from [zhaoxuya520/reverse-skill](https://github.com/zhaoxuya520/reverse-skill) (MIT).
|
|
@@ -0,0 +1,205 @@
|
|
|
1
|
+
# 反分析技术检测
|
|
2
|
+
|
|
3
|
+
> 94 种反分析技术,9 个类别,82 条已验证 YARA 规则
|
|
4
|
+
> Source: Anti-VM YARA Library (Journal of Cybersecurity and Privacy, April 2026)
|
|
5
|
+
|
|
6
|
+
## 九类反分析技术
|
|
7
|
+
|
|
8
|
+
### 1. 定时检测(12 种)
|
|
9
|
+
|
|
10
|
+
```text
|
|
11
|
+
技术原理: 恶意代码通过长时间睡眠等待,使沙箱超时退出。
|
|
12
|
+
|
|
13
|
+
常见实现:
|
|
14
|
+
□ Sleep(300000) // 5 分钟睡眠
|
|
15
|
+
□ NtDelayExecution(60000) // 直接 syscall
|
|
16
|
+
□ GetTickCount 循环等待
|
|
17
|
+
□ QueryPerformanceCounter 精确延时
|
|
18
|
+
□ SetTimer + 回调执行恶意代码
|
|
19
|
+
□ WaitForSingleObject 等待内核对象
|
|
20
|
+
|
|
21
|
+
YARA 检测难度: 低(时序行为需动态分析)
|
|
22
|
+
绕过方法: CAPE sleep_skip、加速时间流逝
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
### 2. CPU 指纹检测(8 种)
|
|
26
|
+
|
|
27
|
+
```text
|
|
28
|
+
□ CPUID 指令 → hypervisor 签名
|
|
29
|
+
- hv: "VMwareVMware", "VBoxVBoxVBox"
|
|
30
|
+
- leaf 0x40000000 → Hypervisor Vendor
|
|
31
|
+
|
|
32
|
+
□ 核心数检测: < 2 核心 → 可能是沙箱
|
|
33
|
+
□ AMD-V / Intel VT-x: 沙箱通常启用硬件虚拟化
|
|
34
|
+
|
|
35
|
+
YARA 检测: 中(CPUID 指令序列可被静态识别)
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
### 3. 固件/BIOS 检测(6 种)★ YARA 强项
|
|
39
|
+
|
|
40
|
+
```text
|
|
41
|
+
□ SMBIOS 字符串:
|
|
42
|
+
- Manufacturer: "VMware, Inc.", "innotek GmbH"
|
|
43
|
+
- Product: "VirtualBox", "KVM", "QEMU"
|
|
44
|
+
- Serial: "0"(默认序列号)
|
|
45
|
+
|
|
46
|
+
□ ACPI 表: WAET / VRTUAL / BOCHS 签名
|
|
47
|
+
|
|
48
|
+
YARA 检测: 高(87% 精度) — 字符串字面量存在于二进制中
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
### 4. 硬件指纹(10 种)
|
|
52
|
+
|
|
53
|
+
```text
|
|
54
|
+
□ MAC 地址 OUI:
|
|
55
|
+
- VMware: 00:0C:29, 00:50:56, 00:05:69
|
|
56
|
+
- VirtualBox: 08:00:27
|
|
57
|
+
- Hyper-V: 00:15:5D
|
|
58
|
+
|
|
59
|
+
□ 磁盘序列号: "VBOX HARDDISK", "VMware Virtual S"
|
|
60
|
+
□ 显卡名称: "VMware SVGA II", "VirtualBox Graphics Adapter"
|
|
61
|
+
|
|
62
|
+
GetAdapterInfo / NtQuerySystemInformation → 读取硬件信息
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
### 5. API Hook 枚举(5 种)
|
|
66
|
+
|
|
67
|
+
```text
|
|
68
|
+
□ 检测 EDR/AV 的 ntdll.dll hook
|
|
69
|
+
- 读取 ntdll.dll 的磁盘副本 → 对比内存中的版本
|
|
70
|
+
- 如果 syscall stub 被修改 → 有 hook
|
|
71
|
+
|
|
72
|
+
□ 检测 sandbox hook
|
|
73
|
+
- LoadLibrary → 对比函数序言
|
|
74
|
+
- WriteProcessMemory → 检测 inline hook
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
### 6. 进程检测(15 种)★ YARA 强项
|
|
78
|
+
|
|
79
|
+
```text
|
|
80
|
+
□ 安全工具进程名检查:
|
|
81
|
+
- "wireshark.exe", "procmon.exe", "processhacker.exe"
|
|
82
|
+
- "frida-server", "magiskd", "x64dbg.exe"
|
|
83
|
+
- "ida64.exe", "ollydbg.exe", "windbg.exe"
|
|
84
|
+
|
|
85
|
+
□ 沙箱 Agent 检测:
|
|
86
|
+
- "python.exe" (CAPE agent)
|
|
87
|
+
- "VBoxTray.exe", "VBoxService.exe"
|
|
88
|
+
|
|
89
|
+
CreateToolhelp32Snapshot → Process32First/Next 遍历
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
### 7. 文件系统检测(12 种)★ YARA 强项
|
|
93
|
+
|
|
94
|
+
```text
|
|
95
|
+
□ 沙箱/VM 文件路径:
|
|
96
|
+
- C:\Program Files\VMware\
|
|
97
|
+
- C:\Program Files\Oracle\VirtualBox\
|
|
98
|
+
- C:\agent\agent.pyw (CAPE)
|
|
99
|
+
- /usr/bin/qemu-ga
|
|
100
|
+
|
|
101
|
+
□ 虚拟设备文件:
|
|
102
|
+
- \\.\VBoxMiniRdrDN
|
|
103
|
+
- \\.\HGFS (VMware Shared Folders)
|
|
104
|
+
- \\.\pipe\vbox*
|
|
105
|
+
|
|
106
|
+
YARA 检测: 高 — 路径字符串明确
|
|
107
|
+
```
|
|
108
|
+
|
|
109
|
+
### 8. 注册表检测(8 种)★ YARA 强项
|
|
110
|
+
|
|
111
|
+
```text
|
|
112
|
+
□ VM 相关注册表键:
|
|
113
|
+
- HKLM\SOFTWARE\VMware, Inc.\
|
|
114
|
+
- HKLM\HARDWARE\ACPI\DSDT\VBOX__
|
|
115
|
+
- HKLM\SYSTEM\ControlSet001\Services\VBoxSF
|
|
116
|
+
|
|
117
|
+
□ 沙箱检测:
|
|
118
|
+
RegOpenKeyEx / RegQueryValueEx 组合检测
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
### 9. 窗口检测(8 种)★ YARA 强项
|
|
122
|
+
|
|
123
|
+
```text
|
|
124
|
+
□ 调试器窗口:
|
|
125
|
+
- "x64dbg", "OllyDbg", "IDA", "WinDbg"
|
|
126
|
+
- "Wireshark", "Process Hacker"
|
|
127
|
+
|
|
128
|
+
□ 沙箱窗口:
|
|
129
|
+
FindWindow → 枚举顶级窗口 → 匹配已知安全工具窗口标题
|
|
130
|
+
|
|
131
|
+
YARA 检测: 高 — 窗口标题字符串存在于内存/二进制
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
## 42 条高精度 YARA 规则(精度 ≥75%)
|
|
135
|
+
|
|
136
|
+
以下类别在 YARA 中检测效果最好:
|
|
137
|
+
|
|
138
|
+
| 类别 | 规则数 | 平均精度 | 典型 FP 来源 |
|
|
139
|
+
|------|:--:|:--:|------|
|
|
140
|
+
| 固件/BIOS | 5 | 87% | 虚拟机软件安装包 |
|
|
141
|
+
| 进程检测 | 12 | 82% | 安全工具本身 |
|
|
142
|
+
| 文件系统 | 8 | 79% | 虚拟机管理工具 |
|
|
143
|
+
| 注册表 | 6 | 78% | 无 |
|
|
144
|
+
| 窗口检测 | 4 | 76% | 安全/调试工具 |
|
|
145
|
+
| API Hook | 3 | 72% | 防病毒软件 |
|
|
146
|
+
| 硬件指纹 | 2 | 68% | 虚拟化软件 |
|
|
147
|
+
| 定时检测 | 1 | 45% | 游戏/多媒体软件 |
|
|
148
|
+
|
|
149
|
+
## 高级反分析技术
|
|
150
|
+
|
|
151
|
+
### 定时逃逸(Beyond Simple Sleep)
|
|
152
|
+
|
|
153
|
+
```c
|
|
154
|
+
// 检测时间加速
|
|
155
|
+
LARGE_INTEGER freq, start, end;
|
|
156
|
+
QueryPerformanceFrequency(&freq);
|
|
157
|
+
QueryPerformanceCounter(&start);
|
|
158
|
+
Sleep(1000);
|
|
159
|
+
QueryPerformanceCounter(&end);
|
|
160
|
+
double elapsed = (double)(end.QuadPart - start.QuadPart) / freq.QuadPart;
|
|
161
|
+
if (elapsed != 1.0) exit(); // 时间被加速 → 沙箱
|
|
162
|
+
```
|
|
163
|
+
|
|
164
|
+
### 基于异常的检测
|
|
165
|
+
|
|
166
|
+
```c
|
|
167
|
+
// 触发除零异常 → 检查 SEH 是否被 Hook
|
|
168
|
+
__try {
|
|
169
|
+
volatile int x = 0;
|
|
170
|
+
volatile int y = 1 / x;
|
|
171
|
+
} __except(EXCEPTION_EXECUTE_HANDLER) {
|
|
172
|
+
// 正常: 异常被捕获
|
|
173
|
+
// 不正常: EDR 的 vectored exception handler 先处理了 → 说明有 hook
|
|
174
|
+
}
|
|
175
|
+
```
|
|
176
|
+
|
|
177
|
+
### Return Address 完整性检查
|
|
178
|
+
|
|
179
|
+
```asm
|
|
180
|
+
; 调用前保存返回地址预期值
|
|
181
|
+
call [ntdll.NtAllocateVirtualMemory]
|
|
182
|
+
; 返回后检查栈上返回地址是否被篡改
|
|
183
|
+
cmp [rsp], expected_return_address
|
|
184
|
+
jne edr_detected
|
|
185
|
+
```
|
|
186
|
+
|
|
187
|
+
## 最佳实践
|
|
188
|
+
|
|
189
|
+
1. **分层检测**: 静态 YARA + 动态行为 + 签名 (不要只依赖一种)
|
|
190
|
+
2. **定期更新规则**: 新 VM/沙箱版本需要新检测规则
|
|
191
|
+
3. **FP 验证**: 每条规则必须在良性样本集上验证(推荐: Assemblage 92,508 样本)
|
|
192
|
+
4. **组合条件**: 单一检测可能误报,多条件组合提高精度
|
|
193
|
+
5. **关注字符串模式**: 固件/BIOS/文件/注册表/窗口检测在 YARA 中最有效
|
|
194
|
+
|
|
195
|
+
Source: "Automating the Detection of Evasive Windows Malware" (April 2026), CAPE docs, Joe Sandbox Analysis Reports
|
|
196
|
+
|
|
197
|
+
---
|
|
198
|
+
|
|
199
|
+
## Agent 动作索引(Issue #65)
|
|
200
|
+
|
|
201
|
+
检测分类见上文九类;**触发后 agent 怎么做** 的 A–T 全表与 Evidence 标签见:
|
|
202
|
+
|
|
203
|
+
`skills/reverse-engineering/anti-analysis.md` → **Agent 响应菜谱 A–T**
|
|
204
|
+
|
|
205
|
+
主路径速查:`skills/reverse-engineering/references/re-agent-workflow.md` §3.3
|