Outillage de sécurité CI/CD — Guide de l’auditeur sur les catégories de contrôles

Guide orienté gouvernance des catégories de contrôles de sécurité CI/CD pour les auditeurs, responsables conformité et régulateurs

Les pipelines CI/CD sont l’épine dorsale de la livraison logicielle moderne. Pour les auditeurs et les responsables conformité, comprendre les contrôles de sécurité intégrés dans ces pipelines est essentiel pour évaluer si une organisation gère adéquatement les risques liés à la livraison logicielle.

Ce guide explique les principales catégories de contrôles de sécurité CI/CD — non pas comme des recommandations de produits, mais comme des domaines de gouvernance que les auditeurs doivent comprendre, vérifier et évaluer lors des revues de conformité.


Pourquoi les auditeurs doivent comprendre les contrôles de sécurité CI/CD

Les pipelines CI/CD modernes gèrent :

  • l’accès aux dépôts de code source
  • les processus automatisés de build et de packaging
  • l’intégration avec des services et dépendances tiers
  • le déploiement vers les systèmes de production

Chacune de ces étapes introduit des risques. Les auditeurs doivent pouvoir vérifier que des contrôles de sécurité appropriés sont en place à chaque étape, que ces contrôles sont appliqués de manière cohérente (pas simplement disponibles), et qu’ils produisent des preuves fiables et conservées.

Dans les environnements réglementés, la question n’est pas quels outils sont installés, mais si les bons contrôles sont actifs, appliqués et auditables.


Catégorie de contrôle 1 : Sécurité du code source et des dépôts

Ce qu’elle contrôle : L’accès au code source, l’autorisation des modifications de code, la prévention des modifications non autorisées et la détection de secrets dans les dépôts.

Preuves produites : Journaux de contrôle d’accès, configurations de protection des branches, enregistrements d’approbation des pull requests et résultats d’analyse de détection de secrets.

Ce que les auditeurs doivent vérifier :

  • Les règles de protection des branches sont appliquées (pas simplement documentées)
  • Toutes les modifications de code nécessitent une revue par les pairs et une approbation avant fusion
  • L’analyse des secrets s’exécute automatiquement sur chaque commit ou pull request
  • L’accès aux dépôts suit les principes du moindre privilège
  • Les journaux d’audit des modifications de code sont conservés pendant la période requise

Signaux d’alerte :

  • Des commits directs sur les branches principales sans revue
  • Des règles de protection des branches pouvant être contournées par les administrateurs
  • Aucune analyse de secrets en place, ou une analyse exécutée uniquement à la demande
  • Des permissions d’accès aux dépôts trop larges

Catégorie de contrôle 2 : Tests de sécurité statiques (SAST)

SAST (Static Application Security Testing) est un contrôle qui analyse le code source pour identifier les vulnérabilités de sécurité avant que les applications ne soient construites ou déployées. Il opère pendant les phases de développement et de build.

Ce qu’il contrôle : Les failles de sécurité au niveau du code, les schémas de codage non sécurisés et la conformité aux politiques du code personnalisé.

Preuves produites : Rapports d’analyse montrant les vulnérabilités identifiées, les classifications de sévérité, les décisions de politique (réussite/échec) et les données de tendance dans le temps.

Ce que les auditeurs doivent vérifier :

  • SAST s’exécute automatiquement sur chaque build ou pull request — pas uniquement à la demande
  • Des seuils de sévérité définis existent pouvant bloquer les builds ou les déploiements
  • Les résultats supprimés ou acceptés ont des justifications documentées et des dates d’expiration
  • Les résultats d’analyse sont conservés et liés à des builds et releases spécifiques
  • Le périmètre de l’analyse SAST couvre toutes les bases de code de production

Signaux d’alerte :

  • SAST est configuré mais pas appliqué — les builds continuent indépendamment des résultats
  • Un grand nombre de résultats supprimés sans justification documentée
  • Les résultats d’analyse ne sont pas conservés ou ne peuvent pas être tracés à des releases spécifiques
  • La couverture SAST n’inclut pas toutes les applications de production

Catégorie de contrôle 3 : Analyse de composition logicielle (SCA)

SCA (Software Composition Analysis) identifie les risques dans les bibliothèques tierces, les composants open source et leurs dépendances transitives. Ce contrôle est central pour la gestion des risques de la chaîne d’approvisionnement.

Ce qu’il contrôle : Les vulnérabilités connues dans les dépendances, la conformité des licences et la visibilité sur la chaîne d’approvisionnement logicielle.

Preuves produites : Inventaires de dépendances, Software Bills of Materials (SBOM), rapports de vulnérabilités pour les composants tiers et enregistrements de conformité des licences.

Ce que les auditeurs doivent vérifier :

  • SCA s’exécute automatiquement pendant les builds et produit des inventaires de dépendances actuels
  • Les dépendances vulnérables connues déclenchent des réponses définies (blocage, alerte ou acceptation documentée)
  • Les SBOM sont générés et conservés pour chaque release
  • La conformité des licences est activement surveillée
  • Les politiques de dépendances définissent ce qui est acceptable et ce qui nécessite une approbation

Signaux d’alerte :

  • Aucun inventaire de dépendances ou SBOM n’existe pour les applications de production
  • Les vulnérabilités critiques connues dans les dépendances ne sont pas traitées ou documentées
  • L’analyse SCA n’est pas intégrée dans le CI/CD — elle s’exécute manuellement ou pas du tout
  • Aucune gouvernance sur les composants tiers pouvant être utilisés

Catégorie de contrôle 4 : Gestion et détection des secrets

Les secrets — tels que les clés API, les identifiants, les jetons et les certificats — sont des cibles de haute valeur dans les environnements CI/CD. Cette catégorie de contrôle englobe à la fois la détection des secrets exposés et la gouvernance de la façon dont les secrets sont stockés, accédés et renouvelés.

Ce qu’elle contrôle : La prévention de l’exposition des identifiants dans le code et les pipelines, l’accès contrôlé aux secrets, et les procédures de rotation et de révocation.

Preuves produites : Résultats d’analyse des secrets, journaux d’accès aux systèmes de stockage de secrets, enregistrements de rotation et enregistrements de réponse aux incidents pour toute exposition détectée.

Ce que les auditeurs doivent vérifier :

  • L’analyse des secrets est automatisée et s’exécute à chaque modification de code
  • Un système centralisé de gestion des secrets est utilisé — les secrets ne sont jamais codés en dur
  • L’accès aux secrets est basé sur les rôles et journalisé
  • Les politiques de rotation existent et sont appliquées
  • Les expositions de secrets détectées déclenchent une réponse aux incidents documentée

Signaux d’alerte :

  • Des secrets trouvés dans le code source, les fichiers de configuration ou les journaux de pipeline
  • Pas de gestion centralisée des secrets — les équipes gèrent les identifiants indépendamment
  • Pas de politique de rotation ou de preuve de rotation
  • L’analyse des secrets n’est pas appliquée ou peut être contournée

Catégorie de contrôle 5 : Intégrité du build et sécurité des artefacts

Les contrôles d’intégrité du build garantissent que ce qui est déployé correspond à ce qui a été testé et approuvé. Cela inclut la signature des artefacts, la vérification d’intégrité, le stockage immuable et le suivi de provenance.

Ce qu’il contrôle : La prévention de la falsification des sorties de build, la traçabilité du code source à l’artefact déployé, et l’assurance que les artefacts n’ont pas été modifiés après les tests.

Preuves produites : Artefacts signés, attestations de provenance, sommes de contrôle d’intégrité et journaux de dépôts d’artefacts immuables.

Ce que les auditeurs doivent vérifier :

  • Les artefacts sont signés et les signatures sont vérifiées avant le déploiement
  • Le stockage des artefacts est immuable — les artefacts précédemment publiés ne peuvent pas être écrasés
  • Des enregistrements de provenance existent reliant chaque artefact à son code source, son build et ses résultats de tests
  • Les vérifications d’intégrité sont appliquées au moment du déploiement, pas seulement au moment du build

Signaux d’alerte :

  • Les artefacts ne sont pas signés ou les signatures ne sont pas vérifiées
  • Pas de provenance ou de traçabilité de l’artefact à la source
  • Les dépôts d’artefacts permettent l’écrasement des versions existantes
  • Manipulation manuelle des artefacts en dehors du pipeline

Catégorie de contrôle 6 : Tests de sécurité dynamiques (DAST)

DAST (Dynamic Application Security Testing) teste les applications en cours d’exécution en interagissant avec elles de manière externe, simulant des scénarios d’attaque réels. Il valide la posture de sécurité à l’exécution, y compris les flux d’authentification, la gestion des sessions et les faiblesses de configuration.

Ce qu’il contrôle : Les vulnérabilités à l’exécution, les erreurs de configuration de sécurité et les problèmes de contrôle d’accès dans les applications déployées ou en staging.

Preuves produites : Résultats d’analyse documentant les constats à l’exécution, les décisions de filtrage (réussite/échec) et les enregistrements de toute exception accordée.

Ce que les auditeurs doivent vérifier :

  • DAST est exécuté avant les releases en production — pas uniquement à la demande
  • Des seuils définis existent pouvant bloquer ou retarder les releases en fonction des résultats
  • Les exceptions au filtrage DAST sont documentées avec des approbations
  • Les résultats DAST sont conservés et traçables à des releases spécifiques

Signaux d’alerte :

  • DAST ne s’exécute qu’occasionnellement ou pas du tout pour les applications critiques
  • Pas de logique de filtrage — toutes les releases continuent indépendamment des résultats DAST
  • Les résultats DAST ne sont pas conservés ou ne peuvent pas être liés à des déploiements spécifiques
  • Le périmètre DAST ne couvre pas les applications exposées à l’extérieur

Catégorie de contrôle 7 : Journalisation, surveillance et conservation des preuves

Chaque contrôle dans le pipeline CI/CD doit produire des preuves, et ces preuves doivent être collectées, stockées et rendues accessibles pour l’audit. Cette catégorie couvre l’agrégation centralisée des journaux, la surveillance, les alertes et la conservation des preuves.

Ce qu’elle contrôle : La visibilité sur les activités des pipelines, la détection des incidents et la disponibilité des preuves d’audit.

Preuves produites : Journaux centralisés, tableaux de bord de surveillance, historiques d’alertes et enregistrements conservés de toutes les exécutions de pipelines et leurs résultats.

Ce que les auditeurs doivent vérifier :

  • Les journaux de pipelines sont collectés de manière centralisée et ne peuvent pas être falsifiés
  • Les périodes de conservation respectent les exigences réglementaires
  • La surveillance couvre à la fois les événements de sécurité et la santé des pipelines
  • Les preuves de tous les contrôles de sécurité (SAST, SCA, DAST, secrets, intégrité des artefacts) sont agrégées et accessibles

Signaux d’alerte :

  • Les journaux sont stockés uniquement localement sur les agents de build et non centralisés
  • Les périodes de conservation sont plus courtes que les exigences réglementaires
  • Pas d’alertes sur les échecs de pipeline ou les contournements de contrôles de sécurité
  • Les preuves des contrôles de sécurité ne peuvent pas être récupérées pour une release donnée

Résumé : Correspondance catégorie de contrôle — vérification d’audit

Catégorie de contrôleObjectif du contrôlePreuves clésVérification d’audit
Sécurité du code sourcePrévenir les modifications de code non autoriséesJournaux d’accès, approbations PR, configs de protection des branchesVérifier l’application des workflows de revue et d’approbation
SASTDétecter les vulnérabilités au niveau du code avant le déploiementRapports d’analyse, décisions de filtrage, enregistrements de suppressionConfirmer l’exécution automatisée et l’application des seuils
SCAGérer les risques tiers et de la chaîne d’approvisionnementInventaires de dépendances, SBOM, rapports de vulnérabilitésVérifier l’inventaire actuel, la génération de SBOM et la réponse aux vulnérabilités connues
Gestion des secretsPrévenir l’exposition des identifiants et l’accès non autoriséRésultats d’analyse, journaux d’accès, enregistrements de rotationConfirmer l’absence de secrets codés en dur, vérifier la rotation et la gouvernance d’accès
Intégrité du buildGarantir que les artefacts sont fiables et traçablesArtefacts signés, attestations de provenance, sommes de contrôleVérifier la signature, l’immuabilité et la traçabilité source-artefact
DASTValider la sécurité à l’exécution des applications déployéesRésultats d’analyse, décisions de filtrage, enregistrements d’exceptionsConfirmer l’exécution pré-release et la gestion documentée des exceptions
Journalisation et preuvesFournir une piste d’audit et une visibilité sur les incidentsJournaux centralisés, enregistrements de surveillance, preuves conservéesVérifier les périodes de conservation, la centralisation et la résistance à la falsification

Conclusion

Les contrôles de sécurité CI/CD ne concernent pas les produits qu’une organisation déploie. Il s’agit de savoir si les bonnes catégories de contrôles sont en place, si ces contrôles sont appliqués de manière cohérente dans le pipeline, et s’ils produisent des preuves fiables que les auditeurs peuvent vérifier.

Lors de la revue de la sécurité CI/CD, les auditeurs doivent se concentrer sur l’application, la qualité des preuves, la traçabilité et la gouvernance — et non sur les noms de produits ou les listes de fonctionnalités.


Ressources connexes pour les auditeurs


À propos de l’auteur

Architecte senior DevSecOps et sécurité, avec plus de 15 ans d’expérience en ingénierie logicielle sécurisée, sécurité CI/CD et environnements d’entreprise réglementés.

Certifié CSSLP et EC-Council Certified DevSecOps Engineer, avec une expérience concrète dans la conception d’architectures CI/CD sécurisées, auditables et conformes.

En savoir plus sur la page About.