Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
CICD-Goat-Vapt-Writeup — Writeup VAPT complet d'OWASP CICD-Goat — 9 flags CTFd capturés, 4 constats critiques + 5 à sévérité élevée (dont CVE-2024-23897) mappés à l'OWASP Top 10 CI/CD Security Risks, avec des PoC, des mesures de remédiation et des résumés prêts pour les entretiens. | Kitploit
Outils/GitHubGitHub/dheeraj-jayaswal/cicd-goat-vapt-writeup
ReconnaissanceAnalyse des VulnérabilitésExploitationCTFTests d'IntrusionDevSecOpsMauvaise ConfigurationApprentissage et Éducation

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
GitHub
dheeraj-jayaswal/cicd-goat-vapt-writeup

CICD-Goat-Vapt-Writeup

Writeup VAPT complet d'OWASP CICD-Goat — 9 flags CTFd capturés, 4 constats critiques + 5 à sévérité élevée (dont CVE-2024-23897) mappés à l'OWASP Top 10 CI/CD Security Risks, avec des PoC, des mesures de remédiation et des résumés prêts pour les entretiens.

Voir le dépôt
14il y a 9 joursPas encore vérifié
Partager

CICD-Goat VAPT Writeup

Une évaluation complète des vulnérabilités et un test d'intrusion contre OWASP CICD-Goat — un environnement CI/CD délibérément vulnérable (Jenkins, Gitea, GitLab, CTFd) — cartographié de bout en bout par rapport aux OWASP Top 10 CI/CD Security Risks.

Made for OWASP CICD-Goat Findings Flags Captured License

LinkedIn Location


🧭 Comment cela s'articule avec mes autres dépôts


Pourquoi ce dépôt existe

La plupart des writeups sur la sécurité CI/CD restent soit purement théoriques (une slide expliquant la « poisoned pipeline execution »), soit purement dans la course au flag CTF (une ligne « voici le flag, suivant »). Ce dépôt tente de faire ni l'un ni l'autre : chaque constat ci-dessous est une vulnérabilité entièrement validée et étayée par un PoC, cartographiée à une catégorie de risque OWASP CI/CD-SEC spécifique, rédigée de la manière dont vous voudriez réellement l'expliquer lors d'un entretien ou dans un rapport client réel — y compris les impasses, les mauvaises hypothèses et la façon dont elles ont été corrigées.

Si vous préparez un entretien en AppSec/DevSecOps/sécurité CI-CD, si vous préparez une mission de pentest impliquant une chaîne d'outils CI/CD, ou si vous voulez simplement une visite concrète et pratique de ce à quoi ressemblent réellement la « Poisoned Pipeline Execution » ou une « Insufficient Credential Hygiene » sur le réseau — ceci est écrit pour vous.

Environnement cible

Règles d'engagement complètes : docs/00-engagement-overview.md.

⚠️ Tous les tests de ce dépôt ont été réalisés contre le lab Docker Compose local, jetable et intentionnellement vulnérable du testeur. Aucun système de production, infrastructure partagée ou donnée tierce n'a été impliqué. Déployez votre propre copie de CICD-Goat depuis le dépôt officiel avant d'essayer quoi que ce soit de tout cela vous-même.

Résultats en un coup d'œil

Plus 6 constats informatifs / de support (contrôles positifs, confirmations de frontières RBAC, divulgation d'informations mineure) dans findings/informational/.

Comment les constats s'enchaînent

Plusieurs constats ne sont pas indépendants — l'un permet ou complète directement un autre. C'est la partie qui a tendance à impressionner en entretien plus que n'importe quel constat isolé :

Diagramme de la kill chain croisée des constats CICD-Goat montrant F-010 menant à un push non autorisé, le contournement d'auto-merge de F-013, la lecture arbitraire de fichiers CVE-2024-23897 de F-016 alimentant les captures de flags et F-018, et le runner GitLab malveillant de F-017 complétant F-014

9 des 11 défis CTFd résolus et flags vérifiés — voir la référence croisée complète des défis, y compris un cas documenté honnêtement (Dormouse/flag9) où la frontière de contrôle d'accès a tenu sous attaque soutenue.

Table des matières complète

Chaque fichier ci-dessous est directement lié — l'arborescence des dossiers montre simplement comment ils sont organisés.

📋 Documents de mission

🔍 Reconnaissance

FichierContenu
recon/01-fingerprinting.mdPhase 1 — empreinte non authentifiée de chaque service du périmètre
recon/02-authenticated-enumeration.mdPhase 2 — énumération authentifiée une fois l'accès initial obtenu

🚨 Constats critiques et élevés

ℹ️ Constats informatifs / de support

🎯 CTFd

FichierContenu
ctfd/challenge-cross-reference.mdRéférence croisée complète flag par flag, y compris l'investigation bloquée Dormouse/flag9 et la correction Duchess/flag4

Structure du dépôt

root@kitploit:~
.
├── docs/                          # Engagement context, methodology, mappings, remediation, interview prep
│   ├── 00-engagement-overview.md
│   ├── 01-methodology.md
│   ├── 02-owasp-top10-cicd-mapping.md
│   ├── 03-remediation-roadmap.md
│   ├── 04-interview-prep.md
│   └── 05-lessons-learned.md
├── recon/                         # Phase 1 & 2 — fingerprinting and authenticated enumeration
│   ├── 01-fingerprinting.md
│   └── 02-authenticated-enumeration.md
├── findings/                      # One file per confirmed finding, full PoC + remediation
│   ├── F-010-...md ... F-021-...md
│   └── informational/             # INFO/LOW severity supporting observations
├── ctfd/
│   └── challenge-cross-reference.md
└── LICENSE.md

Parcours de lecture

  • Vous voulez juste les points saillants ? Commencez par le tableau des résultats ci-dessus, puis lisez F-010, F-013, F-016 et F-017 — les quatre kill chains de bout en bout les plus complètes.
  • Vous préparez un entretien ? Allez directement à docs/04-interview-prep.md — des résumés oraux d'un paragraphe pour chaque constat majeur, plus les questions de suivi courantes.
  • Vous construisez/durcissez un pipeline CI/CD ? Allez directement à docs/03-remediation-roadmap.md — une checklist priorisée et actionnable.
  • Nouveau dans les concepts de sécurité CI/CD ? Commencez par docs/02-owasp-top10-cicd-mapping.md pour la taxonomie de référence autour de laquelle tout ce dépôt est organisé.

À propos des OWASP Top 10 CI/CD Security Risks

Chaque constat ici est cartographié par rapport aux OWASP Top 10 CI/CD Security Risks (2023) — un tableau de référence complet (CICD-SEC-1 à CICD-SEC-10) se trouve dans docs/02-owasp-top10-cicd-mapping.md, car il est constamment référencé tout au long des constats individuels.

Avertissement

Ce dépôt documente des tests réalisés exclusivement contre un lab d'entraînement local, auto-hébergé et intentionnellement vulnérable (OWASP CICD-Goat), à des fins éducatives et de portfolio. Rien ici ne cible, ne référence ou n'a été testé contre un système de production, un service tiers ou un identifiant réel. N'utilisez aucune technique de ce dépôt contre des systèmes que vous ne possédez pas ou pour lesquels vous ne disposez pas d'une autorisation écrite explicite de test.


🧠 Philosophie de test

« Les meilleurs testeurs d'intrusion pensent d'abord comme des développeurs et ensuite comme des attaquants. Si vous comprenez pourquoi le code a été écrit d'une certaine manière, vous trouverez toujours plus qu'un scanner ne le fera jamais. »

J'aborde chaque mission en trois phases :

1. Comprendre avant d'attaquer — Lisez l'application. Utilisez-la comme un vrai utilisateur. Comprenez la logique métier avant de toucher au moindre outil.

2. Manuel d'abord, outils ensuite — Les scanners automatisés trouvent ce pour quoi ils sont configurés. Les bugs intéressants sont toujours trouvés en réfléchissant, pas en scannant.

3. Rapporter comme un développeur — Un constat que les développeurs ne peuvent pas comprendre ou reproduire est un constat qui ne sera pas corrigé.


👤 À propos de moi

  • Nom — Dheeraj Kumar Jayaswal
  • Rôle — Technology Lead – Offensive Security, Infosys Limited
  • Focus — Tests d'intrusion d'applications Web et d'API
  • Expérience — 15+ ans dans l'IT · 6+ ans en sécurité offensive
  • Atout — Ancien développeur full-stack (ASP.NET / SQL Server) — je pense comme un développeur, j'attaque comme un hacker
  • Domaines — Impôt sur le revenu · Banque · Commerce de détail · E-commerce · Logistique de fret · Éducation

🏅 Certifications

Orientation future — Red Teaming : OSCP → CRTO → OSEP, CRTP, CRTL, CRTE


📄 Licence

Ce contenu est sous licence CC BY 4.0. Vous êtes libre de réutiliser ou d'adapter tout ou partie de ce writeup — attribuez simplement clairement à Dheeraj Kumar Jayaswal avec un lien vers ce dépôt. CICD-Goat lui-même est un projet distinct de Cider Security — allez mettre une étoile à l'original.


🤝 Contact

LinkedIn — ouvert au conseil, à la collaboration et aux discussions sur la sécurité.

Les retours, corrections et PR (par exemple pour flag9/Dormouse, ou le suivi Duchess/flag4 dans la référence croisée CTFd) sont les bienvenus — voir CONTRIBUTING.md.

Télécharger l’outil
DépôtContenu
CICD-Goat-Vapt-Writeup (ce dépôt)Writeup VAPT complet contre OWASP CICD-Goat — 16 constats dont CVE-2024-23897, cartographiés aux OWASP Top 10 CI/CD Security Risks, avec PoC et résumés prêts pour l'entretien
From-Dev-To-AttackerMon journal de terrain phare — 67 writeups originaux sur les schémas de vulnérabilités, écrits du point de vue d'un développeur, avec un cadrage de l'impact métier en entreprise dans les domaines de l'impôt sur le revenu, de la banque, du commerce de détail, du e-commerce, de la logistique de fret et de l'éducation
From-Pentester-To-Red-TeamerMa feuille de route structurée sur 24 mois pour passer du pentest Web/API au Red Teaming — phases, labs, certifications et progression suivie ouvertement au fur et à mesure
AppSec-From-The-TrenchesRéférence d'outils et de méthodologie de pentest — comment j'utilise réellement Burp Suite, Nmap, Metasploit, Hydra, Hashcat, et plus encore, ainsi que ma méthodologie WAPT
API-From-The-TrenchesSérie approfondie sur la sécurité des API — couverture de l'OWASP API Top 10, BOLA, attaques JWT, tests GraphQL, méthodologie complète
Bug-Bounty-Hunting-CompanionRapports de bug bounty réels et divulgués publiquement, découpés en checklists reproductibles
DarkWeb-From-The-TrenchesMéthodologie de renseignement sur les menaces et d'OSINT sur le dark web — surveillance des fuites d'identifiants, suivi des ransomwares, TI de pré-engagement
.pcap-ArsenalCaptures de paquets organisées par protocole, pour l'analyse et l'apprentissage aux niveaux Web/API/Réseau
ChampValeur
CibleOWASP CICD-Goat — déploiement Docker Compose local
Type de missionLab d'apprentissage auto-dirigé autorisé (grey-box)
Stack techniqueJenkins 2.332.1, Gitea 1.16.5, GitLab 15.11.13-ee, CTFd, Docker Compose
Périmètrelocalhost:3000 (Gitea), :8080/:50000 (Jenkins), :4000 (GitLab), :8000 (CTFd), :8008 (prod-sim)
MéthodologiePhase 0–3 (Périmètre → Empreinte → Identification des vulnérabilités → Exploitation)
IDTitreSévéritéCartographie OWASP CI/CDFlag CTFd
F-010Exposition de secrets dans les logs de console de build Jenkins → vol d'identifiants → écriture non autorisée dans le dépôtCRITICALCICD-SEC-6, -4, -2flag1, flag2
F-013La logique d'auto-merge non sécurisée contourne la revue de code (heuristique de diff mot à mot sur l'ensemble de la PR)CRITICALCICD-SEC-1, -5flag10
F-016CVE-2024-23897 — lecture arbitraire de fichiers via Jenkins CLI sur le contrôleurCRITICALCICD-SEC-7flag8
F-017Token d'enregistrement de runner partagé GitLab → vol de secrets CI/CD à l'échelle de l'instanceCRITICALCICD-SEC-2, -6flag11
F-019Exécution de code sur le nœud contrôleur Jenkins via le contournement du label d'agentCRITICALCICD-SEC-5, -4flag5
F-018Dépôt de pipeline découplé + contournement du filtre d'exclusion de brancheHIGHCICD-SEC-4, -6flag3
F-020Le système de fichiers d'agent partagé expose les identifiants d'un job FreeStyleHIGHCICD-SEC-6, -5flag6
F-021Le contournement de la configuration Checkov SAST permet une mauvaise configuration IaC non détectéeHIGHCICD-SEC-1, -8flag7
F-014Clé secrète de session Flask dérivée d'une variable de pipeline CI/CDHIGHCICD-SEC-6flag11 (via F-017)
FichierContenu
docs/00-engagement-overview.mdRègles d'engagement, périmètre, stack technique
docs/01-methodology.mdMéthodologie de test phase par phase utilisée tout au long
docs/02-owasp-top10-cicd-mapping.mdTaxonomie de référence complète CICD-SEC-1 à -10
docs/03-remediation-roadmap.mdChecklist de remédiation priorisée et actionnable
docs/04-interview-prep.mdRésumés oraux de chaque constat + questions de suivi probables
docs/05-lessons-learned.mdRétrospective — ce qui a fonctionné, ce qui n'a pas fonctionné, ce qu'il faut faire différemment la prochaine fois
Fichier
F-010 — Exposition de secrets Jenkins via les logs de console
F-013 — Contournement de l'auto-merge non sécurisé
F-014 — Clé secrète Flask issue d'une variable CI/CD
F-016 — CVE-2024-23897 lecture arbitraire de fichiers via Jenkins CLI
F-017 — Vol de secret via le token de runner GitLab
F-018 — Contournement de l'exclusion de branche du pipeline découplé
F-019 — RCE du contrôleur Jenkins via le contournement du label d'agent
F-020 — Fuite d'identifiants via le système de fichiers d'agent partagé
F-021 — Contournement de la configuration Checkov SAST
Fichier
F-006 — Lacune d'énumération des dépôts privés
F-007 — Utilisateur Jenkins supplémentaire
F-009 — Job Read vs ExtendedRead
F-011 — Utilisation correcte de withCredentials (contrôle positif)
F-012 — Coupure de connexion à l'API des identifiants
F-015 — Énumération anonyme du registre
CertificationOrganismeStatut
Certified Ethical Hacker (CEH)EC-Council✅ 2021
AWS Certified Solutions Architect – AssociateAmazon Web Services✅ 2022
AWS Certified Cloud PractitionerAmazon Web Services✅ 2022
Executive Certificate in Cyber SecurityIIT Kanpur✅ 2026
OSWE — OffSec Web Expert (parcours OSCE3)OffSec🔄 En cours