Après l’ascension du DevSecOps, certains acteurs prônent maintenant une nouvelle approche : le SecDevOps. Si l’amélioration de la sécurité dans les pipelines de CI/CD fait consensus, les méthodes à employer sont encore débattues. Ce nouveau concept représente un changement de paradigme pour certains et un néologisme abusif pour d’autres. Cet article a pour objectif de vous donner le contexte nécessaire pour trancher le débat SecDevOps vs DevSecOps.
Qu’est-ce que le DevSecOps ?
Le DevSecOps est un mot-valise incluant la notion de sécurité aux côtés du développement et des opérations. Il s’agit d’une approche visant à apporter une réponse aux nouveaux enjeux de la cybersécurité. Le rythme de la chaîne CI/CD de la méthode DevOps est particulièrement soutenu. Dans ce contexte, inclure l’équipe sécurité à la toute fin du projet est contre-productif.
Une faille découverte trop tard entraîne des délais supplémentaires incontrôlés, ainsi que des dépassements de budget. La méthodologie DevSecOps intègre la sécurité au cœur des cycles de développement continu et de déploiement continu. On parle de « Shift Left » : la cybersécurité est placée plus à gauche, sur la frise chronologique du projet. Les équipes de développement, des opérations et de la sécurité collaborent ainsi dès le départ.
L’approche DevSecOps comprend la mise en place de nouveaux outils et pratiques. Mais elle insiste également sur une responsabilisation de l’ensemble des collaborateurs sur la thématique sécuritaire. Cela passe notamment par une formation continue de l’équipe de développement et de l’équipe opérationnelle. Cette progression sur les enjeux de cybersécurité dans le DevOps est parfois encadrée par un « security champion ».
Qu’est-ce que le SecDevOps ?
SecDevOps est un terme plus récent et moins plébiscité que DevSecOps. La première évolution sécuritaire du DevOps avait déjà intégré l’AppSec au sein du cycle de vie du développement logiciel (SDLC). Mais plusieurs acteurs considèrent qu’un nouveau changement de paradigme est indispensable pour les entreprises. Le concept de SecDevOps est notamment mis en avant par les fournisseurs de logiciels et d’outils de sécurité.
Pour certains, il s’agit avant tout d’effectuer un nouveau « Shift Left ». On intègre ainsi les équipes de sécurité dès l’étape de conception du logiciel ou de l’application. L’objectif du SecDevOps est alors comparable à celui du « secure by design ». Plus largement, on fait de la sécurité une véritable priorité, aux côtés de la qualité et de la rapidité de livraison.
Mais le SecDevOps peut aussi s’apparenter à un véritable changement de philosophie au sein des équipes de développement. En ce sens, cette notion se rapproche du Rugged DevOps. Comme on peut le voir, la définition stricte du SecDevOps est encore sujette à débat. Une chose est sûre, il place la sécurité au premier plan, tant au niveau humain que logiciel.
SecDevOps vs DevSecOps vs DevOpsSec
À l’origine, on opposait principalement DevOps et DevSecOps. Mais l’apparition du SecDevOps a, en réalité, créé un véritable trio. S’il est possible de « Shift Left », on peut également partir dans la direction opposée. C’est ainsi que le DevOpsSec entre en scène. Ses détracteurs l’associent généralement aux pratiques traditionnelles du développement logiciel. Le DevOpsSec représente un processus où la sécurité est non prioritaire et décorrélée du processus de développement.
Les vérifications sont effectuées par une équipe indépendante, après la mise en production. Ce terme est avant tout utilisé pour illustrer les pratiques à éviter et mettre en avant le SecDevOps. En résumé : plus on place le « Sec » au début du mot, plus la sécurité est priorisée et intervient tôt dans le projet. Bien entendu, ces trois approches sont loin de refléter la diversité réelle des méthodologies de DevOps.
Faut-il vraiment choisir entre SecDevOps et DevSecOps ?
Il est nécessaire de faire un choix entre SecDevOps et DevSecOps, dès lors qu’on les définit précisément. Intégrer la sécurité dans les cycles CI/CD grâce à des méthodes de DevSecOps automation semble parfois suffisant. Le DevSecOps permet ainsi de mieux détecter et patcher les vulnérabilités, tout en conservant des délais de livraison rapides.
Choisir une approche SecDevOps offre la quasi-certitude de délivrer un produit sécurisé. En revanche, cette philosophie demande davantage de ressources. De plus, elle nécessite d’être implémentée dès le début d’un projet. Le SecDevOps peut donc se révéler difficilement applicable à des solutions déjà présentes sur le marché.
Les entreprises ont la liberté de choisir leur méthodologie de DevOps, ainsi que le nom qu'elles leur donnent. Mais devant la quantité grandissante de vulnérabilités découvertes, adopter des pratiques de codage plus sécurisées est indispensable. Les sociétés doivent apprendre à mesurer le niveau de danger et à y apporter des réponses appropriées. Cela passe par la formation des équipes DevOps, mais aussi par l’amélioration continue des méthodes employées.