Blog

Comment devenir un ingénieur DevSecOps hors pair ?

Matias Madou, Ph.D.
Publié le 28 février 2020

Tout comme la technologie elle-même, les outils, les techniques et les processus optimaux de développement de code évoluent rapidement. Nous, les humains, avons un besoin insatiable de plus de logiciels, de plus de caractéristiques, de plus de fonctionnalités... et nous les voulons plus rapides que jamais, plus qualitatifs et, en plus, sécurisés. Il y a quelques années à peine, le développement agile était la grande nouveauté utilisée pour diviser de gros volumes de travail en plus petits morceaux et pour pouvoir s'adapter rapidement aux cycles de retour d'information rapides provenant du client. Auparavant, c'était la méthode Waterfall qui régnait en maître.

Alors que de nombreuses personnes et organisations passent de l'approche Waterfall à l'approche Agile - et tout le monde n'y est pas encore, soyons réalistes - elles se heurtent déjà à un nouveau problème : les équipes de développement et leurs homologues opérationnels travaillent toujours en silos. Dans cet environnement, comment de petites équipes travaillant de manière agile peuvent-elles tenir la promesse d'un déploiement et d'une livraison plus rapides ?

DevOps, un nom qui est une combinaison de développement et d'opérations, a été créé pour fusionner les fonctions des développeurs et des équipes opérationnelles lors de la création de nouveaux logiciels. Il s'agissait essentiellement d'aider les développeurs à s'approprier la mise en production, au lieu de la confier à l'équipe chargée des opérations et d'en faire sa responsabilité.

Ils peuvent certainement livrer plus rapidement - même plusieurs fois par jour - ce qui semble aller dans le sens de l'Agile. Cependant, DevOps crée toujours une grande équipe mixte d'ingénieurs et de personnel d'exploitation, qui n'est peut-être pas aussi alignée sur Agile dans la réalité. En fin de compte, il est préférable de considérer DevOps comme une évolution d'Agile, car les méthodologies sont similaires à bien des égards et complémentaires dans leurs différences. DevOps promeut un pipeline d'intégration et de déploiement automatisé et continu, ce qui est essentiel pour permettre des mises à jour fréquentes, mais pas aussi suffisant au niveau de l'équipe - et c'est là que l'Agile entre en jeu. L'Agile permet aux équipes, en particulier aux petites équipes, de suivre le rythme de ces versions rapides et de ces exigences changeantes, tout en restant concentrées sur les tâches à accomplir et en collaborant. Cela semble certainement idéal - et le processus peut maintenir les équipes sur la voie de l'objectif final - mais cela n'est pas sans poser de problèmes.

Les logiciels créés à l'aide des meilleures pratiques DevOps ont toujours le potentiel de trébucher lors du premier combat contre le patron : l'équipe de sécurité. Lorsque le code est examiné par les spécialistes AppSec traditionnels/Waterfall, que ce soit avec des outils ou un examen manuel complexe, ils trouvent souvent des risques et des vulnérabilités inacceptables qui doivent alors être corrigés après coup. Le processus d'intégration de correctifs de sécurité dans des applications terminées n'est ni rapide ni facile... et il est beaucoup plus coûteux pour l'organisation.

Alors, si le monde évolue après Waterfall, Agile et maintenant DevOps, quelle est la solution ? Et en tant que développeur, quel est votre rôle pour suivre le rythme de ces changements d'approche ?

Les techniques de développement sont en constante évolution, mais heureusement, celle-ci n'est pas un changement si important. Les organisations ont juste besoin de mettre le "Sec" dans "DevOps"... et c'est ainsi que DevSecOps est né. L'un des principaux objectifs de DevSecOps est de faire tomber les barrières et d'ouvrir la collaboration entre les équipes de développement, d'exploitation et, enfin et surtout, de sécurité. DevSecOps est devenu à la fois une tactique d'ingénierie logicielle et une culture qui prône l'automatisation et la surveillance de la sécurité tout au long du cycle de vie du développement logiciel.

Cela peut sembler être un autre processus au niveau de l'organisation, peut-être un processus avec "trop de cuisiniers" lorsqu'il s'agit d'un développeur avec une longue liste de fonctionnalités à construire. Cependant, la méthodologie DevSecOps offre aux développeurs sensibilisés à la sécurité la possibilité de briller.

L'avenir radieux de DevSecOps

Alors, pourquoi un codeur voudrait-il devenir un ingénieur DevSecOps ? Vous avez peut-être une certaine expérience de DevOps (ou même d'Agile), mais vous souhaitez passer à l'étape suivante pour devenir compétent en DevSecOps. Tout d'abord, il est bon de savoir qu'il s'agit d'une démarche très intelligente, et pas seulement dans le but de mettre le monde à l'abri de cyberattaques coûteuses. Les experts affirment que la demande de personnel talentueux dans le domaine de la cybersécurité monte en flèche et qu'il n'y a pas de fin en vue. Ceux qui maîtrisent DevSecOps peuvent s'attendre à une carrière longue et rentable.

La sécurité de l'emploi pour les ingénieurs DevSecOps est encore plus assurée, car contrairement aux tactiques traditionnelles de cybersécurité telles que l'analyse des vulnérabilités à l'aide d'une gamme d'outils logiciels, DevSecOps nécessite des personnes qui savent comment mettre en œuvre la sécurité au fur et à mesure qu'elles codent. Comme le notent les analystes de Booz, Allen et Hamilton dans leur blog intitulé 5 Myths of Adopting DevSecOps, les entreprises veulent et ont même besoin de DevSecOps, mais ne peuvent tout simplement pas l'acheter. DevSecOps est une méthodologie qui permet aux équipes interfonctionnelles d'intégrer des technologies et de collaborer tout au long du cycle de vie du développement logiciel, et qui nécessite des personnes qualifiées, une gestion du changement et un engagement permanent de la part de multiples parties prenantes.

Selon Booz, Allen et Hamilton, les entreprises peuvent acheter des applications et des outils pour faciliter certains aspects de DevSecOps, comme un logiciel de gestion des versions, "mais ce sont vraiment vos équipes de livraison qui en sont responsables". Ce sont elles qui sont à l'origine de l'amélioration continue offerte par DevSecOps et de son changement de culture et de paradigme.

Les organisations ne peuvent pas "acheter" un programme DevSecOps viable ; il doit être construit et maintenu, en utilisant une gamme d'outils, des connaissances internes et des conseils qui améliorent la culture de la sécurité, tout en ayant un sens commercial. Ce n'est pas facile, mais c'est loin d'être impossible.

Comment vous pouvez vous démarquer dans le mouvement DevSecOps

L'une des premières étapes pour devenir un ingénieur DevSecOps est de réaliser qu'il s'agit autant d'une culture que d'un ensemble de techniques. Il faut avoir la volonté de mettre en œuvre la sécurité dans chaque morceau de code que vous créez, et le désir de protéger votre organisation de manière proactive en recherchant activement les failles de sécurité et les vulnérabilités au fur et à mesure que vous codez, et en les corrigeant bien avant qu'elles n'atteignent la phase de production. La plupart des ingénieurs DevSecOps prennent leur profession et leurs compétences très au sérieux. L'organisation professionnelle DevSecOps dispose même d'un manifeste énonçant ses convictions.

Le manifeste est un peu lourd, car les manifestes sont rarement légers à lire. Mais au cœur de ce manifeste se trouvent quelques vérités que tous les grands ingénieurs DevSecOps devraient apprendre à embrasser, comme :

  • Réalisez que l'équipe chargée de la sécurité des applications est votre alliée. Dans la plupart des entreprises, les spécialistes de la sécurité des applications sont en désaccord avec les développeurs, car ils renvoient toujours le code terminé pour qu'il soit retravaillé. Les équipes AppSec n'aiment pas non plus beaucoup les développeurs, car ils peuvent retarder la mise en production du code terminé en introduisant des bogues de sécurité courants. Cependant, un ingénieur DevSecOps intelligent comprendra que les objectifs des équipes de sécurité sont en fin de compte les mêmes que ceux des développeurs et des codeurs. Vous n'avez pas besoin d'être les meilleurs amis du monde, mais l'établissement d'une relation de travail sereine et collaborative est essentiel à la réussite.
  • Pratiquez et affinez vos techniques de codage sécurisé. Si vous parvenez à détecter les vulnérabilités des applications alors qu'elles sont encore en cours d'élaboration, vous pourrez alors combler ces lacunes et arrêter les futurs pirates dans leur élan. Bien entendu, il faut pour cela comprendre les vulnérabilités et disposer des outils nécessaires pour y remédier. Les pages du blogSecure Code Warrior peuvent vous donner un aperçu des vulnérabilités les plus courantes et les plus dangereuses que vous rencontrerez, ainsi que des conseils pratiques et des défis pour tester vos connaissances. L'aspect le plus important est de garder la sécurité à l'esprit et de prendre le temps de suivre des formations de courte durée qui vous aideront à développer vos connaissances existantes. Il est courant que les interactions d'un développeur avec la sécurité soient plutôt banales, voire négatives, mais le renforcement des compétences en matière de sécurité est un excellent moyen d'évoluer dans sa carrière, et cela ne doit pas être une corvée.
  • Rappelez-vous : Les superstars du DevSecOps contribuent à une culture de sécurité positive au sein de leur organisation. Au lieu de se concentrer sur les objectifs du passé, comme la livraison rapide d'applications sans tenir compte des problèmes inhérents, il est important de faire de la recherche et de la correction des vulnérabilités dans le code de développement une priorité absolue. La sécurité doit être considérée comme le travail de chacun, et tout le monde devrait partager l'adulation et les récompenses qui découlent du déploiement d'applications efficaces et hautement sécurisées à chaque fois.

Vous pouvez contribuer à cultiver une incroyable culture de la sécurité au sein de votre organisation en défendant le codage sécurisé et les meilleures pratiques de sécurité dès le départ, en recommandant des solutions de formation et en veillant à ce qu'aucun codeur ne soit laissé pour compte dans le monde en constante évolution de DevSecOps. Le seul bon code est un code sécurisé, et les développeurs compétents et sensibilisés à la sécurité sont des pièces essentielles du puzzle. Les récompenses personnelles et professionnelles en valent certainement la peine, et avec des milliards d'enregistrements de données personnelles compromis chaque année (et de plus en plus), nous avons besoin de vous. Prenez place en première ligne et aidez-nous à nous défendre contre les méchants dans notre monde numérique.

Matias Madou, docteur en sciences, est directeur technique et cofondateur de Secure Code Warrior. C'est un expert en sécurité, un développeur de longue date et un accro de Fortnite.

Voir la ressource
Voir la ressource

Le monde commence à évoluer après Waterfall, Agile, et maintenant DevOps, alors quelle est la prochaine solution ? Et en tant que développeur, quel est votre rôle pour suivre le rythme de ces changements d'approche ?

Vous souhaitez en savoir plus ?

Matias Madou est expert en sécurité, chercheur, directeur technique et cofondateur de Secure Code Warrior. Matias a obtenu son doctorat en sécurité des applications à l'université de Gand, en se concentrant sur les solutions d'analyse statique. Il a ensuite rejoint Fortify aux États-Unis, où il s'est rendu compte qu'il ne suffisait pas de détecter les problèmes de code sans aider les développeurs à écrire du code sécurisé. C'est ce qui l'a incité à développer des produits qui aident les développeurs, allègent le fardeau de la sécurité et dépassent les attentes des clients. Lorsqu'il n'est pas à son bureau en tant que membre de l'équipe Awesome, il aime être sur scène pour présenter des conférences, notamment RSA Conference, BlackHat et DefCon.

Secure Code Warrior est là pour vous aider à sécuriser le code tout au long du cycle de vie du développement logiciel et à créer une culture dans laquelle la cybersécurité est une priorité. Que vous soyez responsable AppSec, développeur, CISO ou toute autre personne impliquée dans la sécurité, nous pouvons aider votre organisation à réduire les risques associés à un code non sécurisé.

Réservez une démonstration
Partager sur :
Auteur
Matias Madou, Ph.D.
Publié le 28 février 2020

Matias Madou est expert en sécurité, chercheur, directeur technique et cofondateur de Secure Code Warrior. Matias a obtenu son doctorat en sécurité des applications à l'université de Gand, en se concentrant sur les solutions d'analyse statique. Il a ensuite rejoint Fortify aux États-Unis, où il s'est rendu compte qu'il ne suffisait pas de détecter les problèmes de code sans aider les développeurs à écrire du code sécurisé. C'est ce qui l'a incité à développer des produits qui aident les développeurs, allègent le fardeau de la sécurité et dépassent les attentes des clients. Lorsqu'il n'est pas à son bureau en tant que membre de l'équipe Awesome, il aime être sur scène pour présenter des conférences, notamment RSA Conference, BlackHat et DefCon.

Matias est un chercheur et un développeur qui possède plus de 15 ans d'expérience pratique dans le domaine de la sécurité des logiciels. Il a développé des solutions pour des entreprises telles que Fortify Software et sa propre entreprise Sensei Security. Au cours de sa carrière, Matias a dirigé de nombreux projets de recherche sur la sécurité des applications qui ont débouché sur des produits commerciaux et peut se targuer d'avoir déposé plus de 10 brevets. Lorsqu'il n'est pas à son bureau, Matias a été instructeur pour des formations avancées en matière de sécurité des applications ( courses ) et intervient régulièrement lors de conférences mondiales telles que RSA Conference, Black Hat, DefCon, BSIMM, OWASP AppSec et BruCon.

Matias est titulaire d'un doctorat en ingénierie informatique de l'Université de Gand, où il a étudié la sécurité des applications par le biais de l'obscurcissement des programmes afin de dissimuler le fonctionnement interne d'une application.

Partager sur :

Tout comme la technologie elle-même, les outils, les techniques et les processus optimaux de développement de code évoluent rapidement. Nous, les humains, avons un besoin insatiable de plus de logiciels, de plus de caractéristiques, de plus de fonctionnalités... et nous les voulons plus rapides que jamais, plus qualitatifs et, en plus, sécurisés. Il y a quelques années à peine, le développement agile était la grande nouveauté utilisée pour diviser de gros volumes de travail en plus petits morceaux et pour pouvoir s'adapter rapidement aux cycles de retour d'information rapides provenant du client. Auparavant, c'était la méthode Waterfall qui régnait en maître.

Alors que de nombreuses personnes et organisations passent de l'approche Waterfall à l'approche Agile - et tout le monde n'y est pas encore, soyons réalistes - elles se heurtent déjà à un nouveau problème : les équipes de développement et leurs homologues opérationnels travaillent toujours en silos. Dans cet environnement, comment de petites équipes travaillant de manière agile peuvent-elles tenir la promesse d'un déploiement et d'une livraison plus rapides ?

DevOps, un nom qui est une combinaison de développement et d'opérations, a été créé pour fusionner les fonctions des développeurs et des équipes opérationnelles lors de la création de nouveaux logiciels. Il s'agissait essentiellement d'aider les développeurs à s'approprier la mise en production, au lieu de la confier à l'équipe chargée des opérations et d'en faire sa responsabilité.

Ils peuvent certainement livrer plus rapidement - même plusieurs fois par jour - ce qui semble aller dans le sens de l'Agile. Cependant, DevOps crée toujours une grande équipe mixte d'ingénieurs et de personnel d'exploitation, qui n'est peut-être pas aussi alignée sur Agile dans la réalité. En fin de compte, il est préférable de considérer DevOps comme une évolution d'Agile, car les méthodologies sont similaires à bien des égards et complémentaires dans leurs différences. DevOps promeut un pipeline d'intégration et de déploiement automatisé et continu, ce qui est essentiel pour permettre des mises à jour fréquentes, mais pas aussi suffisant au niveau de l'équipe - et c'est là que l'Agile entre en jeu. L'Agile permet aux équipes, en particulier aux petites équipes, de suivre le rythme de ces versions rapides et de ces exigences changeantes, tout en restant concentrées sur les tâches à accomplir et en collaborant. Cela semble certainement idéal - et le processus peut maintenir les équipes sur la voie de l'objectif final - mais cela n'est pas sans poser de problèmes.

Les logiciels créés à l'aide des meilleures pratiques DevOps ont toujours le potentiel de trébucher lors du premier combat contre le patron : l'équipe de sécurité. Lorsque le code est examiné par les spécialistes AppSec traditionnels/Waterfall, que ce soit avec des outils ou un examen manuel complexe, ils trouvent souvent des risques et des vulnérabilités inacceptables qui doivent alors être corrigés après coup. Le processus d'intégration de correctifs de sécurité dans des applications terminées n'est ni rapide ni facile... et il est beaucoup plus coûteux pour l'organisation.

Alors, si le monde évolue après Waterfall, Agile et maintenant DevOps, quelle est la solution ? Et en tant que développeur, quel est votre rôle pour suivre le rythme de ces changements d'approche ?

Les techniques de développement sont en constante évolution, mais heureusement, celle-ci n'est pas un changement si important. Les organisations ont juste besoin de mettre le "Sec" dans "DevOps"... et c'est ainsi que DevSecOps est né. L'un des principaux objectifs de DevSecOps est de faire tomber les barrières et d'ouvrir la collaboration entre les équipes de développement, d'exploitation et, enfin et surtout, de sécurité. DevSecOps est devenu à la fois une tactique d'ingénierie logicielle et une culture qui prône l'automatisation et la surveillance de la sécurité tout au long du cycle de vie du développement logiciel.

Cela peut sembler être un autre processus au niveau de l'organisation, peut-être un processus avec "trop de cuisiniers" lorsqu'il s'agit d'un développeur avec une longue liste de fonctionnalités à construire. Cependant, la méthodologie DevSecOps offre aux développeurs sensibilisés à la sécurité la possibilité de briller.

L'avenir radieux de DevSecOps

Alors, pourquoi un codeur voudrait-il devenir un ingénieur DevSecOps ? Vous avez peut-être une certaine expérience de DevOps (ou même d'Agile), mais vous souhaitez passer à l'étape suivante pour devenir compétent en DevSecOps. Tout d'abord, il est bon de savoir qu'il s'agit d'une démarche très intelligente, et pas seulement dans le but de mettre le monde à l'abri de cyberattaques coûteuses. Les experts affirment que la demande de personnel talentueux dans le domaine de la cybersécurité monte en flèche et qu'il n'y a pas de fin en vue. Ceux qui maîtrisent DevSecOps peuvent s'attendre à une carrière longue et rentable.

La sécurité de l'emploi pour les ingénieurs DevSecOps est encore plus assurée, car contrairement aux tactiques traditionnelles de cybersécurité telles que l'analyse des vulnérabilités à l'aide d'une gamme d'outils logiciels, DevSecOps nécessite des personnes qui savent comment mettre en œuvre la sécurité au fur et à mesure qu'elles codent. Comme le notent les analystes de Booz, Allen et Hamilton dans leur blog intitulé 5 Myths of Adopting DevSecOps, les entreprises veulent et ont même besoin de DevSecOps, mais ne peuvent tout simplement pas l'acheter. DevSecOps est une méthodologie qui permet aux équipes interfonctionnelles d'intégrer des technologies et de collaborer tout au long du cycle de vie du développement logiciel, et qui nécessite des personnes qualifiées, une gestion du changement et un engagement permanent de la part de multiples parties prenantes.

Selon Booz, Allen et Hamilton, les entreprises peuvent acheter des applications et des outils pour faciliter certains aspects de DevSecOps, comme un logiciel de gestion des versions, "mais ce sont vraiment vos équipes de livraison qui en sont responsables". Ce sont elles qui sont à l'origine de l'amélioration continue offerte par DevSecOps et de son changement de culture et de paradigme.

Les organisations ne peuvent pas "acheter" un programme DevSecOps viable ; il doit être construit et maintenu, en utilisant une gamme d'outils, des connaissances internes et des conseils qui améliorent la culture de la sécurité, tout en ayant un sens commercial. Ce n'est pas facile, mais c'est loin d'être impossible.

Comment vous pouvez vous démarquer dans le mouvement DevSecOps

L'une des premières étapes pour devenir un ingénieur DevSecOps est de réaliser qu'il s'agit autant d'une culture que d'un ensemble de techniques. Il faut avoir la volonté de mettre en œuvre la sécurité dans chaque morceau de code que vous créez, et le désir de protéger votre organisation de manière proactive en recherchant activement les failles de sécurité et les vulnérabilités au fur et à mesure que vous codez, et en les corrigeant bien avant qu'elles n'atteignent la phase de production. La plupart des ingénieurs DevSecOps prennent leur profession et leurs compétences très au sérieux. L'organisation professionnelle DevSecOps dispose même d'un manifeste énonçant ses convictions.

Le manifeste est un peu lourd, car les manifestes sont rarement légers à lire. Mais au cœur de ce manifeste se trouvent quelques vérités que tous les grands ingénieurs DevSecOps devraient apprendre à embrasser, comme :

  • Réalisez que l'équipe chargée de la sécurité des applications est votre alliée. Dans la plupart des entreprises, les spécialistes de la sécurité des applications sont en désaccord avec les développeurs, car ils renvoient toujours le code terminé pour qu'il soit retravaillé. Les équipes AppSec n'aiment pas non plus beaucoup les développeurs, car ils peuvent retarder la mise en production du code terminé en introduisant des bogues de sécurité courants. Cependant, un ingénieur DevSecOps intelligent comprendra que les objectifs des équipes de sécurité sont en fin de compte les mêmes que ceux des développeurs et des codeurs. Vous n'avez pas besoin d'être les meilleurs amis du monde, mais l'établissement d'une relation de travail sereine et collaborative est essentiel à la réussite.
  • Pratiquez et affinez vos techniques de codage sécurisé. Si vous parvenez à détecter les vulnérabilités des applications alors qu'elles sont encore en cours d'élaboration, vous pourrez alors combler ces lacunes et arrêter les futurs pirates dans leur élan. Bien entendu, il faut pour cela comprendre les vulnérabilités et disposer des outils nécessaires pour y remédier. Les pages du blogSecure Code Warrior peuvent vous donner un aperçu des vulnérabilités les plus courantes et les plus dangereuses que vous rencontrerez, ainsi que des conseils pratiques et des défis pour tester vos connaissances. L'aspect le plus important est de garder la sécurité à l'esprit et de prendre le temps de suivre des formations de courte durée qui vous aideront à développer vos connaissances existantes. Il est courant que les interactions d'un développeur avec la sécurité soient plutôt banales, voire négatives, mais le renforcement des compétences en matière de sécurité est un excellent moyen d'évoluer dans sa carrière, et cela ne doit pas être une corvée.
  • Rappelez-vous : Les superstars du DevSecOps contribuent à une culture de sécurité positive au sein de leur organisation. Au lieu de se concentrer sur les objectifs du passé, comme la livraison rapide d'applications sans tenir compte des problèmes inhérents, il est important de faire de la recherche et de la correction des vulnérabilités dans le code de développement une priorité absolue. La sécurité doit être considérée comme le travail de chacun, et tout le monde devrait partager l'adulation et les récompenses qui découlent du déploiement d'applications efficaces et hautement sécurisées à chaque fois.

Vous pouvez contribuer à cultiver une incroyable culture de la sécurité au sein de votre organisation en défendant le codage sécurisé et les meilleures pratiques de sécurité dès le départ, en recommandant des solutions de formation et en veillant à ce qu'aucun codeur ne soit laissé pour compte dans le monde en constante évolution de DevSecOps. Le seul bon code est un code sécurisé, et les développeurs compétents et sensibilisés à la sécurité sont des pièces essentielles du puzzle. Les récompenses personnelles et professionnelles en valent certainement la peine, et avec des milliards d'enregistrements de données personnelles compromis chaque année (et de plus en plus), nous avons besoin de vous. Prenez place en première ligne et aidez-nous à nous défendre contre les méchants dans notre monde numérique.

Matias Madou, docteur en sciences, est directeur technique et cofondateur de Secure Code Warrior. C'est un expert en sécurité, un développeur de longue date et un accro de Fortnite.

Voir la ressource
Voir la ressource

Remplissez le formulaire ci-dessous pour télécharger le rapport

Nous aimerions que vous nous autorisiez à vous envoyer des informations sur nos produits et/ou sur des sujets liés au codage sécurisé. Nous traiterons toujours vos données personnelles avec le plus grand soin et ne les vendrons jamais à d'autres entreprises à des fins de marketing.

Soumettre
Pour soumettre le formulaire, veuillez activer les cookies "Analytics". N'hésitez pas à les désactiver à nouveau une fois que vous aurez terminé.

Tout comme la technologie elle-même, les outils, les techniques et les processus optimaux de développement de code évoluent rapidement. Nous, les humains, avons un besoin insatiable de plus de logiciels, de plus de caractéristiques, de plus de fonctionnalités... et nous les voulons plus rapides que jamais, plus qualitatifs et, en plus, sécurisés. Il y a quelques années à peine, le développement agile était la grande nouveauté utilisée pour diviser de gros volumes de travail en plus petits morceaux et pour pouvoir s'adapter rapidement aux cycles de retour d'information rapides provenant du client. Auparavant, c'était la méthode Waterfall qui régnait en maître.

Alors que de nombreuses personnes et organisations passent de l'approche Waterfall à l'approche Agile - et tout le monde n'y est pas encore, soyons réalistes - elles se heurtent déjà à un nouveau problème : les équipes de développement et leurs homologues opérationnels travaillent toujours en silos. Dans cet environnement, comment de petites équipes travaillant de manière agile peuvent-elles tenir la promesse d'un déploiement et d'une livraison plus rapides ?

DevOps, un nom qui est une combinaison de développement et d'opérations, a été créé pour fusionner les fonctions des développeurs et des équipes opérationnelles lors de la création de nouveaux logiciels. Il s'agissait essentiellement d'aider les développeurs à s'approprier la mise en production, au lieu de la confier à l'équipe chargée des opérations et d'en faire sa responsabilité.

Ils peuvent certainement livrer plus rapidement - même plusieurs fois par jour - ce qui semble aller dans le sens de l'Agile. Cependant, DevOps crée toujours une grande équipe mixte d'ingénieurs et de personnel d'exploitation, qui n'est peut-être pas aussi alignée sur Agile dans la réalité. En fin de compte, il est préférable de considérer DevOps comme une évolution d'Agile, car les méthodologies sont similaires à bien des égards et complémentaires dans leurs différences. DevOps promeut un pipeline d'intégration et de déploiement automatisé et continu, ce qui est essentiel pour permettre des mises à jour fréquentes, mais pas aussi suffisant au niveau de l'équipe - et c'est là que l'Agile entre en jeu. L'Agile permet aux équipes, en particulier aux petites équipes, de suivre le rythme de ces versions rapides et de ces exigences changeantes, tout en restant concentrées sur les tâches à accomplir et en collaborant. Cela semble certainement idéal - et le processus peut maintenir les équipes sur la voie de l'objectif final - mais cela n'est pas sans poser de problèmes.

Les logiciels créés à l'aide des meilleures pratiques DevOps ont toujours le potentiel de trébucher lors du premier combat contre le patron : l'équipe de sécurité. Lorsque le code est examiné par les spécialistes AppSec traditionnels/Waterfall, que ce soit avec des outils ou un examen manuel complexe, ils trouvent souvent des risques et des vulnérabilités inacceptables qui doivent alors être corrigés après coup. Le processus d'intégration de correctifs de sécurité dans des applications terminées n'est ni rapide ni facile... et il est beaucoup plus coûteux pour l'organisation.

Alors, si le monde évolue après Waterfall, Agile et maintenant DevOps, quelle est la solution ? Et en tant que développeur, quel est votre rôle pour suivre le rythme de ces changements d'approche ?

Les techniques de développement sont en constante évolution, mais heureusement, celle-ci n'est pas un changement si important. Les organisations ont juste besoin de mettre le "Sec" dans "DevOps"... et c'est ainsi que DevSecOps est né. L'un des principaux objectifs de DevSecOps est de faire tomber les barrières et d'ouvrir la collaboration entre les équipes de développement, d'exploitation et, enfin et surtout, de sécurité. DevSecOps est devenu à la fois une tactique d'ingénierie logicielle et une culture qui prône l'automatisation et la surveillance de la sécurité tout au long du cycle de vie du développement logiciel.

Cela peut sembler être un autre processus au niveau de l'organisation, peut-être un processus avec "trop de cuisiniers" lorsqu'il s'agit d'un développeur avec une longue liste de fonctionnalités à construire. Cependant, la méthodologie DevSecOps offre aux développeurs sensibilisés à la sécurité la possibilité de briller.

L'avenir radieux de DevSecOps

Alors, pourquoi un codeur voudrait-il devenir un ingénieur DevSecOps ? Vous avez peut-être une certaine expérience de DevOps (ou même d'Agile), mais vous souhaitez passer à l'étape suivante pour devenir compétent en DevSecOps. Tout d'abord, il est bon de savoir qu'il s'agit d'une démarche très intelligente, et pas seulement dans le but de mettre le monde à l'abri de cyberattaques coûteuses. Les experts affirment que la demande de personnel talentueux dans le domaine de la cybersécurité monte en flèche et qu'il n'y a pas de fin en vue. Ceux qui maîtrisent DevSecOps peuvent s'attendre à une carrière longue et rentable.

La sécurité de l'emploi pour les ingénieurs DevSecOps est encore plus assurée, car contrairement aux tactiques traditionnelles de cybersécurité telles que l'analyse des vulnérabilités à l'aide d'une gamme d'outils logiciels, DevSecOps nécessite des personnes qui savent comment mettre en œuvre la sécurité au fur et à mesure qu'elles codent. Comme le notent les analystes de Booz, Allen et Hamilton dans leur blog intitulé 5 Myths of Adopting DevSecOps, les entreprises veulent et ont même besoin de DevSecOps, mais ne peuvent tout simplement pas l'acheter. DevSecOps est une méthodologie qui permet aux équipes interfonctionnelles d'intégrer des technologies et de collaborer tout au long du cycle de vie du développement logiciel, et qui nécessite des personnes qualifiées, une gestion du changement et un engagement permanent de la part de multiples parties prenantes.

Selon Booz, Allen et Hamilton, les entreprises peuvent acheter des applications et des outils pour faciliter certains aspects de DevSecOps, comme un logiciel de gestion des versions, "mais ce sont vraiment vos équipes de livraison qui en sont responsables". Ce sont elles qui sont à l'origine de l'amélioration continue offerte par DevSecOps et de son changement de culture et de paradigme.

Les organisations ne peuvent pas "acheter" un programme DevSecOps viable ; il doit être construit et maintenu, en utilisant une gamme d'outils, des connaissances internes et des conseils qui améliorent la culture de la sécurité, tout en ayant un sens commercial. Ce n'est pas facile, mais c'est loin d'être impossible.

Comment vous pouvez vous démarquer dans le mouvement DevSecOps

L'une des premières étapes pour devenir un ingénieur DevSecOps est de réaliser qu'il s'agit autant d'une culture que d'un ensemble de techniques. Il faut avoir la volonté de mettre en œuvre la sécurité dans chaque morceau de code que vous créez, et le désir de protéger votre organisation de manière proactive en recherchant activement les failles de sécurité et les vulnérabilités au fur et à mesure que vous codez, et en les corrigeant bien avant qu'elles n'atteignent la phase de production. La plupart des ingénieurs DevSecOps prennent leur profession et leurs compétences très au sérieux. L'organisation professionnelle DevSecOps dispose même d'un manifeste énonçant ses convictions.

Le manifeste est un peu lourd, car les manifestes sont rarement légers à lire. Mais au cœur de ce manifeste se trouvent quelques vérités que tous les grands ingénieurs DevSecOps devraient apprendre à embrasser, comme :

  • Réalisez que l'équipe chargée de la sécurité des applications est votre alliée. Dans la plupart des entreprises, les spécialistes de la sécurité des applications sont en désaccord avec les développeurs, car ils renvoient toujours le code terminé pour qu'il soit retravaillé. Les équipes AppSec n'aiment pas non plus beaucoup les développeurs, car ils peuvent retarder la mise en production du code terminé en introduisant des bogues de sécurité courants. Cependant, un ingénieur DevSecOps intelligent comprendra que les objectifs des équipes de sécurité sont en fin de compte les mêmes que ceux des développeurs et des codeurs. Vous n'avez pas besoin d'être les meilleurs amis du monde, mais l'établissement d'une relation de travail sereine et collaborative est essentiel à la réussite.
  • Pratiquez et affinez vos techniques de codage sécurisé. Si vous parvenez à détecter les vulnérabilités des applications alors qu'elles sont encore en cours d'élaboration, vous pourrez alors combler ces lacunes et arrêter les futurs pirates dans leur élan. Bien entendu, il faut pour cela comprendre les vulnérabilités et disposer des outils nécessaires pour y remédier. Les pages du blogSecure Code Warrior peuvent vous donner un aperçu des vulnérabilités les plus courantes et les plus dangereuses que vous rencontrerez, ainsi que des conseils pratiques et des défis pour tester vos connaissances. L'aspect le plus important est de garder la sécurité à l'esprit et de prendre le temps de suivre des formations de courte durée qui vous aideront à développer vos connaissances existantes. Il est courant que les interactions d'un développeur avec la sécurité soient plutôt banales, voire négatives, mais le renforcement des compétences en matière de sécurité est un excellent moyen d'évoluer dans sa carrière, et cela ne doit pas être une corvée.
  • Rappelez-vous : Les superstars du DevSecOps contribuent à une culture de sécurité positive au sein de leur organisation. Au lieu de se concentrer sur les objectifs du passé, comme la livraison rapide d'applications sans tenir compte des problèmes inhérents, il est important de faire de la recherche et de la correction des vulnérabilités dans le code de développement une priorité absolue. La sécurité doit être considérée comme le travail de chacun, et tout le monde devrait partager l'adulation et les récompenses qui découlent du déploiement d'applications efficaces et hautement sécurisées à chaque fois.

Vous pouvez contribuer à cultiver une incroyable culture de la sécurité au sein de votre organisation en défendant le codage sécurisé et les meilleures pratiques de sécurité dès le départ, en recommandant des solutions de formation et en veillant à ce qu'aucun codeur ne soit laissé pour compte dans le monde en constante évolution de DevSecOps. Le seul bon code est un code sécurisé, et les développeurs compétents et sensibilisés à la sécurité sont des pièces essentielles du puzzle. Les récompenses personnelles et professionnelles en valent certainement la peine, et avec des milliards d'enregistrements de données personnelles compromis chaque année (et de plus en plus), nous avons besoin de vous. Prenez place en première ligne et aidez-nous à nous défendre contre les méchants dans notre monde numérique.

Matias Madou, docteur en sciences, est directeur technique et cofondateur de Secure Code Warrior. C'est un expert en sécurité, un développeur de longue date et un accro de Fortnite.

Accès aux ressources

Cliquez sur le lien ci-dessous et téléchargez le PDF de cette ressource.

Secure Code Warrior est là pour vous aider à sécuriser le code tout au long du cycle de vie du développement logiciel et à créer une culture dans laquelle la cybersécurité est une priorité. Que vous soyez responsable AppSec, développeur, CISO ou toute autre personne impliquée dans la sécurité, nous pouvons aider votre organisation à réduire les risques associés à un code non sécurisé.

Voir le rapportRéservez une démonstration
Télécharger le PDF
Voir la ressource
Partager sur :
Vous souhaitez en savoir plus ?

Partager sur :
Auteur
Matias Madou, Ph.D.
Publié le 28 février 2020

Matias Madou est expert en sécurité, chercheur, directeur technique et cofondateur de Secure Code Warrior. Matias a obtenu son doctorat en sécurité des applications à l'université de Gand, en se concentrant sur les solutions d'analyse statique. Il a ensuite rejoint Fortify aux États-Unis, où il s'est rendu compte qu'il ne suffisait pas de détecter les problèmes de code sans aider les développeurs à écrire du code sécurisé. C'est ce qui l'a incité à développer des produits qui aident les développeurs, allègent le fardeau de la sécurité et dépassent les attentes des clients. Lorsqu'il n'est pas à son bureau en tant que membre de l'équipe Awesome, il aime être sur scène pour présenter des conférences, notamment RSA Conference, BlackHat et DefCon.

Matias est un chercheur et un développeur qui possède plus de 15 ans d'expérience pratique dans le domaine de la sécurité des logiciels. Il a développé des solutions pour des entreprises telles que Fortify Software et sa propre entreprise Sensei Security. Au cours de sa carrière, Matias a dirigé de nombreux projets de recherche sur la sécurité des applications qui ont débouché sur des produits commerciaux et peut se targuer d'avoir déposé plus de 10 brevets. Lorsqu'il n'est pas à son bureau, Matias a été instructeur pour des formations avancées en matière de sécurité des applications ( courses ) et intervient régulièrement lors de conférences mondiales telles que RSA Conference, Black Hat, DefCon, BSIMM, OWASP AppSec et BruCon.

Matias est titulaire d'un doctorat en ingénierie informatique de l'Université de Gand, où il a étudié la sécurité des applications par le biais de l'obscurcissement des programmes afin de dissimuler le fonctionnement interne d'une application.

Partager sur :

Tout comme la technologie elle-même, les outils, les techniques et les processus optimaux de développement de code évoluent rapidement. Nous, les humains, avons un besoin insatiable de plus de logiciels, de plus de caractéristiques, de plus de fonctionnalités... et nous les voulons plus rapides que jamais, plus qualitatifs et, en plus, sécurisés. Il y a quelques années à peine, le développement agile était la grande nouveauté utilisée pour diviser de gros volumes de travail en plus petits morceaux et pour pouvoir s'adapter rapidement aux cycles de retour d'information rapides provenant du client. Auparavant, c'était la méthode Waterfall qui régnait en maître.

Alors que de nombreuses personnes et organisations passent de l'approche Waterfall à l'approche Agile - et tout le monde n'y est pas encore, soyons réalistes - elles se heurtent déjà à un nouveau problème : les équipes de développement et leurs homologues opérationnels travaillent toujours en silos. Dans cet environnement, comment de petites équipes travaillant de manière agile peuvent-elles tenir la promesse d'un déploiement et d'une livraison plus rapides ?

DevOps, un nom qui est une combinaison de développement et d'opérations, a été créé pour fusionner les fonctions des développeurs et des équipes opérationnelles lors de la création de nouveaux logiciels. Il s'agissait essentiellement d'aider les développeurs à s'approprier la mise en production, au lieu de la confier à l'équipe chargée des opérations et d'en faire sa responsabilité.

Ils peuvent certainement livrer plus rapidement - même plusieurs fois par jour - ce qui semble aller dans le sens de l'Agile. Cependant, DevOps crée toujours une grande équipe mixte d'ingénieurs et de personnel d'exploitation, qui n'est peut-être pas aussi alignée sur Agile dans la réalité. En fin de compte, il est préférable de considérer DevOps comme une évolution d'Agile, car les méthodologies sont similaires à bien des égards et complémentaires dans leurs différences. DevOps promeut un pipeline d'intégration et de déploiement automatisé et continu, ce qui est essentiel pour permettre des mises à jour fréquentes, mais pas aussi suffisant au niveau de l'équipe - et c'est là que l'Agile entre en jeu. L'Agile permet aux équipes, en particulier aux petites équipes, de suivre le rythme de ces versions rapides et de ces exigences changeantes, tout en restant concentrées sur les tâches à accomplir et en collaborant. Cela semble certainement idéal - et le processus peut maintenir les équipes sur la voie de l'objectif final - mais cela n'est pas sans poser de problèmes.

Les logiciels créés à l'aide des meilleures pratiques DevOps ont toujours le potentiel de trébucher lors du premier combat contre le patron : l'équipe de sécurité. Lorsque le code est examiné par les spécialistes AppSec traditionnels/Waterfall, que ce soit avec des outils ou un examen manuel complexe, ils trouvent souvent des risques et des vulnérabilités inacceptables qui doivent alors être corrigés après coup. Le processus d'intégration de correctifs de sécurité dans des applications terminées n'est ni rapide ni facile... et il est beaucoup plus coûteux pour l'organisation.

Alors, si le monde évolue après Waterfall, Agile et maintenant DevOps, quelle est la solution ? Et en tant que développeur, quel est votre rôle pour suivre le rythme de ces changements d'approche ?

Les techniques de développement sont en constante évolution, mais heureusement, celle-ci n'est pas un changement si important. Les organisations ont juste besoin de mettre le "Sec" dans "DevOps"... et c'est ainsi que DevSecOps est né. L'un des principaux objectifs de DevSecOps est de faire tomber les barrières et d'ouvrir la collaboration entre les équipes de développement, d'exploitation et, enfin et surtout, de sécurité. DevSecOps est devenu à la fois une tactique d'ingénierie logicielle et une culture qui prône l'automatisation et la surveillance de la sécurité tout au long du cycle de vie du développement logiciel.

Cela peut sembler être un autre processus au niveau de l'organisation, peut-être un processus avec "trop de cuisiniers" lorsqu'il s'agit d'un développeur avec une longue liste de fonctionnalités à construire. Cependant, la méthodologie DevSecOps offre aux développeurs sensibilisés à la sécurité la possibilité de briller.

L'avenir radieux de DevSecOps

Alors, pourquoi un codeur voudrait-il devenir un ingénieur DevSecOps ? Vous avez peut-être une certaine expérience de DevOps (ou même d'Agile), mais vous souhaitez passer à l'étape suivante pour devenir compétent en DevSecOps. Tout d'abord, il est bon de savoir qu'il s'agit d'une démarche très intelligente, et pas seulement dans le but de mettre le monde à l'abri de cyberattaques coûteuses. Les experts affirment que la demande de personnel talentueux dans le domaine de la cybersécurité monte en flèche et qu'il n'y a pas de fin en vue. Ceux qui maîtrisent DevSecOps peuvent s'attendre à une carrière longue et rentable.

La sécurité de l'emploi pour les ingénieurs DevSecOps est encore plus assurée, car contrairement aux tactiques traditionnelles de cybersécurité telles que l'analyse des vulnérabilités à l'aide d'une gamme d'outils logiciels, DevSecOps nécessite des personnes qui savent comment mettre en œuvre la sécurité au fur et à mesure qu'elles codent. Comme le notent les analystes de Booz, Allen et Hamilton dans leur blog intitulé 5 Myths of Adopting DevSecOps, les entreprises veulent et ont même besoin de DevSecOps, mais ne peuvent tout simplement pas l'acheter. DevSecOps est une méthodologie qui permet aux équipes interfonctionnelles d'intégrer des technologies et de collaborer tout au long du cycle de vie du développement logiciel, et qui nécessite des personnes qualifiées, une gestion du changement et un engagement permanent de la part de multiples parties prenantes.

Selon Booz, Allen et Hamilton, les entreprises peuvent acheter des applications et des outils pour faciliter certains aspects de DevSecOps, comme un logiciel de gestion des versions, "mais ce sont vraiment vos équipes de livraison qui en sont responsables". Ce sont elles qui sont à l'origine de l'amélioration continue offerte par DevSecOps et de son changement de culture et de paradigme.

Les organisations ne peuvent pas "acheter" un programme DevSecOps viable ; il doit être construit et maintenu, en utilisant une gamme d'outils, des connaissances internes et des conseils qui améliorent la culture de la sécurité, tout en ayant un sens commercial. Ce n'est pas facile, mais c'est loin d'être impossible.

Comment vous pouvez vous démarquer dans le mouvement DevSecOps

L'une des premières étapes pour devenir un ingénieur DevSecOps est de réaliser qu'il s'agit autant d'une culture que d'un ensemble de techniques. Il faut avoir la volonté de mettre en œuvre la sécurité dans chaque morceau de code que vous créez, et le désir de protéger votre organisation de manière proactive en recherchant activement les failles de sécurité et les vulnérabilités au fur et à mesure que vous codez, et en les corrigeant bien avant qu'elles n'atteignent la phase de production. La plupart des ingénieurs DevSecOps prennent leur profession et leurs compétences très au sérieux. L'organisation professionnelle DevSecOps dispose même d'un manifeste énonçant ses convictions.

Le manifeste est un peu lourd, car les manifestes sont rarement légers à lire. Mais au cœur de ce manifeste se trouvent quelques vérités que tous les grands ingénieurs DevSecOps devraient apprendre à embrasser, comme :

  • Réalisez que l'équipe chargée de la sécurité des applications est votre alliée. Dans la plupart des entreprises, les spécialistes de la sécurité des applications sont en désaccord avec les développeurs, car ils renvoient toujours le code terminé pour qu'il soit retravaillé. Les équipes AppSec n'aiment pas non plus beaucoup les développeurs, car ils peuvent retarder la mise en production du code terminé en introduisant des bogues de sécurité courants. Cependant, un ingénieur DevSecOps intelligent comprendra que les objectifs des équipes de sécurité sont en fin de compte les mêmes que ceux des développeurs et des codeurs. Vous n'avez pas besoin d'être les meilleurs amis du monde, mais l'établissement d'une relation de travail sereine et collaborative est essentiel à la réussite.
  • Pratiquez et affinez vos techniques de codage sécurisé. Si vous parvenez à détecter les vulnérabilités des applications alors qu'elles sont encore en cours d'élaboration, vous pourrez alors combler ces lacunes et arrêter les futurs pirates dans leur élan. Bien entendu, il faut pour cela comprendre les vulnérabilités et disposer des outils nécessaires pour y remédier. Les pages du blogSecure Code Warrior peuvent vous donner un aperçu des vulnérabilités les plus courantes et les plus dangereuses que vous rencontrerez, ainsi que des conseils pratiques et des défis pour tester vos connaissances. L'aspect le plus important est de garder la sécurité à l'esprit et de prendre le temps de suivre des formations de courte durée qui vous aideront à développer vos connaissances existantes. Il est courant que les interactions d'un développeur avec la sécurité soient plutôt banales, voire négatives, mais le renforcement des compétences en matière de sécurité est un excellent moyen d'évoluer dans sa carrière, et cela ne doit pas être une corvée.
  • Rappelez-vous : Les superstars du DevSecOps contribuent à une culture de sécurité positive au sein de leur organisation. Au lieu de se concentrer sur les objectifs du passé, comme la livraison rapide d'applications sans tenir compte des problèmes inhérents, il est important de faire de la recherche et de la correction des vulnérabilités dans le code de développement une priorité absolue. La sécurité doit être considérée comme le travail de chacun, et tout le monde devrait partager l'adulation et les récompenses qui découlent du déploiement d'applications efficaces et hautement sécurisées à chaque fois.

Vous pouvez contribuer à cultiver une incroyable culture de la sécurité au sein de votre organisation en défendant le codage sécurisé et les meilleures pratiques de sécurité dès le départ, en recommandant des solutions de formation et en veillant à ce qu'aucun codeur ne soit laissé pour compte dans le monde en constante évolution de DevSecOps. Le seul bon code est un code sécurisé, et les développeurs compétents et sensibilisés à la sécurité sont des pièces essentielles du puzzle. Les récompenses personnelles et professionnelles en valent certainement la peine, et avec des milliards d'enregistrements de données personnelles compromis chaque année (et de plus en plus), nous avons besoin de vous. Prenez place en première ligne et aidez-nous à nous défendre contre les méchants dans notre monde numérique.

Matias Madou, docteur en sciences, est directeur technique et cofondateur de Secure Code Warrior. C'est un expert en sécurité, un développeur de longue date et un accro de Fortnite.

Table des matières

Télécharger le PDF
Voir la ressource
Vous souhaitez en savoir plus ?

Matias Madou est expert en sécurité, chercheur, directeur technique et cofondateur de Secure Code Warrior. Matias a obtenu son doctorat en sécurité des applications à l'université de Gand, en se concentrant sur les solutions d'analyse statique. Il a ensuite rejoint Fortify aux États-Unis, où il s'est rendu compte qu'il ne suffisait pas de détecter les problèmes de code sans aider les développeurs à écrire du code sécurisé. C'est ce qui l'a incité à développer des produits qui aident les développeurs, allègent le fardeau de la sécurité et dépassent les attentes des clients. Lorsqu'il n'est pas à son bureau en tant que membre de l'équipe Awesome, il aime être sur scène pour présenter des conférences, notamment RSA Conference, BlackHat et DefCon.

Secure Code Warrior est là pour vous aider à sécuriser le code tout au long du cycle de vie du développement logiciel et à créer une culture dans laquelle la cybersécurité est une priorité. Que vous soyez responsable AppSec, développeur, CISO ou toute autre personne impliquée dans la sécurité, nous pouvons aider votre organisation à réduire les risques associés à un code non sécurisé.

Réservez une démonstrationTélécharger
Partager sur :
Centre de ressources

Ressources pour vous aider à démarrer

Plus d'articles
Centre de ressources

Ressources pour vous aider à démarrer

Plus d'articles