Cet ouvrage sur l’approche DevSecOps est destiné à tout membre d’une équipe opérationnelle IT ou de développement qui souhaite intégrer la sécurité dans sa pratique quotidienne et disposer des bons outils pour sécuriser ses développements, à chaque étape du cycle de vie des services.
L’auteur commence par expliquer en quoi l’implémentation de la sécurité transforme en profondeur le fonctionnement des équipes au sein d’une entreprise, notamment les équipes de développement, avant de présenter en détail les notions d’intégration continue et de déploiement continu (CI/CD). En guise de mise en pratique, il propose au lecteur d’implémenter étape par étape son propre pipeline d’intégration continue en Python en utilisant Gitlab-CI.
Deux chapitres présentent ensuite en quoi Docker et Kubernetes sont des outils incontournables dans une approche DevSecOps. Pour en détailler l’installation, la configuration et l’utilisation, l’auteur s’appuie sur plusieurs exemples : déploiement d’un site WordPress avec Docker Compose, analyse de la sécurité des images Docker avec Dockle et Trivy, sécurisation d’un cluster Kubernetes avec Kube-Bench, Kube-Hunter et les CIS Benchmark, analyse de la sécurité des fichiers YAML décrivant les objets Kubernetes avec KubeLinter et Checkov. Les vulnérabilités appréhendées dans ces exemples sont détaillées afin que vous puissiez les reconnaître et les corriger.
Les notions importantes du domaine de la cybersécurité sont explicitées, notamment le vocabulaire associé et les différents types d’attaques en mettant l’accent sur le Denial of Service et le Brute Force, ainsi que les principaux composants de la cryptographie (chiffrement symétrique, asymétrique, algorithmes de hash, Rainbow Table, fonctionnement des PKI et des certificats digitaux).
Un chapitre explore la sécurité du développement et les bonnes pratiques à mettre en oeuvre autour du SDLC et du SSDLC avec le Threat Modeling et la publication d’une Secure Coding Checklist. L’auteur y détaille également les différents environnements à mettre à disposition des développeurs, ainsi que l’utilisation de l’outil WebGoat, pour créer un environnement de Pentest à partir duquel les trois premières catégories du TOP10 de l’OWASP seront étudiées. Les bonnes pratiques liées à la gestion des évènements et à la supervision de la stack applicative sont parcourues.
L’ouvrage se termine par la mise en oeuvre concrète de l’approche DevSecOps au sein d’une entreprise (définition des objectifs de sécurité, développement d’une culture de la cybersécurité, implémentation d’un dépôt certifié d’images et d’artefacts, gestion du versioning de manière sécurisée et sécurisation des serveurs web), ainsi que par une présentation des pratiques de SCA, SAST, DAST et de l’utilisation de Terraform en contexte sécurisé.