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.
Files changed (270) hide show
  1. package/bundled-skills/.antigravity-install-manifest.json +47 -1
  2. package/bundled-skills/api-rate-limit-handler/SKILL.md +282 -0
  3. package/bundled-skills/api-security/SKILL.md +205 -0
  4. package/bundled-skills/api-security/references/jwt-oauth-testing.md +123 -0
  5. package/bundled-skills/api-security/references/rest-graphql-testing.md +137 -0
  6. package/bundled-skills/apk-reverse/SKILL.md +438 -0
  7. package/bundled-skills/apk-reverse/references/android-advanced.md +365 -0
  8. package/bundled-skills/apk-reverse/references/apk-security-checklist.md +230 -0
  9. package/bundled-skills/apk-reverse/references/frida-bypass-kit.md +70 -0
  10. package/bundled-skills/apk-reverse/references/frida-cookbook.md +472 -0
  11. package/bundled-skills/attack-chain/SKILL.md +185 -0
  12. package/bundled-skills/attack-chain/references/attack-playbooks.md +126 -0
  13. package/bundled-skills/attack-chain/references/evasion-cheatsheet.md +133 -0
  14. package/bundled-skills/attack-chain/references/lifecycle-checklist.md +37 -0
  15. package/bundled-skills/attack-chain/references/phases.md +490 -0
  16. package/bundled-skills/binary-diff/SKILL.md +320 -0
  17. package/bundled-skills/binary-diff/references/prompt-template.md +173 -0
  18. package/bundled-skills/browser-extension-reverse/SKILL.md +99 -0
  19. package/bundled-skills/browser-extension-reverse/references/extension-analysis.md +10 -0
  20. package/bundled-skills/case-review/SKILL.md +167 -0
  21. package/bundled-skills/cloud-k8s/SKILL.md +124 -0
  22. package/bundled-skills/cloud-k8s/references/k8s-cloud-checklist.md +16 -0
  23. package/bundled-skills/code-audit/SKILL.md +92 -0
  24. package/bundled-skills/code-audit/references/sast-review-checklist.md +10 -0
  25. package/bundled-skills/database-security/SKILL.md +81 -0
  26. package/bundled-skills/database-security/references/db-misconfig-checklist.md +9 -0
  27. package/bundled-skills/diagram-generator/SKILL.md +199 -0
  28. package/bundled-skills/diagram-generator/references/README.md +3 -0
  29. package/bundled-skills/diagram-generator/references/diagram-patterns.md +254 -0
  30. package/bundled-skills/digital-forensics/SKILL.md +93 -0
  31. package/bundled-skills/digital-forensics/references/forensics-triage.md +10 -0
  32. package/bundled-skills/docs/integrations/jetski-cortex.md +3 -3
  33. package/bundled-skills/docs/integrations/jetski-gemini-loader/README.md +1 -1
  34. package/bundled-skills/docs/maintainers/repo-growth-seo.md +1 -1
  35. package/bundled-skills/docs/maintainers/skills-update-guide.md +1 -1
  36. package/bundled-skills/docs/sources/sources.md +9 -0
  37. package/bundled-skills/docs/users/aas-core.md +1 -1
  38. package/bundled-skills/docs/users/bundles.md +1 -1
  39. package/bundled-skills/docs/users/claude-code-skills.md +1 -1
  40. package/bundled-skills/docs/users/gemini-cli-skills.md +1 -1
  41. package/bundled-skills/docs/users/kiro-integration.md +1 -1
  42. package/bundled-skills/docs/users/usage.md +3 -3
  43. package/bundled-skills/docs/users/visual-guide.md +4 -4
  44. package/bundled-skills/docs-generator/SKILL.md +197 -0
  45. package/bundled-skills/docs-generator/references/security-report-templates.md +348 -0
  46. package/bundled-skills/docs-generator/references/templates.md +102 -0
  47. package/bundled-skills/docs-generator/references/vendor-report-rules.md +263 -0
  48. package/bundled-skills/dotnet-reverse/SKILL.md +197 -0
  49. package/bundled-skills/dotnet-reverse/references/common-workflow.md +171 -0
  50. package/bundled-skills/dotnet-reverse/references/obfuscators.md +145 -0
  51. package/bundled-skills/dotnet-reverse/references/sharp-tools.md +164 -0
  52. package/bundled-skills/edr-bypass-re/SKILL.md +248 -0
  53. package/bundled-skills/edr-bypass-re/references/hook-survey.md +226 -0
  54. package/bundled-skills/edr-bypass-re/references/telemetry-blinding.md +346 -0
  55. package/bundled-skills/edr-bypass-re/references/unhook-techniques.md +338 -0
  56. package/bundled-skills/email-security/SKILL.md +81 -0
  57. package/bundled-skills/email-security/references/email-auth-checklist.md +8 -0
  58. package/bundled-skills/firmware-pentest/SKILL.md +381 -0
  59. package/bundled-skills/firmware-pentest/references/emba-automated-analysis.md +192 -0
  60. package/bundled-skills/firmware-pentest/references/emulation-and-fuzz.md +337 -0
  61. package/bundled-skills/firmware-pentest/references/extraction-methodology.md +285 -0
  62. package/bundled-skills/ghidra-reverse/SKILL.md +98 -0
  63. package/bundled-skills/ghidra-reverse/references/ghidra-cheatsheet.md +12 -0
  64. package/bundled-skills/go-rust-reverse/SKILL.md +82 -0
  65. package/bundled-skills/go-rust-reverse/references/go-rust-notes.md +5 -0
  66. package/bundled-skills/hardware-security/SKILL.md +80 -0
  67. package/bundled-skills/hardware-security/references/debug-interface-triage.md +7 -0
  68. package/bundled-skills/ida-reverse/SKILL.md +401 -0
  69. package/bundled-skills/ida-reverse/references/LOCAL-SETUP.md +66 -0
  70. package/bundled-skills/ida-reverse/references/ida-mcp-cheatsheet.md +515 -0
  71. package/bundled-skills/identity-federation/SKILL.md +81 -0
  72. package/bundled-skills/identity-federation/references/sso-flow-checklist.md +9 -0
  73. package/bundled-skills/instructree/SKILL.md +94 -0
  74. package/bundled-skills/js-reverse/SKILL.md +239 -0
  75. package/bundled-skills/js-reverse/references/ast-deobfuscation.md +3 -0
  76. package/bundled-skills/js-reverse/references/automation-entry.md +12 -0
  77. package/bundled-skills/js-reverse/references/env-patching.md +6 -0
  78. package/bundled-skills/js-reverse/references/fallbacks.md +8 -0
  79. package/bundled-skills/js-reverse/references/instrumentation.md +9 -0
  80. package/bundled-skills/js-reverse/references/local-rebuild.md +11 -0
  81. package/bundled-skills/js-reverse/references/mcp-task-template.md +30 -0
  82. package/bundled-skills/js-reverse/references/node-env-rebuild.md +9 -0
  83. package/bundled-skills/js-reverse/references/output-contract.md +9 -0
  84. package/bundled-skills/js-reverse/references/task-artifacts.md +11 -0
  85. package/bundled-skills/js-reverse/references/task-input-template.md +11 -0
  86. package/bundled-skills/js-reverse/references/tool-defaults.md +7 -0
  87. package/bundled-skills/llm-security/SKILL.md +160 -0
  88. package/bundled-skills/llm-security/references/agent-obedience-engineering.md +243 -0
  89. package/bundled-skills/llm-security/references/agent-security-testing.md +116 -0
  90. package/bundled-skills/llm-security/references/owasp-llm-top10.md +48 -0
  91. package/bundled-skills/llm-security/references/prompt-injection-methodology.md +107 -0
  92. package/bundled-skills/loki-mode/examples/todo-app-generated/backend/package-lock.json +4 -4
  93. package/bundled-skills/loki-mode/examples/todo-app-generated/backend/package.json +1 -1
  94. package/bundled-skills/macos-reverse/SKILL.md +85 -0
  95. package/bundled-skills/macos-reverse/references/macho-triage.md +10 -0
  96. package/bundled-skills/malware-analysis/SKILL.md +311 -0
  97. package/bundled-skills/malware-analysis/references/anti-analysis-techniques.md +205 -0
  98. package/bundled-skills/malware-analysis/references/sandbox-orchestration.md +204 -0
  99. package/bundled-skills/malware-analysis/references/yara-sigma-rules.md +232 -0
  100. package/bundled-skills/mobile-reverse/SKILL.md +222 -0
  101. package/bundled-skills/mobile-reverse/references/anti-detection-bypass.md +182 -0
  102. package/bundled-skills/mobile-reverse/references/frida-objection-deep.md +218 -0
  103. package/bundled-skills/mobile-reverse/references/ios-reverse-guide.md +177 -0
  104. package/bundled-skills/muapi-media/SKILL.md +311 -0
  105. package/bundled-skills/ot-ics/SKILL.md +117 -0
  106. package/bundled-skills/ot-ics/references/ot-safe-assessment.md +10 -0
  107. package/bundled-skills/patch-diff-exploit/SKILL.md +278 -0
  108. package/bundled-skills/patch-diff-exploit/references/diff-tools-comparison.md +271 -0
  109. package/bundled-skills/patch-diff-exploit/references/patch-tuesday-workflow.md +253 -0
  110. package/bundled-skills/patch-diff-exploit/references/root-cause-and-poc.md +198 -0
  111. package/bundled-skills/pentest-tools/SKILL.md +346 -0
  112. package/bundled-skills/pentest-tools/references/ai-pentest-agents.md +148 -0
  113. package/bundled-skills/pentest-tools/references/ai-pentesting-landscape-2026.md +73 -0
  114. package/bundled-skills/pentest-tools/references/automation-loop-pattern.md +153 -0
  115. package/bundled-skills/pentest-tools/references/awesome-pentest-digest.md +175 -0
  116. package/bundled-skills/pentest-tools/references/burpsuite-mcp-guide.md +769 -0
  117. package/bundled-skills/pentest-tools/references/client-side-lab-playbook.md +155 -0
  118. package/bundled-skills/pentest-tools/references/kali-mcp-ecosystem.md +119 -0
  119. package/bundled-skills/pentest-tools/references/msf-protocol.md +169 -0
  120. package/bundled-skills/pentest-tools/references/network-attack-defense.md +350 -0
  121. package/bundled-skills/pentest-tools/references/nuclei-guide-2026.md +157 -0
  122. package/bundled-skills/pentest-tools/references/payloads.md +32 -0
  123. package/bundled-skills/pentest-tools/references/pentest-ai-agents-matrix.md +117 -0
  124. package/bundled-skills/pentest-tools/references/pentest-loop.md +270 -0
  125. package/bundled-skills/pentest-tools/references/recon-pipeline.md +154 -0
  126. package/bundled-skills/pentest-tools/references/templates/findings.md +21 -0
  127. package/bundled-skills/pentest-tools/references/templates/progress.md +17 -0
  128. package/bundled-skills/pentest-tools/references/templates/rules.md +35 -0
  129. package/bundled-skills/pentest-tools/references/templates/scope.md +29 -0
  130. package/bundled-skills/pentest-tools/references/templates/task_plan.md +27 -0
  131. package/bundled-skills/pentest-tools/references/web-attack-cheatsheet.md +387 -0
  132. package/bundled-skills/pentest-tools/src-hunter/SKILL.md +243 -0
  133. package/bundled-skills/pentest-tools/src-hunter/references/README.en.md +115 -0
  134. package/bundled-skills/pentest-tools/src-hunter/references/README.md +148 -0
  135. package/bundled-skills/pentest-tools/src-hunter/references/dictionaries/00-index.md +44 -0
  136. package/bundled-skills/pentest-tools/src-hunter/references/dictionaries/chinese-srcfingerprints.md +515 -0
  137. package/bundled-skills/pentest-tools/src-hunter/references/dictionaries/default-credentials-cn.md +274 -0
  138. package/bundled-skills/pentest-tools/src-hunter/references/industry/00-index.md +66 -0
  139. package/bundled-skills/pentest-tools/src-hunter/references/industry/banking-finance.md +338 -0
  140. package/bundled-skills/pentest-tools/src-hunter/references/industry/telecom-isp.md +315 -0
  141. package/bundled-skills/pentest-tools/src-hunter/references/methodology/00-index.md +68 -0
  142. package/bundled-skills/pentest-tools/src-hunter/references/methodology/01-attack-priority.md +143 -0
  143. package/bundled-skills/pentest-tools/src-hunter/references/methodology/02-bypass-toolkit.md +357 -0
  144. package/bundled-skills/pentest-tools/src-hunter/references/methodology/03-evidence-discipline.md +205 -0
  145. package/bundled-skills/pentest-tools/src-hunter/references/methodology/04-control-gap-hunting.md +238 -0
  146. package/bundled-skills/pentest-tools/src-hunter/references/methodology/05-srctimebox-priority.md +161 -0
  147. package/bundled-skills/pentest-tools/src-hunter/references/payloader/by-category/intranet/adcs/346/224/273/345/207/273.md +254 -0
  148. package/bundled-skills/pentest-tools/src-hunter/references/payloader/by-category/intranet/exchange/346/224/273/345/207/273.md +254 -0
  149. package/bundled-skills/pentest-tools/src-hunter/references/payloader/by-category/intranet/sharepoint/346/224/273/345/207/273.md +113 -0
  150. 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
  151. 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
  152. 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
  153. 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
  154. 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
  155. 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
  156. 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
  157. 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
  158. package/bundled-skills/pentest-tools/src-hunter/references/payloader/by-category/web/ai/345/256/211/345/205/250.md +698 -0
  159. package/bundled-skills/pentest-tools/src-hunter/references/payloader/by-category/web/api/345/256/211/345/205/250.md +1935 -0
  160. 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
  161. package/bundled-skills/pentest-tools/src-hunter/references/payloader/by-category/web/jwt/345/256/211/345/205/250.md +496 -0
  162. 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
  163. 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
  164. package/bundled-skills/pentest-tools/src-hunter/references/payloader/by-category/web/sql-nosql/346/263/250/345/205/245.md +1924 -0
  165. 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
  166. 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
  167. package/bundled-skills/pentest-tools/src-hunter/references/payloader/by-category/web/websocket/345/256/211/345/205/250.md +487 -0
  168. 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
  169. 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
  170. 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
  171. 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
  172. 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
  173. 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
  174. 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
  175. 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
  176. 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
  177. 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
  178. 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
  179. 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
  180. 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
  181. package/bundled-skills/pentest-tools/src-hunter/references/payloader/index.md +69 -0
  182. package/bundled-skills/pentest-tools/src-hunter/references/payloader/tools/web/346/270/227/351/200/217.md +662 -0
  183. package/bundled-skills/pentest-tools/src-hunter/references/payloader/tools/windows/346/270/227/351/200/217.md +100 -0
  184. 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
  185. 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
  186. 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
  187. package/bundled-skills/pentest-tools/src-hunter/references/payloader/tools//345/237/237/346/270/227/351/200/217.md +50 -0
  188. 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
  189. 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
  190. 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
  191. 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
  192. 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
  193. 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
  194. 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
  195. package/bundled-skills/pentest-tools/src-hunter/references/payloader/waf-bypass.md +6504 -0
  196. package/bundled-skills/pentest-tools/src-hunter/references/playbooks/00-index.md +57 -0
  197. package/bundled-skills/pentest-tools/src-hunter/references/playbooks/api-rest.md +2050 -0
  198. package/bundled-skills/pentest-tools/src-hunter/references/playbooks/arbitrary-x-authz.md +481 -0
  199. package/bundled-skills/pentest-tools/src-hunter/references/playbooks/dos.md +615 -0
  200. package/bundled-skills/pentest-tools/src-hunter/references/playbooks/file-upload.md +1365 -0
  201. package/bundled-skills/pentest-tools/src-hunter/references/playbooks/graphql.md +253 -0
  202. package/bundled-skills/pentest-tools/src-hunter/references/playbooks/http-smuggling.md +924 -0
  203. package/bundled-skills/pentest-tools/src-hunter/references/playbooks/info-disclosure.md +432 -0
  204. package/bundled-skills/pentest-tools/src-hunter/references/playbooks/intranet-postexp.md +4845 -0
  205. package/bundled-skills/pentest-tools/src-hunter/references/playbooks/llm-prompt-injection.md +1394 -0
  206. package/bundled-skills/pentest-tools/src-hunter/references/playbooks/logic-flaws.md +1796 -0
  207. package/bundled-skills/pentest-tools/src-hunter/references/playbooks/mobile.md +397 -0
  208. package/bundled-skills/pentest-tools/src-hunter/references/playbooks/oauth-saml-jwt.md +2504 -0
  209. package/bundled-skills/pentest-tools/src-hunter/references/playbooks/path-traversal.md +1297 -0
  210. package/bundled-skills/pentest-tools/src-hunter/references/playbooks/race-conditions.md +207 -0
  211. package/bundled-skills/pentest-tools/src-hunter/references/playbooks/rce.md +4829 -0
  212. package/bundled-skills/pentest-tools/src-hunter/references/playbooks/sqli.md +1620 -0
  213. package/bundled-skills/pentest-tools/src-hunter/references/playbooks/ssrf-cache-host.md +2098 -0
  214. package/bundled-skills/pentest-tools/src-hunter/references/playbooks/unauth-access.md +330 -0
  215. package/bundled-skills/pentest-tools/src-hunter/references/playbooks/xss.md +1159 -0
  216. package/bundled-skills/pentest-tools/src-hunter/references/templates/report-submission.md +346 -0
  217. package/bundled-skills/pentest-tools/src-hunter/references/tools/mcp-jshook.md +174 -0
  218. package/bundled-skills/protocol-reverse/SKILL.md +108 -0
  219. package/bundled-skills/protocol-reverse/references/protocol-workflow.md +29 -0
  220. package/bundled-skills/pwn-chain/SKILL.md +209 -0
  221. package/bundled-skills/pwn-chain/references/heap-pwn.md +283 -0
  222. package/bundled-skills/pwn-chain/references/kernel-pwn.md +370 -0
  223. package/bundled-skills/pwn-chain/references/stack-pwn.md +312 -0
  224. package/bundled-skills/radare2/SKILL.md +460 -0
  225. package/bundled-skills/radare2/references/cheatsheet.md +129 -0
  226. package/bundled-skills/radio-sdr/SKILL.md +77 -0
  227. package/bundled-skills/radio-sdr/references/sdr-lab-rules.md +6 -0
  228. package/bundled-skills/reverse-browser-automation/SKILL.md +249 -0
  229. package/bundled-skills/reverse-browser-automation/references/playwright-cheatsheet.md +425 -0
  230. package/bundled-skills/reverse-engineering/SKILL.md +213 -0
  231. package/bundled-skills/reverse-engineering/dsl-vm-reverse/SKILL.md +388 -0
  232. package/bundled-skills/reverse-engineering/references/ai-assisted-re.md +149 -0
  233. package/bundled-skills/reverse-engineering/references/anti-analysis.md +836 -0
  234. package/bundled-skills/reverse-engineering/references/awesome-re-resources.md +135 -0
  235. package/bundled-skills/reverse-engineering/references/crypto-decode-tools.md +220 -0
  236. package/bundled-skills/reverse-engineering/references/elf-analysis.md +296 -0
  237. package/bundled-skills/reverse-engineering/references/field-notes.md +540 -0
  238. package/bundled-skills/reverse-engineering/references/go-reverse.md +240 -0
  239. package/bundled-skills/reverse-engineering/references/kernel-driver-reverse.md +298 -0
  240. package/bundled-skills/reverse-engineering/references/languages-compiled.md +587 -0
  241. package/bundled-skills/reverse-engineering/references/languages-platforms.md +486 -0
  242. package/bundled-skills/reverse-engineering/references/languages.md +499 -0
  243. package/bundled-skills/reverse-engineering/references/nonpe-format-cookbook.md +301 -0
  244. package/bundled-skills/reverse-engineering/references/ollvm-deobfuscation.md +501 -0
  245. package/bundled-skills/reverse-engineering/references/patterns-ctf-2.md +397 -0
  246. package/bundled-skills/reverse-engineering/references/patterns-ctf-3.md +719 -0
  247. package/bundled-skills/reverse-engineering/references/patterns-ctf.md +532 -0
  248. package/bundled-skills/reverse-engineering/references/patterns.md +801 -0
  249. package/bundled-skills/reverse-engineering/references/platforms-hardware.md +304 -0
  250. package/bundled-skills/reverse-engineering/references/platforms.md +442 -0
  251. package/bundled-skills/reverse-engineering/references/re-agent-workflow.md +240 -0
  252. package/bundled-skills/reverse-engineering/references/tools-advanced.md +822 -0
  253. package/bundled-skills/reverse-engineering/references/tools-dynamic.md +846 -0
  254. package/bundled-skills/reverse-engineering/references/tools.md +546 -0
  255. package/bundled-skills/supply-chain-security/SKILL.md +180 -0
  256. package/bundled-skills/supply-chain-security/references/cicd-pipeline-security.md +137 -0
  257. package/bundled-skills/supply-chain-security/references/sbom-sca-methodology.md +74 -0
  258. package/bundled-skills/thick-client/SKILL.md +104 -0
  259. package/bundled-skills/thick-client/references/thick-client-checklist.md +9 -0
  260. package/bundled-skills/threat-hunting/SKILL.md +94 -0
  261. package/bundled-skills/threat-hunting/references/hunting-loop.md +5 -0
  262. package/bundled-skills/threat-intelligence/SKILL.md +176 -0
  263. package/bundled-skills/threat-intelligence/references/x-public-intelligence.md +93 -0
  264. package/bundled-skills/tree-ring-memory/SKILL.md +29 -9
  265. package/bundled-skills/wifi-wireless/SKILL.md +80 -0
  266. package/bundled-skills/wifi-wireless/references/wireless-lab-rules.md +6 -0
  267. package/bundled-skills/windows-ad/SKILL.md +109 -0
  268. package/bundled-skills/windows-ad/references/ad-attack-paths.md +12 -0
  269. package/package.json +1 -1
  270. package/skills_index.json +1214 -2
@@ -0,0 +1,263 @@
1
+ # Vendor Report Rules(专业厂商报告结构叠加层)
2
+
3
+ > Issue #65 问题 2。
4
+ > **只抽结构与写法规则,禁止抄录任何厂商报告正文、图表、真实 IOC 实例或大段表述。**
5
+ > 本文件是**叠加层**:不替换 `security-report-templates.md` 的任务模板,也不削弱 §0 Evidence→Finding→Path。
6
+
7
+ 结构参考(公开样例,仅骨架):
8
+
9
+ | Flavor | 主参考 | 场景 |
10
+ |--------|--------|------|
11
+ | `malware` | 火绒安全病毒/技术分析报告 | 明确的普通木马、白加黑、钓鱼投毒、恶意样本 |
12
+ | `apt` | 卡巴斯基 Securelist / APT 战役报告(如 MATA) | APT、团伙战役、多阶段感染链、行业定向 |
13
+
14
+ 原则:**模板在精不在多** —— 仅 2 个厂商全文 flavor(`malware` / `apt`)+ Base 通用元素 + **可选 thin overlay**(如 `vuln` 漏洞技术分析)。普通逆向、渗透、CTF 和 JS 报告保持任务模板,不默认伪装成恶意软件报告;`vuln` **不是** 第 3 个默认全文 flavor。
15
+
16
+ ---
17
+
18
+ ## 0. 何时启用
19
+
20
+ 在 `docs-generator` 生成**安全类**报告时(逆向 / 恶意软件 / 渗透收尾 / 用户明确要求「专业报告」「厂商风格」)**MUST** 读取本文件。只有任务证据或用户明确要求支持时才选择厂商 flavor;否则使用 `flavor = null`,仅叠加通用专业元素和原任务模板。
21
+
22
+ | 信号 | Flavor / Overlay |
23
+ |------|------------------|
24
+ | APT / 团伙 / 战役 / 多阶段 C2 / 行业定向 / ICS / spear-phish 战役 | `apt` |
25
+ | 明确恶意样本、木马、窃密、白加黑、仿冒站点 | `malware` |
26
+ | 用户明确要求漏洞/补丁/CVE 技术分析,或任务证据为 OS/组件漏洞研究 | `flavor = null` + **thin overlay `vuln`**(见 §3b) |
27
+ | 普通 APK/ELF/PE/Mach-O 逆向、算法分析、固件分析、渗透测试、CTF、JS 签名 | `flavor = null`;使用原任务模板和通用专业元素最小集 |
28
+
29
+ 用户显式指定「按卡巴/APT」「按火绒/病毒报告」「按漏洞技术分析」时,覆盖自动选型。
30
+ **禁止** 把普通 malware/APT/普通逆向默认套进 `vuln` 目录。
31
+
32
+ ---
33
+
34
+ ## 1. 通用专业元素(Base)
35
+
36
+ 下列 Base 元素按报告类型应用。标 **MUST** 的不可省略;与特定 flavor 相关的元素不得为了填模板而出现在无关任务中。没有适用内容时,使用 `n/a` 并说明原因。
37
+
38
+ | # | 元素 | 要求 |
39
+ |---|------|------|
40
+ | G1 | 执行摘要 / 概述 | **MUST**:3–8 句:分析了什么、最严重结论、影响面、建议动作 |
41
+ | G2 | 范围与授权 | **MUST**:链到 case `scope.md`(见模板 §0.1) |
42
+ | G3 | Evidence→Finding→Path | **MUST**:见 `security-report-templates.md` §0 与 `skills/ops/evidence-finding-path.md` |
43
+ | G4 | IOC 表 | `malware` / `apt` **MUST**;其他任务仅在存在相关指标时出现 |
44
+ | G5 | 建议 / 处置 | `malware` / `apt` **MUST**:至少 1 条可执行建议;其他任务按原任务模板 |
45
+ | G6 | 附录元数据 | **SHOULD**:工具与版本、样本哈希、完整复现命令 |
46
+ | G7 | ATT&CK 映射 | **MUST**(`apt` 下;无适用技术时 `n/a` + 原因);其他任务 **SHOULD** |
47
+
48
+ ### 1.1 IOC 表最小列
49
+
50
+ ```markdown
51
+ | 类型 | 值 | 上下文 | 首次/最后发现 | 来源证据 | 置信度 |
52
+ |------|----|--------|---------------|----------|--------|
53
+ | file_sha256 / file_md5 / domain / ip:port / url / mutex / path / registry | … | 何处发现 | YYYY-MM-DD / n/a | E-id | high/med/low |
54
+ ```
55
+
56
+ ### 1.2 版权与安全边界
57
+
58
+ - 不得粘贴厂商 PDF/网页正文段落或图注充作己方分析。
59
+ - 真实 token、内网 URL、客户标识用占位符。
60
+ - 未授权目标不得输出可直接利用的攻击步骤细节(遵循 case scope / RULES)。
61
+
62
+ ---
63
+
64
+ ## 2. Flavor:`malware`(火绒式 · 明确选择)
65
+
66
+ **叙事目标**:让读者 5 分钟内看懂「是什么 → 怎么来的 → 样本怎么干的 → 怎么处置 → 有哪些 IOC」。
67
+
68
+ ### 2.1 推荐章节顺序
69
+
70
+ ```markdown
71
+ # [标题:一句话威胁定性]
72
+
73
+ > 分析日期 / 分析方 / 样本标识(哈希)
74
+
75
+ ## 1. 概述
76
+ (G1:发现渠道、伪装手法、核心技术点、产品侧可否查杀——若未知写 n/a)
77
+
78
+ ## 2. 攻击 / 感染流程
79
+ (流程图:Mermaid 或分步列表;对应 Path `path_type=attack`)
80
+
81
+ ## 3. 样本分析
82
+ ### 3.1 样本溯源
83
+ ### 3.2 静态分析
84
+ (**MUST** 纳入导入表 / 基础身份 Evidence:E-imports 或等价;见 radare2/ida/malware 硬门)
85
+ ### 3.3 动态分析 / 行为
86
+ (无动态条件则 n/a + 原因)
87
+ ### 3.4 核心发现(Findings 表或编号列表,挂 evidence_ids)
88
+
89
+ ## 4. 应急处置方式
90
+ (仅在授权范围内执行:先确认 scope 并保全样本、内存、进程树、网络连接和日志等证据,再隔离主机;经负责人批准后再终止进程、隔离/清除文件、检查 hosts/启动项、全盘查杀并复核。不得在证据保全前直接删除文件。)
91
+
92
+ ## 5. 总结说明
93
+ (给普通用户/运维的风险提醒与预防)
94
+
95
+ ## 6. IOC 信息
96
+ (G4 表)
97
+
98
+ ## 7. Evidence 链摘要
99
+ (§0:E / F / P / Timeline;可与 §3.4 合并但字段不省)
100
+
101
+ ## 8. 附录
102
+ (工具版本、复现命令、脚本路径)
103
+ ```
104
+
105
+ ### 2.2 文风
106
+
107
+ - 中文用户默认中文;先结论后细节。
108
+ - 静态分析按「组件/阶段」分层,避免无结构的长日志粘贴。
109
+ - 处置步骤必须可独立执行,禁止「加强安全意识」空话充数。
110
+
111
+ ---
112
+
113
+ ## 3. Flavor:`apt`(卡巴斯基 Securelist 式)
114
+
115
+ **叙事目标**:讲清战役级故事——谁在何时用何链打了谁,调查如何推进,组件如何分工,防守方拿什么去检。
116
+
117
+ ### 3.1 推荐章节顺序
118
+
119
+ ```markdown
120
+ # [战役/集群名称]:[一句话影响]
121
+
122
+ > 日期 / 团队 / 行业与地区范围(若可知)
123
+
124
+ ## 1. Executive summary
125
+ (G1:时间窗、受害者画像、入口、家族/集群归属、持续时长、最重要结论)
126
+
127
+ ## 2. The infection chain
128
+ (分阶段:投递 → exploit/loader → 主马 → 后渗透/窃密;未知段明确 “limited visibility”
129
+ 对应 Path;建议配链图)
130
+
131
+ ## 3. Incident investigation
132
+ (调查叙事:关键转折、内网代理/C2 特征、如何扩大范围;挂 Timeline)
133
+
134
+ ## 4. Interesting findings
135
+ (3–7 条非显而易见要点,每条尽量挂 E-id / F-id)
136
+
137
+ ## 5. Technical analysis
138
+ ### 5.1 组件总览表(loader / trojan / stealer / …)
139
+ ### 5.2 分组件行为与配置
140
+ ### 5.3 静态要点(含导入表/加壳/持久化 Evidence)
141
+ ### 5.4 网络与 C2
142
+ (可附 ATT&CK 表 G7)
143
+
144
+ ## 6. Detection and mitigation
145
+ (检测思路 / 狩猎线索 / 缓解优先级;非空泛口号)
146
+
147
+ ## 7. IOC
148
+ (G4;按类型分组)
149
+
150
+ ## 8. Evidence 链摘要
151
+ (§0 字段)
152
+
153
+ ## 9. Appendix
154
+ (样本列表与哈希、工具版本、参考公开编号;不抄外部报告正文)
155
+ ```
156
+
157
+ ### 3.2 文风
158
+
159
+ - 时间线与「可见性限制」要诚实写。
160
+ - Interesting findings ≠ 重复概述;写调查中真正关键的异常点。
161
+ - 组件分析用表:角色 / 持久化 / C2 / 依赖,再展开。
162
+
163
+ ---
164
+
165
+
166
+ ## 3b. Thin overlay:`vuln`(漏洞技术分析 · 可选)
167
+
168
+ > Issue #65 补充。结构参考公开「操作系统/组件漏洞技术分析」类报告目录,**只抽章节骨架**,禁止抄录截图/正文中的 PoC 报文、利用细节或未授权攻击步骤。
169
+ > **不是** 第 3 个默认厂商全文 flavor;仅在漏洞研究任务或用户明确要求时叠加。
170
+
171
+ **叙事目标**:读者能快速看到「影响谁 → 如何确认/复现(授权内)→ 根因与补丁差异 → 如何缓解」。
172
+
173
+ ### 建议章节顺序
174
+
175
+ ```markdown
176
+ ## 1. 漏洞概述
177
+ ### 1.1 影响范围(版本/组件/配置前提)
178
+ ### 1.2 漏洞复现(授权环境;步骤可第三方重复;无武器化教程口吻)
179
+
180
+ ## 2. 漏洞分析
181
+ ### 2.1 崩溃 / 异常分析(Evidence:崩溃日志、触发条件)
182
+ ### 2.2 补丁分析(diff/守卫条件/修复点 — 挂 E-*)
183
+ ### 2.3 PoC 或触发器分析(仅授权范围内已有材料;协议/输入构造层次说明即可)
184
+
185
+ ## 3. 防护建议
186
+ ### 3.1 缓解措施(配置/缓解开关等)
187
+ ### 3.2 官方补丁与验证
188
+
189
+ ## 4. Evidence → Finding → Path(可并入各节或独立表)
190
+ ```
191
+
192
+ ### 硬约束
193
+
194
+ - **MUST** scope/授权:未授权目标禁止复现与 PoC 扩展
195
+ - **MUST** E/F/P:复现、崩溃、补丁结论均挂 evidence_ids
196
+ - **MUST NOT** 把 `vuln` 当作 malware/APT 默认壳
197
+ - **MUST NOT** 抄录外部报告/截图中的利用代码或完整攻击武器化步骤
198
+ - IOC 表:仅当存在网络/文件指示器时出现;否则 n/a 或省略
199
+
200
+ ---
201
+ ## 4. 与现有任务模板的挂接
202
+
203
+ | 任务模板(`security-report-templates.md`) | 叠加方式 |
204
+ |------------------------------------------|----------|
205
+ | 1. 逆向工程报告 | 默认 `flavor = null`,保留原「静态/动态/复现」骨架和导入表等硬门 Evidence;只有明确恶意样本才套 §2 |
206
+ | 2. 渗透测试报告 | `flavor = null`;补 Base 中适用的 G1–G3,攻击路径对齐 §0 Path,不强制 IOC |
207
+ | 3. CTF Writeup | `flavor = null`;保留原题目、解题思路和复现结构,不强制 IOC/ATT&CK |
208
+ | 4. JS/Web 签名逆向 | `flavor = null`;使用原概述 → 定位 → 算法 → 复现骨架,不套 malware |
209
+ | 恶意软件 / APT 专项 | 显式选 `malware` 或 `apt` 全文骨架 |
210
+
211
+ **冲突解决**:§0 Evidence 链字段与 scope 门禁 **永远优先**;flavor 只改叙事顺序与专业外壳,不得删除 E/F/P。
212
+
213
+ ---
214
+
215
+ ## 5. 选型伪代码
216
+
217
+ ```
218
+ if user_requests_kaspersky or apt or threat_campaign:
219
+ flavor = apt
220
+ elif user_requests_huorong or vir_report or explicit_malware:
221
+ flavor = malware
222
+ else:
223
+ flavor = null # 原任务模板 + Base 中适用的元素
224
+ overlay = null
225
+ if user_requests_vuln_tech_report or cve_patch_analysis:
226
+ overlay = vuln # thin only; never a third default full flavor
227
+ emit(base_report)
228
+ if flavor in (malware, apt):
229
+ emit(report with flavor outline)
230
+ elif overlay == vuln:
231
+ emit(report with vuln thin outline)
232
+ ```
233
+
234
+ ---
235
+
236
+ ## 6. 完成检查清单(写报告末自检)
237
+
238
+ - [ ] 已选 flavor 或显式「任务模板 + 最小集」
239
+ - [ ] G1 概述存在且非空话
240
+ - [ ] §0 E/F/P 字段完整
241
+ - [ ] `malware` / `apt` 报告有 IOC 表(或 n/a+原因)
242
+ - [ ] `malware` / `apt` 报告有可执行建议/处置
243
+ - [ ] 无 flavor 的任务没有被套入 malware/APT 专属章节
244
+ - [ ] uln 仅在漏洞任务启用;含概述/分析/防护骨架与 E/F/P;无未授权 PoC 武器化
245
+ - [ ] 无厂商原文粘贴、无 placeholder/TODO
246
+ - [ ] 导入表等硬门 Evidence 已进入静态/技术分析(若本任务做过二进制分析)
247
+
248
+ ---
249
+
250
+ ## 7. 来源登记
251
+
252
+ - Kaspersky Securelist, “Updated MATA attacks industrial companies in Eastern Europe”: <https://securelist.com/updated-mata-attacks-industrial-companies-in-eastern-europe/110829>(结构参考;访问日期:2026-08-11)
253
+ - 火绒安全公开技术文章入口:<https://www.huorong.cn/>(站点入口;访问日期:2026-08-11。具体文章 URL、标题和访问日期应在实际引用时登记)
254
+ - ATT&CK 技术编号仅作为规范化映射,必须由本次 Evidence 支撑;不得把外部报告中的 IOC 自动带入当前报告。
255
+
256
+ ---
257
+
258
+ ## 8. 非目标
259
+
260
+ - 不维护 Mandiant/CrowdStrike/奇安信等额外全文模板(结构已由双 flavor + 可选 thin overlay 覆盖常见需求)。
261
+ - 不把 `vuln` 升级为与 malware/apt 并列的默认全文 flavor。
262
+ - 不自动爬取厂商站点填报告。
263
+ - 不因 flavor 降低 Evidence 契约或授权范围。
@@ -0,0 +1,197 @@
1
+ ---
2
+ name: dotnet-reverse
3
+ description: ".NET/C# binary reverse engineering: managed PE analysis, dnSpyEx debugging, de4dot deobfuscation (ConfuserEx/SmartAssembly/Babel), IL patching, NativeAOT targets, and analysis of red-team Sharp* tooling."
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
+ # .NET / C# 逆向作业规范
13
+ ## When to Use
14
+
15
+ - Analyzing a .NET assembly, obfuscated C# product, or native-AOT binary.
16
+ - Understanding the internals of Sharp* red-team tools before use or defense.
17
+
18
+
19
+ ## 适用范围
20
+
21
+ 当任务属于以下场景时优先使用本 skill:
22
+
23
+ - 识别并逆向 .NET / C# 编译产物(托管 PE / .exe / .dll)
24
+ - 分析红队 Sharp* 工具链(Rubeus、SharpHound、SharpShell 等)
25
+ - 脱混淆 ConfuserEx / SmartAssembly / Babel / Eazfuscator / .NET Reactor 等壳
26
+ - 逆向 .NET loader / info-stealer / RAT 的解密与 C2 逻辑
27
+ - 对 C# 程序做 patch(改判断、改常量、keygen)
28
+ - 分析 IL2CPP 之前的 Mono/Unity 托管层(注意:IL2CPP 编译后是 native,走 `reverse-engineering/` + seed-014)
29
+
30
+ 如果目标是纯 native 二进制(C/C++/Go/Rust 编译、无 CLR),请改用 `reverse-engineering/`、`ida-reverse/` 或 `radare2/`。
31
+
32
+ ## 核心原则
33
+
34
+ - **先识别再下手**:先确认是 .NET 托管程序(PE 头 CLR + `#~` / `#Strings` 流 + mscoree `_CorExeMain`),再决定走 dnSpy 而非 IDA
35
+ - **IL 优先于 C#**:dnSpyEx 的 C# 反编译器会丢失/扭曲信息(编译器生成的状态机、async/await、yield),关键判断与 patch 必须切到 **IL 编辑器**,C# 视图只用于快速浏览
36
+ - **de4dot 先行**:遇到混淆器先 `de4dot` 脱一轮再做静态分析,否则字符串/控制流全是乱的
37
+ - **MCP 联动**:环境里若注册了 dnSpy MCP(`dnspy_*` 工具),优先走 MCP 面做 decompile / IL inspection,避免来回切 GUI
38
+ - **证据化输出**:脱混淆产物、提取的配置/C2/key、patch diff 都要落盘
39
+
40
+ ## 工具链映射
41
+
42
+ | 能力 | 首选 | 备注 |
43
+ |------|------|------|
44
+ | 反编译 + 调试 + patch | **dnSpyEx** | 王牌,唯一带 IL 编辑器的 GUI;老 dnSpy 已停更,用 Ex 分支 |
45
+ | 轻量 CLI / headless 反编译 | **ILSpy** (`ilspycmd`) | 适合批量、脚本化、Linux/macOS |
46
+ | 脱混淆 | **de4dot** | ConfuserEx 全家桶、SmartAssembly 等主流壳的默认解 |
47
+ | 混淆器识别 | **Detect It Easy (DIE)** / **file** | 先判断壳类型再决定 de4dot 参数 |
48
+ | 编程化操作 IL | **dnlib** | 写 C# 脚本批量改 metadata / 字符串解密器 |
49
+ | AI 直接操作 | **dnSpy MCP** | `dnspy_decompile` / `dnspy_inspect_il` 等工具面 |
50
+
51
+ > 前置:Windows 主机装 dnSpyEx + de4dot(choco 或 release);Linux/macOS 用 `ilspycmd` + `dotnet runtime`。详见 `references/sharp-tools.md` 的安装矩阵。
52
+
53
+ ## 六阶段工作流
54
+
55
+ ### 1. Identify(识别 .NET)
56
+
57
+ 确认目标是托管程序,别把 native PE 当 .NET 分析:
58
+
59
+ ```powershell
60
+ # Windows
61
+ file target.exe # "PE32 executable ... for MS Windows" 不够
62
+ # 关键:看有没有 CLR
63
+ powershell -c "[System.Reflection.AssemblyName]::GetAssemblyName('target.exe')"
64
+ # 或
65
+ dnSpyEx 直接拖进去 —— 能打开就是托管
66
+
67
+ # 通用
68
+ strings target.exe | grep -iE "mscoree|_CorExeMain|mscorlib|System\\."
69
+ ```
70
+
71
+ **.NET 识别标志:**
72
+ - PE 头 `Data Directory[14]` (CLR Runtime Header) 非零
73
+ - `mscoree.dll` 导入 / `_CorExeMain` 入口
74
+ - `#~`、`#Strings`、`#US`、`#GUID`、`#Blob` metadata 流
75
+ - `mscorlib` / `System.Private.CoreLib` 字符串
76
+
77
+ **NativeAOT 例外:** 编译成 native,没有 CLR 头,但有 `System.Private.CoreLib` 字符串和重构过的类型元数据 —— 这类走 `reverse-engineering/`(IDA/r2),本 skill 仅做识别提示。
78
+
79
+ ### 2. Detect(检测混淆器)
80
+
81
+ ```powershell
82
+ # DIE 快速识别
83
+ diec target.exe # Detect It Easy CLI
84
+ # 或拖进 dnSpyEx,看是否大量乱码类名 / 控制流变形
85
+ ```
86
+
87
+ 常见混淆器 → 脱壳策略(详见 `references/obfuscators.md`):
88
+
89
+ | 混淆器 | 特征 | de4dot 处理 |
90
+ |--------|------|------------|
91
+ | ConfuserEx (1.0.0 / 2.x) | `<module>` anti-tamper、控制流变形、字符串加密 | `de4dot target.exe` 通常自动识别 |
92
+ | SmartAssembly | `circular`/`string encoding`、资源压缩 | `de4dot target.exe` |
93
+ | Babel.NET | 方法体加密、控制流 | `de4dot target.exe` |
94
+ | Eazfuscator.NET | 字符串/资源加密 | `de4dot`,部分版本需手动 |
95
+ | .NET Reactor | anti-tamper + necrobit | `de4dot`,新版可能失败需手动 |
96
+
97
+ ### 3. Deobfuscate(脱混淆)
98
+
99
+ ```powershell
100
+ # de4dot 默认自动识别大多数壳
101
+ de4dot target.exe -o target-clean.exe
102
+
103
+ # 指定类型(自动识别失败时)
104
+ de4dot --type cfze target.exe # ConfuserEx
105
+ de4dot --type sa target.exe # SmartAssembly
106
+
107
+ # 多层混淆 / de4dot 报 unknown
108
+ de4dot --detect target.exe # 看它识别成什么
109
+ # 可能要先 patch anti-tamper 再 de4dot(见 references/obfuscators.md)
110
+ ```
111
+
112
+ 产出:`target-clean.exe`,后续分析用它。**保留原始样本**做对照。
113
+
114
+ ### 4. Static Analyze(静态分析)
115
+
116
+ dnSpyEx 加载脱壳后样本:
117
+
118
+ - **C# 视图**:快速浏览类结构、方法签名、字符串(用于定位)
119
+ - **IL 视图**:关键判断、加密逻辑、状态机必须看 IL(右键 → Edit IL 或 IL 视图)
120
+ - 找入口:`Main` / `Startup` / 模块初始化器 (`Module .cctor`)
121
+ - 找关键逻辑:搜 `flag`、`password`、`verify`、`check`、`encrypt`、`http`、`Config`
122
+
123
+ ```text
124
+ 定位字符串 → 反向引用 → 找到使用它的方法 → IL 视图看判断逻辑
125
+ ```
126
+
127
+ ### 5. Dynamic(动态调试)
128
+
129
+ dnSpyEx 调试器:附加进程 / 启动调试,在关键方法下断点,观察运行时:
130
+ - 解密后的明文字符串(很多混淆器的字符串在运行时才解密)
131
+ - C2 地址、配置解密结果
132
+ - 异常驱动的控制流(anti-debug 常用 `try/catch` 隐藏真实路径)
133
+
134
+ > .NET 动态调试比 native 友好得多 —— 能直接看到对象值、字符串内容。优先动态而非死磕静态。
135
+
136
+ ### 6. Patch(按需修改)
137
+
138
+ ```text
139
+ dnSpyEx → 右键方法 → Edit Method (C#) 或 Edit IL
140
+ - 改判断:ldc.i4.0 → ldc.i4.1(false→true)
141
+ - 改常量:直接编辑字符串/数字
142
+ - 删除校验:nop 掉整段
143
+ File → Save Module → 替换原文件
144
+ ```
145
+
146
+ **IL patch 可靠性 > C# patch**:C# 重编译可能失败(缺引用、语法不对),IL 编辑几乎不会失真。详见 `references/common-workflow.md`。
147
+
148
+ ## 触发场景路由
149
+
150
+ 用户说这些时进入本 skill:
151
+ - ".NET / C# 二进制逆向" / "C# 程序反编译"
152
+ - "dnSpy 分析" / "dnSpyEx patch"
153
+ - "ConfuserEx / SmartAssembly / Babel 脱混淆 / 脱壳"
154
+ - "Sharp* 工具分析"(Rubeus / SharpHound / SharpShell)
155
+ - ".NET malware / loader / info-stealer 逆向"
156
+ - "C# 程序 patch / keygen / 修改判断"
157
+
158
+ ## 何时切出
159
+
160
+ - IL2CPP 编译的 Unity 游戏 → `reverse-engineering/` + `seed-014_unity-il2cpp-reverse.md`(IL2CPP 是 native,不走 dnSpy)
161
+ - NativeAOT 产物 → `reverse-engineering/`(同上,native)
162
+ - 纯 native PE(无 CLR)→ `reverse-engineering/` / `ida-reverse/`
163
+ - 需要符号/函数批量迁移到别的版本 → `binary-diff/`
164
+ - 需要画攻击路径 / 调用链图 → `diagram-generator/`
165
+
166
+ ## 路由上下文
167
+
168
+ **上游入口**: `skills/SKILL.md`(总控)、`routing.md`
169
+ **下游出口**:
170
+ - IL2CPP / NativeAOT(native)→ `reverse-engineering/`
171
+ - 深度 native .so/.dll 段分析 → `ida-reverse/` / `radare2/`
172
+ - 需要 AI 直接操作 dnSpy → 注册并联动 dnSpy MCP(见 `references/sharp-tools.md`)
173
+
174
+ **同级关联模块**:
175
+ - `reverse-engineering/languages-compiled.md`(.NET 简介指向本模块)
176
+ - `apk-reverse/`(Xamarin/MAUI Android 逆向可切回本模块看 C# 层)
177
+
178
+ ## 参考文档
179
+
180
+ - [references/obfuscators.md](references/obfuscators.md) — ConfuserEx / SmartAssembly / Babel / Eazfuscator / .NET Reactor 脱混淆详解 + anti-tamper 绕过
181
+ - [references/common-workflow.md](references/common-workflow.md) — 完整工作流、IL patch 可靠性、字符串解密器提取、状态机识别
182
+ - [references/sharp-tools.md](references/sharp-tools.md) — 红队 Sharp* 工具分析、工具安装矩阵、dnSpy MCP 集成、社区资源索引
183
+
184
+ ## 任务完成自检
185
+
186
+ - [ ] 是否确认过 CLR / 托管身份(或已 SWITCH 出本 skill)?
187
+ - [ ] 混淆样本是否先 de4dot / 等价脱壳再深分析?
188
+ - [ ] 关键逻辑是否用 IL 视图验证(而非只看 C# 伪代码)?
189
+ - [ ] 产物(clean 样本 / 配置 / patch diff)是否落盘且可复现?
190
+ - [ ] 是否提供了下一步菜单或报告出口?
191
+
192
+ ## Limitations
193
+
194
+ - NativeAOT and trimmed builds lose most metadata; expect native-style RE.
195
+ - Some commercial obfuscators require manual unpacking steps.
196
+
197
+ > Adapted from [zhaoxuya520/reverse-skill](https://github.com/zhaoxuya520/reverse-skill) (MIT).
@@ -0,0 +1,171 @@
1
+ # .NET 逆向通用工作流
2
+
3
+ 完整工作流细节、IL patch 可靠性、字符串解密器提取、状态机识别、dnlib 脚本化。
4
+
5
+ ## 完整工作流(端到端)
6
+
7
+ ```text
8
+ 1. Identify → 确认是 .NET 托管程序(不是 native)
9
+ 2. Detect → DIE / de4dot --detect 识别混淆器
10
+ 3. Deobf → de4dot 脱混淆(保留原样本)
11
+ 4. Static → dnSpyEx 浏览 C# 视图定位,IL 视图看关键逻辑
12
+ 5. Dynamic → dnSpyEx 调试器在关键方法下断,看运行时明文
13
+ 6. Patch → IL 编辑器修改,Save Module
14
+ ```
15
+
16
+ 每一步的产物要落盘:原样本 `target.exe` → 脱壳 `target-clean.exe` → patch 后 `target-patched.exe`。
17
+
18
+ ## IL patch vs C# patch 可靠性
19
+
20
+ **核心结论:关键修改用 IL 编辑器,不要用 C# 编辑器。**
21
+
22
+ | 维度 | C# 编辑器 (Edit Method C#) | IL 编辑器 (Edit IL) |
23
+ |------|---------------------------|---------------------|
24
+ | 编译失败风险 | 高(缺引用、语法、lambda 重写失败)| 几乎为零 |
25
+ | 信息保真 | 编译器重新生成 IL,可能与原 IL 不同 | 原样替换,逐指令改 |
26
+ | 适用 | 改个字符串、改个常量、简单逻辑 | 改判断、删校验、改控制流 |
27
+ | async/await/状态机 | 经常编译失败或扭曲 | 直接改状态机字段,可靠 |
28
+
29
+ dnSpyEx 的 C# 反编译器是基于只读反编译 + 尝试重编译,对编译器生成的代码(状态机、闭包、`yield`)重编译极易失败。IL 编辑器是逐指令编辑,所见即所得。
30
+
31
+ ### 典型 IL patch 模式
32
+
33
+ ```text
34
+ 改判断(if (check) → 永远 true):
35
+ 原: call bool Foo::Check()
36
+ brfalse.s SKIP
37
+ 改: ldc.i4.1 ; push true
38
+ brfalse.s SKIP ; 现在永远不跳,SKIP 不执行
39
+ 或更直接:
40
+ ldc.i4.1
41
+ ret ; 方法直接返回 true
42
+
43
+ 改判断(if (check) → 永远 false):
44
+ ldc.i4.0
45
+ ret
46
+
47
+ 删整段校验:
48
+ 全部 nop,或改成 ret + 正确返回值
49
+
50
+ 改字符串常量:
51
+ C# 编辑器改字符串通常 OK(ldstr 直接换 token),但若字符串在资源/加密里则要改解密逻辑
52
+
53
+ 改数字常量:
54
+ ldarg / ldc 指令直接改操作数
55
+ ```
56
+
57
+ ## 状态机识别(async/await / yield)
58
+
59
+ C# 的 `async/await` 和 `IEnumerator` yield 编译成**状态机**:编译器生成一个嵌套类,`MoveNext()` 里用 `state` 字段做 switch dispatch。dnSpyEx C# 视图会还原成 async,但反编译可能失真,IL 视图看 `MoveNext` 最准。
60
+
61
+ ```text
62
+ async/await 的 MoveNext 结构:
63
+ switch(this.<>1__state) {
64
+ case 0: ... await 前的逻辑; this.<>1__state = 1; await MoveNext;
65
+ case 1: ... await 后的逻辑;
66
+ }
67
+
68
+ 要 patch async 逻辑:改 MoveNext 里的 state 转移或具体 case 里的判断。
69
+ C# 编辑器改 async 几乎必失败 → 必须用 IL。
70
+ ```
71
+
72
+ ## 字符串解密器提取
73
+
74
+ 详见 `obfuscators.md`。这里补充 dnlib 脚本化批量解字符串:
75
+
76
+ ```csharp
77
+ // dnlib 脚本:扫描所有字符串解密器调用,运行时还原后写回
78
+ // 用法:dotnet script decrypt.csproj target.exe 0x06000012
79
+ using System;
80
+ using System.Reflection;
81
+ using dnlib.DotNet;
82
+ using dnlib.DotNet.Writer;
83
+ using dnlib.DotNet.Emit;
84
+
85
+ var module = ModuleDefMD.Load(args[0]);
86
+ var decryptorToken = uint.Parse(args[1], System.Globalization.NumberStyles.HexNumber);
87
+
88
+ // 找到解密方法,用反射调用它(需把 assembly 加载进 AppDomain)
89
+ // 遍历所有方法,把 call Decryptor(token) 替换成 ldstr "解密结果"
90
+ foreach (var type in module.GetTypes())
91
+ foreach (var method in type.Methods)
92
+ {
93
+ if (!method.HasBody) continue;
94
+ var instrs = method.Body.Instructions;
95
+ for (int i = 0; i < instrs.Count; i++)
96
+ {
97
+ // 识别 call 解密器模式,调用解密器拿明文,替换为 ldstr
98
+ // (此处省略反射调用解密器的样板,思路:加载原 assembly →
99
+ // MethodInfo.Invoke 拿明文 → instrs[i] = OpCodes.Ldstr + operand=明文)
100
+ }
101
+ }
102
+
103
+ var opts = new ModuleWriterOptions(module);
104
+ module.Write("target-decrypted.exe", opts);
105
+ ```
106
+
107
+ dnlib 是 .NET 元数据编程的事实标准,de4dot 内部就是用它。写自定义脱混淆脚本时首选。
108
+
109
+ ## 动态调试要点
110
+
111
+ dnSpyEx 调试器对 .NET 程序比 native 友好得多:
112
+
113
+ - **断点在方法入口**:右键方法 → Add Breakpoint
114
+ - **看对象值**:断住后 Locals / Watch 窗口直接看对象字段、字符串内容
115
+ - **内存写入**:可以直接改运行时变量值(Edit Value)
116
+ - **异常断点**:Debug → Exceptions,勾选要断的异常类型 —— 混淆器常用异常驱动控制流,断异常能看到真实路径
117
+
118
+ ### 异常驱动控制流
119
+
120
+ 部分混淆器把正常逻辑塞进 `try`,用 `throw` + `catch` 做跳转。静态看 IL 像异常处理,实际是控制流:
121
+
122
+ ```text
123
+ try { throw new CustomException(0x42); }
124
+ catch (CustomException e) {
125
+ switch(e.Code) {
126
+ case 0x42: 真实逻辑A; break;
127
+ case 0x43: 真实逻辑B; break;
128
+ }
129
+ }
130
+ ```
131
+
132
+ 下异常断点(断 `CustomException`),跟踪 `Code` 值流转,比硬啃 IL 快。
133
+
134
+ ## 模块初始化器(Module .cctor)
135
+
136
+ `.NET` 模块的静态构造函数(`<module>` 的 `.cctor`)在 assembly 加载时最先执行,混淆器常把 anti-tamper / 解密初始化放这里。分析顺序:
137
+
138
+ ```text
139
+ 1. 先看 <module>.cctor(Module .cctor)—— 解密/反调试初始化
140
+ 2. 再看 Program.Main / Startup
141
+ 3. anti-tamper 在 .cctor 里 → 先 patch .cctor 再脱壳
142
+ ```
143
+
144
+ ## 提取配置 / C2 / Key 的通用模式
145
+
146
+ 红队工具和 loader 常把配置加密嵌在资源或字段里,运行时解密:
147
+
148
+ ```text
149
+ 定位流程:
150
+ 1. strings 看有无明文 URL/IP(混淆后通常没有)
151
+ 2. 找 byte[] 字段 + 解密方法(AES/XOR)
152
+ 3. 动态断在解密方法的返回点,dump 解密后的明文
153
+ 4. 常见:AES-256-CBC with Key==IV(Codegate 2013 模式,见 reverse-engineering/tools.md .NET 段)
154
+ ```
155
+
156
+ 参考 `references/sharp-tools.md` 里红队工具的具体配置结构。
157
+
158
+ ## 与 reverse-engineering 的边界
159
+
160
+ - **IL2CPP / NativeAOT** → 编译成 native,没有 CLR 元数据 → 走 `reverse-engineering/`(IDA/r2),本 skill 仅做识别
161
+ - **托管 .NET**(标准 C# exe/dll、Mono/Unity 托管层、Xamarin)→ 本 skill
162
+ - **混合(native loader + .NET payload)** → loader 部分走 `reverse-engineering/`,dump 出 .NET payload 后切本 skill
163
+
164
+ ## 落盘产物清单
165
+
166
+ 每次 .NET 逆向任务建议产出:
167
+ - `target-original.exe`(原样本,不动)
168
+ - `target-clean.exe`(de4dot 脱壳后)
169
+ - `notes.md`(识别的混淆器、解密器 token、关键方法地址、配置/C2/key)
170
+ - `target-patched.exe`(patch 后,如需要)
171
+ - `il-diff.txt`(patch 前后 IL 对照,如做 patch)