Récapitulatif de SnykCon : construire un programme AppSec au service des développeurs
January 27, 2022
0 minutes de lectureLa mise en place d’un programme de sécurité des applications peut être une tâche ardue. Le flux constant de contenu encourageant les équipes à adopter une approche « shift left » est inspirant, mais il ne vous aide pas à démarrer. Si l’on considère les organisations qui ont déjà mis en place des initiatives de sécurité des applications, l’écart peut sembler insurmontable, alors qu’un plan d’action reste insaisissable. Comme tout ce qui concerne le développement de logiciels, la sécurité des applications est un parcours. Un parcours beaucoup plus agréable avec quelques principes directeurs.
La SnykCon de l’année dernière a fourni une multitude de conseils et de meilleures pratiques de sécurité des applications : deux présentations de clients de Snyk se sont notamment intéressées aux processus de construction et de maintien d’une culture de développement sécurisé dans votre organisation. Dans l’une, Per Olsson (conseiller en sécurité des applications, Visma) a partagé les leçons qu’il a apprises en tant que développeur devenu conseiller en sécurité. Dans l’autre, nous avons uni les forces de trois experts en sécurité issus de différents secteurs pour discuter de la manière dont ils ont construit des programmes de sécurité efficaces à partir de rien.
Ces interventions suscitent des discussions sur les étapes, les jalons et les défis d’un programme AppSec en développement, et nous indiquent la voie à suivre pour instaurer une culture de la sécurité réussie.
Démarrer votre programme AppSec à partir de zéro
Qu’est-ce que l’AppSec ?
Lorsque l’on construit un programme à partir de zéro, il est important de comprendre ce qu’est la sécurité des applications, ainsi que vos besoins spécifiques. Comme l’a si bien formulé Olsson : « AppSec ne concerne pas du tout la sécurité des applications ». La sécurité commence par les utilisateurs. Toutes les personnes qui composent une organisation - développeurs, gestionnaires, équipes d’assurance qualité, conception, juridique - créent les bases d’un programme de sécurité. La plupart des incidents de sécurité sont le produit d’une erreur humaine, et lorsque les délais sont courts, les équipes peuvent dé-prioriser la sécurité au profit d’autres fonctionnalités ou d’autres tâches qui présentent un retour sur investissement clair. Par conséquent, la première étape consiste à faire de la sécurité une priorité.
Commencez à petite échelle
Un fil conducteur commun à tous nos experts de la SnykCon était de commencer modestement. Les programmes de sécurité de grande envergure ne se sont pas constitués du jour au lendemain, et nous devons éviter toute comparaison durant les premières étapes du développement. L’équipe de sécurité de Visma a commencé comme un groupe d’intérêt spécial, composé d’un responsable et de plusieurs développeurs. Nicholas Vinson (responsable de DevSecOps, Pearson) et
Gagan Bhatia (responsable du service de la cybersécurité, 10x Banking) encourageaient les chefs de projet à intégrer un ingénieur en sécurité expérimenté dans une petite équipe de développeurs intéressés, afin que tous travaillent ensemble à identifier les besoins et les menaces potentielles. Il est important de partager les pratiques de codage sécurisées avec tous les développeurs et de leur donner les moyens d’être créatifs dans la façon dont ils mettent en œuvre l’AppSec dans le SDLC existant. L’objectif final devrait être un changement culturel vers un code sécurisé, et cela commence par les individus.
Contrôle des versions
Enfin, la sécurité doit lâcher (un peu) le contrôle. L’équipe de sécurité doit être un guide et une ressource pour les développeurs, non un simple gardien. La culture cloisonnée qui entoure les méthodes de sécurité traditionnelles doit faire place à la transparence et à la collaboration croisée. Chaque équipe au sein d’une organisation aura des besoins, des objectifs et des méthodes de livraison différents. Donner aux équipes de développement des outils et des conseils pratiques leur permet de s’approprier leurs programmes AppSec et renforce leur engagement envers les pratiques de codage sécurisé.
Affiner une approche AppSec mature
Amélioration continue
Une fois votre programme lancé, le processus d’amélioration commence. Au fur et à mesure que la confiance se développe entre les équipes chargées de la sécurité, du développement et de la gestion, les outils et workflows peuvent être évalués. Pour ce faire, Olsson a interrogé les équipes de développement avec lesquelles il travaillait. Cela a permis à l’équipe de sécurité en pleine expansion d’accroître son efficacité, de vérifier l’adéquation du plan de sécurité avec les besoins des développeurs et de repérer les menaces qui passaient à travers les mailles du filet. À mesure que les tâches de sécurité se rapprochent d’un modèle « shift left », l’automatisation et les tests continus soutiennent notre programme AppSec en fournissant des données cohérentes.
Définir le succès
Les équipes de sécurité en pleine croissance ont souvent du mal à quantifier leur succès. Contrairement à ce qu’il en est pour la livraison de fonctionnalités, les initiatives de sécurité n’offrent pas toujours des résultats immédiatement visibles. Comment mesurer toutes les brèches que vous n’avez pas ? Et bien que les outils fournissent de nombreuses données, leur contextualisation peut relever du défi. Lorsque l’on commence à définir les éléments qui déterminent le succès d’un programme de sécurité, il est important de « savoir quelque chose que nous ignorions hier », selon Stefan Steglich (chef de produit sécurité des applications, Skybetting & Gaming).
La façon dont vous mesurez le succès doit servir le message de votre programme, et non l’inverse. Prenez soin également de célébrer vos premières victoires. Qu’il s’agisse de retours positifs sur le programme en général ou d’une interaction accrue avec les outils de sécurité que nous avons sélectionnés, il est important de prendre du recul et de reconnaître le chemin parcouru.
Mesures pratiques
En termes de mesures pratiques, Vinson recommande d’en suivre trois types : les exigences de conception, les mesures d’exploitation et les évaluations de la maturité de la sécurité. Les exigences de conception sont le résultat de la modélisation des menaces. Ces mesures déterminent si votre programme de sécurité des applications traite tous les risques potentiels identifiés et contribuent à découvrir de nouvelles menaces au fur et à mesure de leur survenue. Les mesures d’exploitation sont des statistiques sur les vulnérabilités. Qu’il s’agisse des résultats de l’analyse SAST, du nombre de corrections, etc., ces mesures sont un indicateur des tendances en matière de vulnérabilité et contribuent à affiner la précision de nos exigences de conception. Enfin, l’évaluation de la maturité de la sécurité fournit un contexte aux mesures précédentes et au programme dans son ensemble. Cette évaluation de plus grande ampleur permet de déterminer où nous en sommes dans le parcours AppSec et si nous sommes prêts à avancer. Les données sur les besoins non satisfaits, la capacité de l’équipe à accomplir les tâches de sécurité et l’adoption des principes de sécurité à tous les niveaux sont trois bases essentielles pour planifier les étapes suivantes.
AppSec doit soutenir les développeurs
Que votre équipe de sécurité comporte 1 ou 100 employé(s), les défis sont similaires. Définir un plan de sécurité, développer des mesures appropriées et expliquer tout cela aux membres de notre équipe est un processus de longue haleine qui n’est jamais vraiment terminé. Les outils que nous sélectionnons pour soutenir nos programmes de sécurité des applications en développement jouent un rôle considérable dans l’efficacité de ces programmes. Les programmes qui généralisent ou s’appuient sur des modèles théoriques ne conviendront probablement pas à une approche de sécurité sur mesure. Les logiciels d’analyse qui fournissent une grande quantité de données peuvent être utiles aux experts de la sécurité, mais pas aux développeurs que nous cherchons à responsabiliser.
C’est pourquoi Snyk a été conçu en pensant aux développeurs. Notre plateforme aide les organisations à sécuriser leurs applications sur une seule et unique plateforme pour les équipes de sécurité et de développement. Être en mesure de détecter et corriger les vulnérabilités à mesure que vous codez (en cinq minutes seulement) vous permet d’éliminer les goulots d’étranglement de vos processus AppSec. Démarrez votre essai gratuit aujourd’hui et découvrez comment nous aidons des millions de codeurs à développer rapidement des applications tout en restant sécurisé.
Plébiscité par les développeurs. Sécurité assurée.
Les outils au service des développeurs de Snyk proposent une sécurité intégrée et automatisée qui répond à vos besoins de gouvernance et de conformité.