10 bonnes pratiques pour intégrer la sécurité dans votre cycle de développement CI/CD … et shopping list.

Délivrer toujours plus vite de nouvelles applications et de nouvelles fonctionnalités impose le CI/CD aux équipes de développement car la plupart des étapes sont automatisées et les gains de temps sont considérables… mais ils se font malheureusement souvent aux dépens de la sécurité. On découvre souvent trop tard des failles de vulnérabilité en environnement de production qui se révèlent extrêmement coûteuses à réparer en termes de ressources.

La solution ? Si vous souhaitez conserver les bénéfices de l’agilité, vous devez intégrer la sécurité continue dans le cycle de vie du développement logiciel (et non à la fin) afin d’être alertés rapidement en cas de code vulnérable ou défectueux. Certes, vous rajoutez une couche supplémentaire de contrôle mais vous préservez une mise sur le marché rapide des nouvelles applications et la protection des données … et la confiance des utilisateurs dans le temps n’en sera que renforcé.

Wadi Essafi, Président, Harington

Cela sous-entend une évolution des pratiques et un investissement dans des outils car même si de nombreux tests sont automatisés, ils n’éliminent pas certains tests manuels qui restent nécessaires.

10 bonnes pratiques pour intégrer la sécurité dans votre CI/CD.

  1. Modélisation et cartographie des menaces afin d’identifier où vous devez, quand et comment ajouter de la sécurité à votre pipeline CI/CD.
  2. Connaissance du cycle CI/CD et ses composants pour établir un registre des actifs qui collecte toutes les données, centralise les changements apportés et les actions (system logs, référentiels, code repository).
  3. Mise en place d’un système de vérification, de validation et de sauvegarde du code. Un plugin de sécurité IDE analyse en temps réel le code au fur et à mesure qu’il est écrit, alerte les développeurs en cas de vulnérabilité détectée et les guident pour y remédier. Vous devez établir des règles et effectuer des contrôles pour vous assurer que le code répond bien aux normes en terme de qualité et de sécurité. (Deux outils : CyberArk Conjur, git-secrets)
  4. Analyse rapide du code validé via des outils d’analyse statique qui ne nécessitent pas d’exécuter l’application  et vous donnent des conseils pour corriger les bugs.
  5. Tester la sécurité … comme toutes les autres fonctions. (Quelques outils : BRAKEMAN , phan, sonarSource, Veracode)
  6. Vérification de la sécurité open source des bibliothèques et autres composants importés pour détecter les failles de vulnérabilité. Quelques outils SCA : WhiteSource Bolt et Snyk.
  7. Mener régulièrement des tests plus poussés … Scans actifs pendant la nuit pour simuler des attaques et détecter des vulnérabilités ou autre défaillances inconnues jusqu’alors (Outil OWASP ZAP), validation de l’infrastructure en utilisant les outils proposés par Azure ou AWS.
  8. Automatisation de l’infrastructure as a code (IaC)
  9. Monitoring continu car les failles de sécurité évoluent au rythme des menaces et autres attaques… Outils : kibana, Grafana, Detectitfy
  10. Organisation d’évènements post-morterms pour tirer les leçons du passé, renforcer la résilience et mieux se préparer à l’avenir dans une démarche d’amélioration continue 😉

Source :

https://searchitoperations.techtarget.com/tip/9-ways-to-infuse-security-in-your-CI-CD-pipeline?src=7597951&asrc=EM_ERU_161560404&utm_medium=EM&utm_source=ERU&utm_campaign=20210513_ERU+Transmission+for+05%2F13%2F2021+%28UserUniverse%3A+332786%29&utm_content=eru-rd2-control

En savoir plus

FinOps, optimisation financière des clouds et vrai levier de modernisation des SI.

Le FinOps s’impose comme une stratégie essentielle pour les DSI, permettant une gestion optimisée des coûts cloud et supportant la modernisation des systèmes d’information. Découvrez les meilleures pratiques et solutions FinOps pour transformer vos dépenses cloud en leviers de croissance.

Lire

Excellence logicielle, les meilleures pratiques de développement

Harington adopte les meilleures pratiques de développement logiciel pour garantir qualité, efficacité et sécurité. Découvrez nos méthodes et comment nous intégrons l’excellence.

Lire

L’IA générative au service de nos développeurs.

Découvrez comment l’IA générative est devenu un outil indispensable pour les développeurs Harington ! Gagnez en productivité et qualité avec GitHub Copilot, Google AI AutoML et plus. Explorez les avantages de l’automatisation et de l’innovation dans le développement logiciel

Lire