« Shift left » est devenu le mantra DevSecOps des débuts des années 2020 — déplacer la sécurité plus tôt dans le cycle de développement, détecter les vulnérabilités avant qu'elles n'atteignent la production. C'était la bonne direction. Mais pour la plupart des organisations, notamment dans les industries régulées, c'est resté un slogan plutôt qu'une pratique.

Les organisations véritablement en avance ne parlent plus de déplacer la sécurité à gauche. Elles l'intègrent dans l'architecture elle-même — ce que j'appelle le Secure by Design. Ce n'est pas une distinction subtile. Cela représente une relation fondamentalement différente entre sécurité, développement et opérations.

« Shift left signifie trouver les problèmes de sécurité plus tôt. Secure by Design signifie ne pas les créer en premier lieu. »

Pourquoi le « Shift Left » seul ne suffit pas

Le shift left consiste généralement à ajouter des outils de scan de sécurité à votre pipeline CI/CD — SAST, DAST, vérification des dépendances, scan de conteneurs. Ces outils sont précieux. Mais ils sont réactifs : ils trouvent des problèmes qui existent déjà dans le code. Ils génèrent également d'énormes volumes d'alertes, que la plupart des équipes de développement ne sont pas équipées pour trier ou corriger rapidement. La fatigue aux alertes devient un risque réel.

Dans les industries régulées — énergie, finance, santé — les conséquences d'un incident de sécurité en production ne sont pas seulement techniques. Elles incluent les notifications réglementaires sous GDPR (exigence de 72 heures), les obligations de déclaration d'incidents NIS2, des amendes potentielles, et dans les contextes d'infrastructures critiques, des implications pour la sécurité physique. L'approche standard « trouver dans le CI/CD » est insuffisante.

Le pipeline Secure by Design

Les portes de sécurité surlignées en or ci-dessous représentent les ajouts clés au-delà du shift-left de base :

Threat ModelPhase de conception
Sec RequirementsDéfinition des stories
SASTCommit
SCADépendances
DASTStaging
Pen TestPré-release
Runtime MonitorProduction

Quatre pratiques qui distinguent les leaders des retardataires

1. Modélisation des menaces dès la conception

Avant qu'une ligne de code soit écrite, les équipes de développement devraient se demander : qu'est-ce qui pourrait mal tourner ? Qui pourrait attaquer cette fonctionnalité ? Quelles données traite-t-elle ? La modélisation des menaces (STRIDE, PASTA ou des référentiels similaires) à la phase de conception identifie les failles de sécurité architecturales qu'aucune quantité de scanning ne détectera après coup. Chez ENGIE, nous avons fait de la modélisation des menaces une porte obligatoire avant que tout nouveau composant de plateforme ne puisse entrer en développement.

2. Security as Code

Les politiques de sécurité, les règles de pare-feu, les permissions IAM et les configurations réseau doivent être définies en code et gérées via les mêmes processus de contrôle de version et de révision que le code applicatif. Les outils de scan Infrastructure as Code (IaC) — Checkov, tfsec, KICS — détectent les mauvaises configurations avant leur déploiement. C'est particulièrement critique pour les environnements cloud où un bucket S3 mal configuré ou un rôle IAM sur-permissif peut exposer toute une organisation.

3. Gestion des secrets

Les identifiants codés en dur dans le code source restent l'une des vulnérabilités de sécurité les plus courantes — et les plus évitables. Implémentez une solution de gestion des secrets (HashiCorp Vault, AWS Secrets Manager, Azure Key Vault) et appliquez des hooks pre-commit qui détectent et bloquent les commits d'identifiants. Faites tourner les secrets régulièrement et auditez les journaux d'accès.

4. Security Champions au sein des équipes de développement

Le modèle traditionnel — une équipe sécurité séparée qui révise le code comme une porte — ne passe pas à l'échelle avec la vélocité de livraison moderne. Le modèle DevSecOps exige que la connaissance de la sécurité soit distribuée au sein des équipes de développement. Les Security Champions sont des développeurs qui reçoivent une formation sécurité supplémentaire et agissent comme premier point de contact pour les questions de sécurité au sein de leur squad. Ils ne remplacent pas l'équipe sécurité ; ils étendent sa portée.

Considérations particulières pour les industries régulées

L'énergie, les utilities et les services financiers font face à des référentiels de conformité qui interagissent directement avec la pratique DevSecOps :

  • NIS2 — exige des processus de sécurité documentés pour les logiciels affectant les infrastructures critiques. Votre pipeline DevSecOps est une preuve d'audit de conformité.
  • ISO 27001 — A.14 (acquisition, développement et maintenance des systèmes) se mappe directement aux pratiques Secure by Design.
  • PCI DSS (le cas échéant) — impose des normes spécifiques de codage sécurisé et des processus de gestion des vulnérabilités.

Implémenter correctement le DevSecOps n'est pas seulement une amélioration de la sécurité — c'est un investissement dans la conformité qui fournit des preuves d'audit démontrables.

Par où commencer

Si votre organisation débute dans cette démarche, je recommande cette séquence : d'abord, acquérir de la visibilité (instrumenter votre pipeline avec le scan SAST et SCA de base) ; ensuite, prioriser (trier les résultats par exploitabilité et impact métier, pas seulement par score CVSS) ; puis, créer des habitudes (modélisation des menaces régulière, programme de Security Champions) ; enfin, automatiser et appliquer (policy-as-code, portes obligatoires pour les résultats critiques). C'est un parcours de 12 à 18 mois pour la plupart des organisations, pas un projet avec une date de fin fixe.