Penetration Testing CICD
devsecopsDéfinition
Le Penetration Testing CI/CD (pentest de la chaîne CI/CD) est une évaluation de sécurité offensive ciblant spécifiquement l'infrastructure CI/CD d'une organisation — les systèmes Jenkins/GitLab CI/GitHub Actions, les registres d'artefacts, les configurations de déploiement, et les secrets stockés dans ces environnements. Contrairement au pentest applicatif classique qui cible les applications en production, le pentest CI/CD s'intéresse à l'infrastructure qui produit et déploie ces applications, souvent la "crown jewel" d'une organisation du point de vue d'un attaquant. Un attaquant qui compromet un pipeline CI/CD peut modifier le code source avant compilation, injecter du code malveillant dans les artefacts de build, exfiltrer tous les secrets stockés dans les systèmes CI (credentials cloud, clés API, certificats), déployer directement du code malveillant en production sans passer par les processus de revue, et maintenir un accès persistant via des backdoors dans les images Docker ou les packages publiés. La valeur d'un pipeline CI/CD compromis est souvent supérieure à celle d'une application en production, d'où l'importance de le tester régulièrement. Les vecteurs d'attaque testés lors d'un pentest CI/CD incluent : la compromission des credentials de service (tokens d'API GitLab/GitHub, credentials AWS/GCP des runners), l'injection dans les définitions de pipeline (modification d'un .gitlab-ci.yml ou .github/workflows/ par un développeur compromis ou via une PR malveillante), l'exfiltration de secrets CI (les variables CI sont-elles accessibles via des logs verbeux ?, via des artefacts de build ?, via des environments partagés entre branches de features et branches protégées ?), la compromission des registres d'artefacts (un attaquant ayant accès au registre peut substituer des images), et les attaques de déplacement latéral depuis un runner CI (depuis l'environnement d'exécution d'un runner, quels systèmes internes sont accessibles ?). Le pentest CI/CD est généralement conduit par des Red Teams spécialisées en DevOps Security ou par des consultants de sécurité avec une expertise DevSecOps. Des ressources comme le TOP 10 CI/CD Security Risks (OWASP) et le CI/CD Security Attacks (Mercari Research) guident l'approche méthodologique.
OWASP Top 10 CI/CD Security Risks
Le OWASP Top 10 CI/CD Security Risks définit les risques à tester lors d'un pentest CI/CD : CICD-SEC-1 (Insufficient Flow Control Mechanisms — possibilité de merger sans revue), CICD-SEC-2 (Inadequate Identity and Access Management — credentials trop permissifs), CICD-SEC-3 (Dependency Chain Abuse — attaques supply chain), CICD-SEC-4 (Poisoned Pipeline Execution — injection dans les pipelines), CICD-SEC-5 (Insufficient PBAC — Pipeline-Based Access Controls), CICD-SEC-6 (Insufficient Credential Hygiene — secrets exposés dans les logs), CICD-SEC-7 (Insecure System Configuration), CICD-SEC-8 (Ungoverned Usage of 3rd Party Services), CICD-SEC-9 (Improper Artifact Integrity Validation), CICD-SEC-10 (Insufficient Logging and Visibility).
Exfiltration de secrets CI : techniques de test
Les techniques de test d'exfiltration de secrets CI : 1) Vérification que les secrets CI ne sont pas logués (forcer une erreur dans une étape utilisant un secret et vérifier que la valeur n'apparaît pas dans les logs). 2) Test d'accès aux secrets depuis une PR non approuvée (les secrets de l'environnement prod sont-ils accessibles depuis un workflow déclenché par une PR externe ?). 3) Analyse des artefacts de build (les artifacts téléchargeables contiennent-ils des variables d'environnement ou des fichiers .env ?). 4) Test de la durée de vie des tokens CI (un token de service CI révoqué est-il immédiatement invalide ou reste-t-il fonctionnel ?).
Étendue et périmètre d'un pentest CI/CD
Un pentest CI/CD définit un périmètre précis : systèmes in-scope (infrastructure CI spécifique, registres, systèmes de déploiement), accès initiaux fournis (compte développeur standard, compte CI service account), objectifs (exfiltration de secrets de production, modification d'un artefact déployé, accès à un compte cloud en production), et règles d'engagement (pas de modification des environnements de production, fenêtre temporelle définie). Le pentest CI/CD peut être combiné avec un Red Team Exercise où un attaquant cherche à atteindre des objectifs business via la compromission du pipeline.
Articles liés
Expert en cybersécurité offensive et intelligence artificielle. Pentest, audit et développement IA sur-mesure.
Services
- Audit Infrastructure
- Audit Kubernetes
- Audit Microsoft 365
- Audit Sécurité Réseau
- Analyse de Risques
- Audit Active Directory
- Audit Application Web
- Audit Cloud (AWS/Azure/GCP)
- Audit Messagerie
- Audit API (OWASP Top 10)
- Audit DevSecOps & CI/CD
- Audit Code Source (SAST)
- Audit Postes de Travail
- Audit Sauvegarde & Résilience
- Audit OT/SCADA (IEC 62443)
- Développement IA
- Formations
Ressources
Projets & Outils
© 2026 Ayi NEDJIMI Consultants. Tous droits réservés.
Un projet cybersécurité ?
Expert dispo · Réponse 24h