Incident de sécurité ? Suspicion de compromission ? 09 71 18 27 69csirt@synacktiv.com

Pentest

Offensive CI/CD Intermédiaire - 2 jours - 2500€ HT

Description

Les environnements d'intégration continue et de déploiement continu (CI/CD) sont devenus essentiels au développement logiciel moderne. Les développeurs s'appuyant fortement sur l'automatisation pour la création, le test et le déploiement d'applications, ces plateformes sont devenues des cibles de premier plan. Sécuriser ces environnements et comprendre leurs vulnérabilités représente aujourd'hui un défi majeur pour les professionnels de la sécurité et les attaquants modernes.

Durant cette formation de deux jours, les participants découvriront une méthodologie offensive complète ciblant les deux solutions CI/CD les plus populaires : GitHub et GitLab. La formation est divisée en deux modules distincts, explorant en profondeur les concepts architecturaux, l'exploitation abusive des pipelines, le détournement de runners et la post-exploitation. À travers des environnements d'entreprise réalistes, les participants s'exerceront à des chaînes d'attaque complexes, allant de l'accès non authentifié aux dépôts via l'injection dans les pipelines jusqu'à la compromission complète de l'organisation et l'extraction de secrets.

  • 2 jours (14 heures)

  • 2 modules de formation intensifs suivant les étapes réalistes d'une intrusion CI/CD

  • Environnements d'entreprise dédiés simulant des organisations GitHub et GitLab complexes

  • Analyse approfondie des vulnérabilités réelles et des outils d'exploitation

Objectifs

  • Comprendre l'architecture et les enjeux de sécurité des environnements CI/CD modernes (GitHub et GitLab)
  • Identifier et exploiter les failles critiques dans les définitions de pipelines, les entrées non fiables et les configurations des runners
  • Extraire des secrets sensibles et exploiter les configurations OIDC pour accéder aux environnements cloud
  • Réaliser une simulation d'intrusion réaliste, de l'accès initial à l'exploitation avancée post-intrusion

Public et prérequis

Cette formation s'adresse aux personnes ayant des notions de sécurité offensive et souhaitant comprendre comment attaquer et sécuriser les environnements CI/CD. Elle est principalement destinée aux auditeurs, ingénieurs DevSecOps, administrateurs système et architectes de sécurité, mais aussi à tout profil technique souhaitant enrichir son parcours professionnel.

  • Pentesteurs / Red Teamers

  • Ingénieurs DevOps / DevSecOps

  • Administrateurs système

  • Architectes de sécurité

Une bonne maîtrise d'UNIX/Linux, de solides connaissances en réseaux et un intérêt marqué pour la sécurité offensive sont fortement recommandés.

Contenu

Jour 1 : GitHub

Architecture et gestion des identités et des accès (IAM) : Concepts fondamentaux des organisations GitHub, des dépôts et de la gestion des identités (utilisateurs, agents et applications GitHub). Authentification et autorisation : Jetons d’accès personnels (PAT) et étendues, clés SSH et système de rôles/ACL (qui peut créer des branches, effectuer des commits, des fusions ou consulter les journaux). Pipelines : Fonctionnement interne de GitHub Actions, définitions YAML, modules disponibles et stockage des variables (gestion des secrets et implications des branches protégées). Exploitation des pipelines : Injection de code malveillant via des entrées non fiables, injections d’expressions, artefacts dangereux et manipulation de l’environnement. Exploration des vecteurs d’attaque dans la chaîne d’approvisionnement, tels que le détournement de dépôts et l’abus de Dependabot. Runners et OIDC : Runners hébergés vs auto-hébergés. Architecture, enregistrement et techniques de détournement des Runners. Fonctionnement interne d’OIDC, génération de jetons et exploitation des liaisons de revendications faibles. Outils et automatisation : Utilisation d’Octoscan pour l’analyse statique des vulnérabilités et de NordStream pour l’extraction automatisée des secrets CI/CD.

Jour 2 : GitLab

Architecture et ACL : hiérarchies de projets et de groupes spécifiques à GitLab, et modèles d’autorisation avancés. Mécanismes d’authentification : flux d’identifiants/mots de passe, jetons d’accès personnels (PAT) et étendues, clés SSH et fournisseurs d’identité externes. Pipelines : configuration YAML de GitLab CI/CD, variables d’environnement spécifiques et implications de sécurité des variables et branches protégées. Implémentation et détournement des runners : enregistrement de l’agent GitLab, authentification, hiérarchie du système de fichiers et modes d’exécution (par exemple, Shell, Docker, Kubernetes). Techniques de détournement, d’exploitation et de pivotement à partir de ces runners (persistance, vol d’identité du runner, exploitation de Docker-in-Docker). Post-exploitation : interaction avec la console Ruby de GitLab, extraction avancée de secrets et accès direct aux dépôts depuis le système de fichiers sous-jacent. Défense et opérations : analyse des journaux de pipeline, identification des alertes de sécurité et suivi des activités CI/CD malveillantes.

Toutes les modalités de déroulement de la formation sont détaillées sur cette page.