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,145 @@
|
|
|
1
|
+
# .NET 混淆器脱混淆详解
|
|
2
|
+
|
|
3
|
+
主流 .NET 混淆器的识别、脱壳、anti-tamper 绕过。核心工具:**de4dot**(自动识别大多数壳)+ **dnSpyEx**(手动 patch)+ **dnlib**(脚本化)。
|
|
4
|
+
|
|
5
|
+
## 总决策表
|
|
6
|
+
|
|
7
|
+
| 混淆器 | de4dot type | 典型特征 | 自动脱壳 | 手动要点 |
|
|
8
|
+
|--------|-------------|---------|---------|---------|
|
|
9
|
+
| ConfuserEx 1.x/2.x | `cfze` | anti-tamper、控制流变形、字符串加密、反调试 | ✅ 多数自动 | 新版需先 patch anti-tamper |
|
|
10
|
+
| ConfuserEx 3.x / 私改 | `cfze` | 同上 + 自定义 protector | ⚠️ 部分 | dump 运行时 / dnlib |
|
|
11
|
+
| SmartAssembly | `sa` | 字符串编码、资源压缩、方法调用隐藏 | ✅ 自动 | 资源解压 |
|
|
12
|
+
| Babel.NET | `babel` | 方法体加密、控制流、字符串 | ✅ 自动 | — |
|
|
13
|
+
| Eazfuscator.NET | `eaz` | 字符串/资源加密、表达式混淆 | ⚠️ 部分 | 字符串解密器 |
|
|
14
|
+
| .NET Reactor | `reactor` | necrobit (代码段加密) + anti-tamper | ⚠️ 新版难 | dump + 重建 metadata |
|
|
15
|
+
| Themida .NET | — | 外壳 + 虚拟化 | ❌ de4dot 不行 | dump 内存,走 native 思路 |
|
|
16
|
+
| Agile.NET / CliSecure | `agile` | 方法体加密 | ✅ 自动 | — |
|
|
17
|
+
|
|
18
|
+
## de4dot 标准用法
|
|
19
|
+
|
|
20
|
+
```powershell
|
|
21
|
+
# 自动识别(多数情况够用)
|
|
22
|
+
de4dot target.exe -o target-clean.exe
|
|
23
|
+
|
|
24
|
+
# 显式指定 type(自动识别失败)
|
|
25
|
+
de4dot --type cfze target.exe -o target-clean.exe
|
|
26
|
+
|
|
27
|
+
# 先探测壳类型
|
|
28
|
+
de4dot --detect target.exe
|
|
29
|
+
|
|
30
|
+
# 批量
|
|
31
|
+
de4dot *.exe
|
|
32
|
+
|
|
33
|
+
# 只解字符串,不动控制流(最小干预)
|
|
34
|
+
de4dot --strtyp delegate --strtok METHOD_TOKEN target.exe
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
de4dot 的 `--strtyp` / `strtok` 模式:只解字符串解密器(指定解密方法 token),保留原控制流。适合"只想看明文字符串但不想碰 anti-tamper"的场景。
|
|
38
|
+
|
|
39
|
+
---
|
|
40
|
+
|
|
41
|
+
## ConfuserEx(最常见)
|
|
42
|
+
|
|
43
|
+
### 特征识别
|
|
44
|
+
|
|
45
|
+
- 入口模块 `<module>` 类带 `[MethodImpl(NoInlining)]` 的 anti-tamper 检查
|
|
46
|
+
- 大量 `Dictionary<string, T>` 的字符串解密器调用
|
|
47
|
+
- 控制流平坦化(switch dispatch + state 变量)
|
|
48
|
+
- 资源里嵌 `.cmp` 压缩资源
|
|
49
|
+
- dnSpyEx C# 视图:类名/方法名乱码(`\uXXXX` 或无意义字符),方法体里满屏 `int num = ...; switch(num)`
|
|
50
|
+
|
|
51
|
+
### 脱壳流程
|
|
52
|
+
|
|
53
|
+
```powershell
|
|
54
|
+
# 1. 标准脱壳
|
|
55
|
+
de4dot target.exe -o target-clean.exe
|
|
56
|
+
|
|
57
|
+
# 2. 如果 de4dot 报 "unknown" 或脱壳后打不开 → 新版/私改 ConfuserEx
|
|
58
|
+
# 先确认 anti-tamper:
|
|
59
|
+
dnSpyEx 打开 → 找 Module .cctor 或 Main 里的完整性校验
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
### anti-tamper 绕过(新版 ConfuserEx 常见)
|
|
63
|
+
|
|
64
|
+
ConfuserEx 的 `anti tamper` 会在运行时校验方法体哈希,被改就崩。de4dot 通常能处理旧版,新版需手动:
|
|
65
|
+
|
|
66
|
+
```text
|
|
67
|
+
方法 A — dnSpyEx 直接 patch 校验函数:
|
|
68
|
+
1. 找 anti-tamper 校验方法(通常在 <module> 的静态构造里调用)
|
|
69
|
+
2. IL 编辑:把校验方法体改成 ret(直接返回)
|
|
70
|
+
3. 保存 → 再喂给 de4dot
|
|
71
|
+
|
|
72
|
+
方法 B — 运行时 dump:
|
|
73
|
+
1. 用 MegaDumper / ExtremeDumper 跑起来 dump 内存中的 assembly
|
|
74
|
+
2. dump 出来的已经解密,再用 de4dot 清理残留
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
### 控制流还原后
|
|
78
|
+
|
|
79
|
+
de4dot 会把平坦化的 switch dispatch 还原成正常 if/while。如果没完全还原(看到残留 state 机),可再跑一次 de4dot 或手动跟 IL。
|
|
80
|
+
|
|
81
|
+
---
|
|
82
|
+
|
|
83
|
+
## SmartAssembly
|
|
84
|
+
|
|
85
|
+
```powershell
|
|
86
|
+
de4dot --type sa target.exe -o target-clean.exe
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
特征:
|
|
90
|
+
- 字符串用 `SmartAssembly.Runtime.Strong` 系列编码
|
|
91
|
+
- 资源压缩(`{assembly}.Resources`)
|
|
92
|
+
- 方法调用隐藏(`ProcessCaller` / 间接 call)
|
|
93
|
+
|
|
94
|
+
de4dot 对 SmartAssembly 兼容性最好,基本一键搞定。
|
|
95
|
+
|
|
96
|
+
---
|
|
97
|
+
|
|
98
|
+
## .NET Reactor(necrobit)
|
|
99
|
+
|
|
100
|
+
`.NET Reactor` 的 **necrobit** 把真实方法体加密存到资源,运行时解密注入,原方法体是空壳。de4dot 对老版本有效,新版本(4.x+)常失败。
|
|
101
|
+
|
|
102
|
+
```text
|
|
103
|
+
当 de4dot 失败时:
|
|
104
|
+
1. 让程序跑起来(dotnet target.exe 或直接双击)
|
|
105
|
+
2. MegaDumper / ExtremeDumper dump 进程内存 → 导出解密后的 assembly
|
|
106
|
+
3. 用 de4dot 清理 dump 产物的残留混淆
|
|
107
|
+
4. 如果 metadata 损坏,用 dnlib 重建(见 common-workflow.md)
|
|
108
|
+
```
|
|
109
|
+
|
|
110
|
+
---
|
|
111
|
+
|
|
112
|
+
## 字符串解密器手动提取
|
|
113
|
+
|
|
114
|
+
混淆器把字符串加密,运行时调用解密方法还原。de4dot 多数能自动识别解密器,识别失败时手动:
|
|
115
|
+
|
|
116
|
+
```text
|
|
117
|
+
1. dnSpyEx 找到解密方法(通常签名固定:static string Decrypt(int) 或 Decrypt(string, int))
|
|
118
|
+
- 特征:被大量调用、参数是数字常量、返回 string
|
|
119
|
+
2. 记下方法 token(如 0x06000012)
|
|
120
|
+
3. de4dot 指定解密器:
|
|
121
|
+
de4dot --strtyp delegate --strtok 0x06000012 target.exe -o target-clean.exe
|
|
122
|
+
```
|
|
123
|
+
|
|
124
|
+
如果连解密方法本身也被混淆(控制流平坦化),需要先脱控制流再定位解密器。
|
|
125
|
+
|
|
126
|
+
## anti-debug 常见手法
|
|
127
|
+
|
|
128
|
+
| 手法 | 位置 | 绕过 |
|
|
129
|
+
|------|------|------|
|
|
130
|
+
| `Debugger.IsAttached` 检查 | 任意方法 | IL 改 `ldc.i4.0; ret` 或 patch getter |
|
|
131
|
+
| `Debugger.IsLogging` | — | 同上 |
|
|
132
|
+
| 时间检测 (`DateTime.Now` 差值) | 方法入口 | patch 掉差值比较 |
|
|
133
|
+
| `CheckRemoteDebuggerPresent` P/Invoke | — | nop 掉调用 |
|
|
134
|
+
| 异常驱动控制流(try/catch 路径选择)| 主逻辑 | 不能简单 nop,要分析 catch 块真实路径 |
|
|
135
|
+
|
|
136
|
+
> .NET anti-debug 比 native 简单 —— 多数是托管 API 调用,dnSpyEx IL 改一行即可。
|
|
137
|
+
|
|
138
|
+
## de4dot 失败时的退路
|
|
139
|
+
|
|
140
|
+
1. **de4dot --detect** 看识别结果,对照上表
|
|
141
|
+
2. **运行时 dump**(MegaDumper / ExtremeDumper / Process Hacker 导出模块)
|
|
142
|
+
3. **dnlib 脚本** 手动解(见 common-workflow.md 的 dnlib 段)
|
|
143
|
+
4. **动态优先**:跑起来在解密点下断,直接看明文,不脱壳也能拿情报
|
|
144
|
+
|
|
145
|
+
社区参考:Washi 博客《misconceptions-about-dotnet》(IL 分析的常见误区)、看雪 .NET 逆向版块、Guided Hacking《Top 5 .NET RE Tools》。
|
|
@@ -0,0 +1,164 @@
|
|
|
1
|
+
# 红队 Sharp* 工具分析 & 工具安装矩阵 & dnSpy MCP
|
|
2
|
+
|
|
3
|
+
## 红队 Sharp* 工具分析
|
|
4
|
+
|
|
5
|
+
红队工具大量用 C# 写(Sharp* 系列),逆向它们是常见场景:理解检测逻辑、改特征、提取内嵌配置。
|
|
6
|
+
|
|
7
|
+
### 常见 Sharp* 工具速查
|
|
8
|
+
|
|
9
|
+
| 工具 | 功能 | 逆向关注点 |
|
|
10
|
+
|------|------|-----------|
|
|
11
|
+
| **Rubeus** | Kerberos 攻击(AS-REP roast / Kerberoast / S4U / pass-the-ticket)| Rubeus 工程结构固定,找 `Interop.*` P/Invoke 段看 native 调用 |
|
|
12
|
+
| **SharpHound** | BloodHound 数据采集器 | LDAP 查询逻辑、采集的属性集合 |
|
|
13
|
+
| **SharpShell / SharpWS** | 远程执行、横向 | WMI / WinRM 调用、命令混淆 |
|
|
14
|
+
| **Seatbelt** | 信息收集 | 收集项清单、判断逻辑 |
|
|
15
|
+
| **SharpRoast** | Kerberoasting | 票据请求/解析 |
|
|
16
|
+
| **Inveigh / SharpSploit** | 中间人 / 通用利用框架 | 反射加载、API 调用链 |
|
|
17
|
+
|
|
18
|
+
### 通用分析套路
|
|
19
|
+
|
|
20
|
+
```text
|
|
21
|
+
1. dnSpyEx 打开(通常没混淆,少数团队会加 ConfuserEx)
|
|
22
|
+
2. 看 Program.Main 或入口命令分发(Rubeus 是 switch(command) 结构)
|
|
23
|
+
3. 找目标命令的实现类/方法
|
|
24
|
+
4. 看 P/Invoke 段(Interop.* 命名空间)—— native API 调用在这里
|
|
25
|
+
5. 提取内嵌资源(有些工具嵌配置/模板)
|
|
26
|
+
6. 如需改特征(EDR 规避):改命令字符串、API 调用、字符串常量
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
### Rubeus 结构示例
|
|
30
|
+
|
|
31
|
+
Rubeus 用命令分派,每个子命令一个类。找 Kerberoasting 逻辑:
|
|
32
|
+
|
|
33
|
+
```text
|
|
34
|
+
入口: Rubeus.CommandLineParser → 解析 args
|
|
35
|
+
分派: switch(command) → "kerberoast" → 执行 Ask.TGS(...)
|
|
36
|
+
P/Invoke: Rubeus.Interop.Lsa* / Native.cs → native Kerberos API
|
|
37
|
+
关键: LsaCallAuthenticationPackage (KERB_RETRIEVE_TKT_REQUEST)
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
改特征(规避):把命令字符串 `"kerberoast"` 改成自定义名、把 `Rubeus` banner 字符串改掉、改 P/Invoke 调用顺序。
|
|
41
|
+
|
|
42
|
+
### 内嵌配置提取
|
|
43
|
+
|
|
44
|
+
很多 loader/工具把 C2、密钥、证书加密嵌在资源或字段:
|
|
45
|
+
|
|
46
|
+
```powershell
|
|
47
|
+
# dnSpyEx 里看 Resources(资源树)
|
|
48
|
+
# 或命令行
|
|
49
|
+
powershell -c "[System.Reflection.Assembly]::LoadFile('target.exe').GetManifestResourceNames()"
|
|
50
|
+
# 找到资源后 dnSpyEx 右键 → 提取 / Save
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
运行时解密的配置 → 动态断在解密方法返回点 dump 明文(见 `common-workflow.md`)。
|
|
54
|
+
|
|
55
|
+
---
|
|
56
|
+
|
|
57
|
+
## 工具安装矩阵
|
|
58
|
+
|
|
59
|
+
### Windows(首选,dnSpyEx 是 GUI)
|
|
60
|
+
|
|
61
|
+
```powershell
|
|
62
|
+
# 方式 A:Chocolatey
|
|
63
|
+
choco install dnspy ilspy de4dot detect-it-easy
|
|
64
|
+
|
|
65
|
+
# 方式 B:手动下载 release(推荐,版本可控)
|
|
66
|
+
# dnSpyEx: https://github.com/dnSpyEx/dnSpy/releases
|
|
67
|
+
# de4dot: https://github.com/de4dot/de4dot/releases
|
|
68
|
+
# ILSpy: https://github.com/icsharpcode/ILSpy/releases
|
|
69
|
+
# DIE: https://github.com/horsicq/Detect-It-Easy/releases
|
|
70
|
+
# dnlib: dotnet add package dnlib (NuGet)
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
### Linux / macOS(无 dnSpyEx GUI,用 CLI)
|
|
74
|
+
|
|
75
|
+
```bash
|
|
76
|
+
# ILSpy CLI 反编译
|
|
77
|
+
dotnet tool install -g ilspycmd
|
|
78
|
+
ilspycmd target.exe -p -o outdir/ # 反编译到目录
|
|
79
|
+
|
|
80
|
+
# de4dot 跨平台(需 mono 或 dotnet)
|
|
81
|
+
# 从 release 下载 de4dot 产物的 .dll,用 dotnet 跑
|
|
82
|
+
dotnet de4dot.dll target.exe -o target-clean.exe
|
|
83
|
+
|
|
84
|
+
# dnlib(脚本化,需 dotnet SDK)
|
|
85
|
+
dotnet new console -o dnclean && cd dnclean
|
|
86
|
+
dotnet add package dnlib
|
|
87
|
+
|
|
88
|
+
# DIE CLI (diec)
|
|
89
|
+
# Linux: 从 https://github.com/horsicq/Detect-It-Easy 装
|
|
90
|
+
diec target.exe
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
### .NET runtime 前置
|
|
94
|
+
|
|
95
|
+
```bash
|
|
96
|
+
# Linux
|
|
97
|
+
sudo apt install dotnet-runtime-8.0 # 或 6.0/7.0 看目标
|
|
98
|
+
# macOS
|
|
99
|
+
brew install --cask dotnet-sdk
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
> dnSpyEx(带 IL 编辑器 + 调试器)只有 Windows GUI 版。Linux/macOS 做 .NET 逆向只能用 `ilspycmd` 反编译 + `dnlib` 脚本 patch,没有等价的交互调试 GUI。需要 patch 时优先上 Windows。
|
|
103
|
+
|
|
104
|
+
---
|
|
105
|
+
|
|
106
|
+
## dnSpy MCP 集成
|
|
107
|
+
|
|
108
|
+
社区已有多个 dnSpy MCP 项目,把 dnSpy 的反编译/IL 检查暴露成 MCP 工具,AI 可直接调用 —— 和 reverse-skill 的 MCP 哲学完全一致。
|
|
109
|
+
|
|
110
|
+
### 主流 dnSpy MCP 项目
|
|
111
|
+
|
|
112
|
+
| 项目 | 特点 | 适配 |
|
|
113
|
+
|------|------|------|
|
|
114
|
+
| **soufianetahiri/dnspy-mcp** | 核心 MCP Server,暴露 decompile、IL inspection 等工具 | Claude Code / Cursor |
|
|
115
|
+
| **AgentSmithers/DnSpy-MCPserver-Extension** | 作为 dnSpyEx 扩展运行,深度集成 GUI | dnSpyEx 内加载 |
|
|
116
|
+
| **malwarecakefactory/dnspy-mcp-extension** | 33 个工具,覆盖 triage → deobfuscation 全流程 | 全流程自动化 |
|
|
117
|
+
|
|
118
|
+
### 注册到 Claude MCP 配置
|
|
119
|
+
|
|
120
|
+
按对应项目 README 装 dnSpyEx 扩展后,在 `~/.claude/mcp.json` 注册(具体 command/args 以项目 README 为准):
|
|
121
|
+
|
|
122
|
+
```json
|
|
123
|
+
{
|
|
124
|
+
"mcpServers": {
|
|
125
|
+
"dnspy": {
|
|
126
|
+
"command": "dotnet",
|
|
127
|
+
"args": ["path/to/dnspy-mcp.dll"]
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
```
|
|
132
|
+
|
|
133
|
+
注册后本 skill 的 AI 联动路径:用户说"分析这个 .NET"→ 路由到 `dotnet-reverse/` → 优先调 `dnspy_decompile` / `dnspy_inspect_il` 工具面 → 不行再切 GUI。
|
|
134
|
+
|
|
135
|
+
> dnSpy MCP 不是 reverse-skill 内置 bootstrap 能力,需用户手动按项目 README 安装扩展并注册。后续可考虑加进 `bootstrap-manifest.json`。
|
|
136
|
+
|
|
137
|
+
---
|
|
138
|
+
|
|
139
|
+
## 社区资源索引
|
|
140
|
+
|
|
141
|
+
### 强烈推荐
|
|
142
|
+
|
|
143
|
+
- **Washi 博客** — .NET 逆向大佬:https://blog.washi.dev/posts/misconceptions-about-dotnet/
|
|
144
|
+
- 核心观点:**不要过度依赖 dnSpy 的 C# 反编译器,要熟悉 IL 编辑器**(与本项目 IL 优先原则一致)
|
|
145
|
+
- **dnSpyEx** — dnSpy 的活跃维护分支:https://github.com/dnSpyEx/dnSpy
|
|
146
|
+
- **de4dot** — .NET 脱混淆:https://github.com/de4dot/de4dot
|
|
147
|
+
- **dnlib** — 元数据编程:https://github.com/dnlib/dnlib
|
|
148
|
+
|
|
149
|
+
### 实战教程
|
|
150
|
+
|
|
151
|
+
- Medium《De-obfuscating and reversing a .NET/C# spyware》— dnSpy + de4dot 实战 info-stealer 脱混淆
|
|
152
|
+
- YouTube《dnSpy Patch .NET EXEs & DLLs》— 手把手 patch + keygen
|
|
153
|
+
- 看雪论坛 .NET 逆向版块 — 搜 ".net 逆向" / "dnSpy" / "ConfuserEx" 有大量实战帖、Nuitka 逆向、免杀讨论
|
|
154
|
+
- Guided Hacking《Top 5 .NET Reverse Engineering Tools》— dnSpy 仍排第一
|
|
155
|
+
- StackExchange / Reverse Engineering — `DynamicMethod` 调试等进阶问题
|
|
156
|
+
|
|
157
|
+
### 本仓库已有 .NET 资源(联动)
|
|
158
|
+
|
|
159
|
+
- `reverse-engineering/tools.md` `.NET Analysis` 段 — dnSpy/ILSpy 工具速查 + Codegate 2013 两阶段 XOR+AES-CBC 模式
|
|
160
|
+
- `reverse-engineering/field-notes.md` `.NET` 段 — 工具速记
|
|
161
|
+
- `reverse-engineering/awesome-re-resources.md` — de4dot 入选
|
|
162
|
+
- `field-journal/seed-014_unity-il2cpp-reverse.md` — Unity IL2CPP(native 侧,与 .NET 托管层互补)
|
|
163
|
+
|
|
164
|
+
.NET 逆向深度内容统一收敛到本模块,`reverse-engineering/` 里保留速查索引即可。
|
|
@@ -0,0 +1,248 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: edr-bypass-re
|
|
3
|
+
description: "Reverse engineer EDR internals (user-mode hook tables, ETW, AMSI) and study bypass techniques such as direct syscalls, Hell's Gate, and call-stack spoofing. Lab-only red-team research."
|
|
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
|
+
## When to Use
|
|
27
|
+
|
|
28
|
+
- Studying EDR telemetry surfaces in an authorized red-team lab.
|
|
29
|
+
- Evaluating detection coverage against known bypass technique classes.
|
|
30
|
+
|
|
31
|
+
## 适用范围
|
|
32
|
+
|
|
33
|
+
红队 / 对抗模拟在已获授权的目标主机投递 implant 并躲避现代 EDR 时使用本 skill。
|
|
34
|
+
|
|
35
|
+
1. **红队 / Purple team / 对抗演练** — 客户希望评估 SOC 与 EDR 的真实检测能力
|
|
36
|
+
2. **自研 implant / C2 框架研发** — 开发针对自家产品测试的载荷,需要绕过自家或目标 EDR
|
|
37
|
+
3. **EDR 产品评估** — 在合规边界已确认的前提下,客观评测某款 EDR 的检测覆盖
|
|
38
|
+
4. **CTF / 攻防演练的 Windows 端突破** — 比赛中需要在加固主机上稳定执行
|
|
39
|
+
|
|
40
|
+
**不适用场景**:
|
|
41
|
+
|
|
42
|
+
- 杀毒厂商对自家产品做完整 RE 给客户出商业评估报告(找厂商正式合作)
|
|
43
|
+
- 未授权目标的免杀对抗(违法)
|
|
44
|
+
- 普通病毒木马的免杀(本 skill 关注红队 OPSEC,不教恶意代码写法)
|
|
45
|
+
|
|
46
|
+
### 与其他 skill 的分工
|
|
47
|
+
|
|
48
|
+
| 场景 | 用什么 |
|
|
49
|
+
|------|--------|
|
|
50
|
+
| 全链路攻防(从外网打到域控) | `attack-chain/` |
|
|
51
|
+
| 内网横向 / AD 攻击 | `pentest-tools/network-attack-defense.md` |
|
|
52
|
+
| 在某个特定主机上要过 EDR 投递 implant | **本 skill** |
|
|
53
|
+
| 单纯静态免杀(混淆 / 加壳) | `malware-analysis/`(反向视角) |
|
|
54
|
+
|
|
55
|
+
`attack-chain` 关注完整 kill chain,本 skill 只聚焦 **EDR 这一个对手** 的内部机制和针对性绕法。
|
|
56
|
+
|
|
57
|
+
## 核心原理
|
|
58
|
+
|
|
59
|
+
```text
|
|
60
|
+
EDR 的四个主要监控面 红队的对策
|
|
61
|
+
───────────────────── ─────────────────────
|
|
62
|
+
用户态 ntdll hook ◄──► unhook (Peruns Fart / fresh ntdll)
|
|
63
|
+
间接 syscall / Hell's Gate
|
|
64
|
+
hardware breakpoint Blindside
|
|
65
|
+
|
|
66
|
+
kernel callback ◄──► call stack spoof
|
|
67
|
+
(Ps/Cm/Ob 系列) 走合法触发链(不直接绕,配合上游隐身)
|
|
68
|
+
|
|
69
|
+
ETW telemetry ◄──► EtwEventWrite patch
|
|
70
|
+
(Microsoft-Windows-Threat- NtTraceControl 关 provider
|
|
71
|
+
Intelligence 等) AmsiContext 同步处理
|
|
72
|
+
|
|
73
|
+
AMSI 扫描 ◄──► AmsiScanBuffer patch (mov eax,0x80070057; ret)
|
|
74
|
+
(amsi.dll) hardware breakpoint 旁路
|
|
75
|
+
reflective 加载副本 amsi.dll
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
关键认知:
|
|
79
|
+
|
|
80
|
+
- **EDR 不是黑盒** — 关键 hook / callback / provider 都能用 IDA + windbg 逆出来
|
|
81
|
+
- **绕过技术要组合使用** — 单独一个 unhook 解决不了 ETW 告警,单独 AMSI patch 解决不了 syscall hook
|
|
82
|
+
- **顺序很重要** — 先 ETW patch → 再 AMSI patch → 再 unhook;顺序错了 EDR 先收到 unhook 告警
|
|
83
|
+
- **现代 EDR 已经把 ETW + kernel callback 当主战场**,单纯用户态 unhook 早已不够
|
|
84
|
+
|
|
85
|
+
## 工作流
|
|
86
|
+
|
|
87
|
+
### Step 1:识别目标主机的 EDR
|
|
88
|
+
|
|
89
|
+
```powershell
|
|
90
|
+
# 列出常见 EDR / AV 驱动
|
|
91
|
+
Get-Service | Where-Object {$_.Name -match 'CSAgent|SentinelAgent|elasticendpoint|esets|ekrn|MsMpEng|wdsvc|cyserver|sysmon|aswbidsagent'}
|
|
92
|
+
|
|
93
|
+
# 列出加载的 minifilter
|
|
94
|
+
fltmc filters
|
|
95
|
+
|
|
96
|
+
# 列出已注册的内核 callback(需 windbg + 内核调试 / 或用 PChunter / DRVHV)
|
|
97
|
+
# !object \Callback
|
|
98
|
+
# !pnpcallback / Process / Thread / Image
|
|
99
|
+
```
|
|
100
|
+
|
|
101
|
+
EDR 指纹表见 `references/hook-survey.md` 顶部。
|
|
102
|
+
|
|
103
|
+
### Step 2:从 EDR DLL 提 hook 表
|
|
104
|
+
|
|
105
|
+
1. attach 到一个被注入 EDR 用户态组件的进程(任何已落地进程)
|
|
106
|
+
2. 在 windbg 中 dump 当前 `ntdll.dll` 的 `.text` 段
|
|
107
|
+
3. 与磁盘上干净的 `C:\Windows\System32\ntdll.dll` 做 diff
|
|
108
|
+
4. 不一致的地方就是 hook 点
|
|
109
|
+
|
|
110
|
+
或者直接用 `pe-sieve`:
|
|
111
|
+
|
|
112
|
+
```powershell
|
|
113
|
+
pe-sieve64.exe /pid 1234 /shellc 3 /modules 3 /dir hooks_dump
|
|
114
|
+
```
|
|
115
|
+
|
|
116
|
+
详细方法见 `references/hook-survey.md`。
|
|
117
|
+
|
|
118
|
+
### Step 3:选绕过技术组合
|
|
119
|
+
|
|
120
|
+
| 防御点 | 推荐绕法 |
|
|
121
|
+
|--------|---------|
|
|
122
|
+
| ntdll inline hook | indirect syscall + 动态 SSN (Halo's Gate) |
|
|
123
|
+
| ETW-TI provider | EtwEventWrite head patch |
|
|
124
|
+
| AMSI(PowerShell / .NET) | AmsiScanBuffer patch 或 HWBP |
|
|
125
|
+
| kernel callback | call stack spoof + 走 legit gadget |
|
|
126
|
+
| Sysmon ProcessCreate | PPID spoof + unbacked memory |
|
|
127
|
+
|
|
128
|
+
### Step 4:在 implant 中实现
|
|
129
|
+
|
|
130
|
+
代码骨架见 `references/unhook-techniques.md` 与 `references/telemetry-blinding.md`。
|
|
131
|
+
|
|
132
|
+
### Step 5:本地 sandbox 验证
|
|
133
|
+
|
|
134
|
+
```powershell
|
|
135
|
+
# 在隔离环境部署目标 EDR 试用版(Defender 默认即可起步)
|
|
136
|
+
# 启用 Sysmon + olaf-config
|
|
137
|
+
sysmon64.exe -i sysmonconfig.xml
|
|
138
|
+
|
|
139
|
+
# 跑 implant,看是否触发以下告警源:
|
|
140
|
+
# - Defender AMSI
|
|
141
|
+
# - ETW-TI
|
|
142
|
+
# - Sysmon Event ID 1/7/8/10
|
|
143
|
+
# - EDR 控制台
|
|
144
|
+
```
|
|
145
|
+
|
|
146
|
+
### Step 6:投递
|
|
147
|
+
|
|
148
|
+
- 文件落地路径用合法软件目录
|
|
149
|
+
- PPID spoof 到 explorer.exe
|
|
150
|
+
- 配合 `attack-chain` 中的 initial access 节
|
|
151
|
+
|
|
152
|
+
## 典型场景
|
|
153
|
+
|
|
154
|
+
### 场景 1:投递 cobalt-strike-alike beacon 过 Defender + Sysmon
|
|
155
|
+
|
|
156
|
+
```text
|
|
157
|
+
目标:Windows 11 Enterprise + Defender (云查杀开) + Sysmon (olaf 配置)
|
|
158
|
+
要求:beacon 落地后能 callback 且不触发任何告警
|
|
159
|
+
|
|
160
|
+
组合拳:
|
|
161
|
+
1. shellcode 加密存储,运行时解密
|
|
162
|
+
2. AMSI patch(如果走 PowerShell 投递)
|
|
163
|
+
3. EtwEventWrite patch(消 ETW-TI)
|
|
164
|
+
4. 间接 syscall + Halo's Gate(消 ntdll hook 告警)
|
|
165
|
+
5. PPID spoof 到 explorer.exe
|
|
166
|
+
6. sleep 阶段用 Ekko / Foliage 加密自身内存
|
|
167
|
+
```
|
|
168
|
+
|
|
169
|
+
### 场景 2:在已落地的低权限 shell 上做 EDR sleep mask
|
|
170
|
+
|
|
171
|
+
```text
|
|
172
|
+
前置:已经通过 phishing 拿到 medium IL shell,EDR 正在监控
|
|
173
|
+
风险:长时间驻留容易被内存扫描发现 beacon 特征
|
|
174
|
+
|
|
175
|
+
解法:
|
|
176
|
+
1. 不再申请新 RWX 内存
|
|
177
|
+
2. sleep 期间用 Ekko:
|
|
178
|
+
- WaitForSingleObjectEx + CreateTimerQueueTimer
|
|
179
|
+
- 在定时器里加密自身 .text + 把堆栈刷成全 0
|
|
180
|
+
3. wake 时用 ROP 还原
|
|
181
|
+
4. 配合 call stack spoof 让 RtlCaptureStackBackTrace 看不到信标地址
|
|
182
|
+
```
|
|
183
|
+
|
|
184
|
+
## 按需自举(On-Demand Bootstrap)
|
|
185
|
+
|
|
186
|
+
### 工具依赖
|
|
187
|
+
|
|
188
|
+
| 工具 | 用途 | 可自动安装 |
|
|
189
|
+
|------|------|-----------|
|
|
190
|
+
| pe-sieve | 检测进程中的 hook / 注入 | ✓ |
|
|
191
|
+
| API Monitor v2 | 动态观察 API 调用与 hook | 半自动(手动下载) |
|
|
192
|
+
| SysWhispers3 | 生成直接 / 间接 syscall stub | ✓(git clone + python) |
|
|
193
|
+
| Hell's Gate POC | 动态 SSN 解析参考实现 | ✓(git clone) |
|
|
194
|
+
| windbg + IDA | 静态逆 EDR DLL / 内核 callback | ✗(自己装) |
|
|
195
|
+
| Sysmon + olaf config | 本地验证环境 | ✓ |
|
|
196
|
+
|
|
197
|
+
### 自举命令
|
|
198
|
+
|
|
199
|
+
```powershell
|
|
200
|
+
powershell -NoProfile -ExecutionPolicy Bypass -File "<SKILL_ROOT>\skills\scripts\bootstrap-reverse.ps1" -Capability @('pe-sieve','syswhispers3','sysmon') -StartServices
|
|
201
|
+
```
|
|
202
|
+
|
|
203
|
+
## 路由上下文
|
|
204
|
+
|
|
205
|
+
**上游入口**:
|
|
206
|
+
|
|
207
|
+
- `reverse-engineering/` — 需要先理解 EDR DLL / 驱动的实现
|
|
208
|
+
- `attack-chain/` — 决定在 kill chain 的哪个阶段引入本 skill
|
|
209
|
+
|
|
210
|
+
**同级关联**:
|
|
211
|
+
|
|
212
|
+
- `pentest-tools/network-attack-defense.md` — 内网横向时如何与本 skill 联动
|
|
213
|
+
- `malware-analysis/` — 反向视角,看检测方怎么写规则
|
|
214
|
+
- `field-journal/` — 每次实战后回写经验
|
|
215
|
+
|
|
216
|
+
**下游交付**:
|
|
217
|
+
|
|
218
|
+
- 生成报告时引用 MITRE ATT&CK **T1562 (Impair Defenses)**、T1562.001 (Disable or Modify Tools)、T1562.006 (Indicator Blocking)、T1055 (Process Injection)、T1027 (Obfuscated Files or Information)
|
|
219
|
+
|
|
220
|
+
## 法律边界声明
|
|
221
|
+
|
|
222
|
+
- 仅限合法授权的红队 / 对抗演练 / 自有产品测试
|
|
223
|
+
- 操作前必须取得书面授权(SoW / 测试合同 / SRC 范围说明)
|
|
224
|
+
- 不得用于未授权目标,不得超出授权范围
|
|
225
|
+
- 发现高危问题立即向客户报告,遵循负责任披露
|
|
226
|
+
- 所有报告中真实目标信息必须脱敏(IP / 主机名 / 域名 / 凭证占位)
|
|
227
|
+
|
|
228
|
+
## 参考资料
|
|
229
|
+
|
|
230
|
+
- 详细 hook 调研:`references/hook-survey.md`
|
|
231
|
+
- unhook / syscall 技术:`references/unhook-techniques.md`
|
|
232
|
+
- ETW / AMSI / 反取证:`references/telemetry-blinding.md`
|
|
233
|
+
- MITRE ATT&CK T1562:<https://attack.mitre.org/techniques/T1562/>
|
|
234
|
+
|
|
235
|
+
|
|
236
|
+
## 任务完成自检(声称完成前 MUST 通过)
|
|
237
|
+
|
|
238
|
+
- [ ] 我是否执行了工作流中的每一步(而不是只阅读)?
|
|
239
|
+
- [ ] 我是否基于 `tool-index` 使用了真实工具路径?
|
|
240
|
+
- [ ] 我是否产出了可复现证据(命令/脚本/截图/报告)?
|
|
241
|
+
- [ ] 我是否完成并回写了 RULES 要求的 Checklist 项?
|
|
242
|
+
|
|
243
|
+
## Limitations
|
|
244
|
+
|
|
245
|
+
- Lab environment only: deploying bypasses against monitored production systems is out of scope and illegal without authorization.
|
|
246
|
+
- Technique descriptions age quickly as EDR vendors adapt.
|
|
247
|
+
|
|
248
|
+
> Adapted from [zhaoxuya520/reverse-skill](https://github.com/zhaoxuya520/reverse-skill) (MIT).
|