Atténuer la dette technique grâce à une sécurité pilotée par les développeurs
Parlons de la dette
Tout le monde sait aujourd'hui que la cybercriminalité est devenue un problème majeur pour l'économie mondiale. En 2022, le coût moyen d'une violation de données aux États-Unis s'élevait à 9,44 millions de dollars, contre 9,05 millions de dollars l'année précédente. Il est important de ne pas ignorer le coût du code non sécurisé et de la dette technique accumulée. Selon le rapport 2022 du Consortium for Information and Software Quality : The Cost of Poor Software Quality report, on estime que le coût de la mauvaise qualité des logiciels aux États-Unis s'élève à 2,41 billions de dollars et que la dette technique accumulée s'élève à 1,52 billions de dollars.
Les coûts croissants du traitement des codes non sécurisés et de leur dette technique sont devenus le principal obstacle à toute modification des bases de code existantes, les laissant ainsi vulnérables à l'exploitation et aux menaces extérieures. L'état de la sécurité des logiciels est confronté à une crise existentielle - nous savons que nous devons améliorer notre posture de sécurité et nous attaquer à la dette technique accumulée, mais les obstacles sont énormes :
- On estime à 300 000 le nombre de postes de développeurs de logiciels et d'emplois liés à l'informatique non pourvus aux États-Unis, avec un taux de croissance prévu de 15 %.
- On prévoit que d'ici 2025, 40 % des budgets informatiques seront consacrés à la simple maintenance de la dette technologique.
- 1/3 des heures hebdomadaires des développeurs sont en moyenne consacrées au traitement de la dette technologique
Les solutions rapides sont risquées - et plus coûteuses à long terme
Qu'est-ce que la dette technique et pourquoi est-elle si importante ? La dette technique s'accumule lorsque les décideurs optent pour une solution à court terme à un problème de développement logiciel - au lieu d'une solution plus exhaustive et à long terme. Cela s'accompagne d'un coût caché substantiel que les organisations doivent payer plus tard. À l'instar d'une carte de crédit épuisée, la dette technique se compose de deux éléments principaux :
- Principal - se réfère au coût total du remaniement ou de la correction d'un logiciel afin qu'il atteigne le niveau souhaité de maintenabilité et de sécurité.
- Intérêt - l'effort supplémentaire que les développeurs consacrent à ces changements pour remédier à la seule dette technique, et non à de nouvelles fonctionnalités. Chaque minute passée sur un code qui n'est pas tout à fait correct ajoute de l'intérêt à la dette.
On peut finir par atteindre un état de "faillite technique" lorsque le coût des nouvelles fonctionnalités, des corrections de bogues et de la maintenance dépasse le budget du projet, ce qui réduit considérablement la valeur de l'application logicielle.
Cependant, une certaine accumulation de dettes, comme dans la vie, est normale et, dans la plupart des cas, quelque peu attendue.
Idéalement, tous les développeurs de logiciels devraient réduire les bogues autant que possible avant de livrer le code. Cependant, ils sont confrontés à un compromis difficile : pour être compétitive, une organisation peut vouloir livrer des fonctionnalités ou des produits à ses clients rapidement et à un coût minimum. En conséquence, la qualité de l'application en pâtit, car les indicateurs clés de performance des développeurs sont basés sur la rapidité de la livraison et le coût initial de la construction. Ce qui manque dans le tableau, ce sont les lacunes accumulées et les vulnérabilités potentielles intégrées dans le code. Celui-ci est donc mûr pour des bogues ou des vulnérabilités de sécurité en aval ou, pire, pour une exploitation par des acteurs malveillants.
Mais c'est là que réside l'énigme : existe-t-il un autre moyen de livrer des produits rapidement sans accumuler une dette technique massive ?
Le coût de la détection et de la correction des lacunes et des vulnérabilités est la dépense la plus importante du cycle de développement des logiciels. Plus les problèmes sont détectés tôt dans le cycle de développement, plus la livraison globale sera rentable.
La dette technique peut se transformer en dette de sécurité
De nombreux développeurs tentent de contourner ce compromis en utilisant un code source ouvert qui leur permet d'avancer rapidement et, dans l'idéal, d'utiliser une solution déjà validée. Toutefois, le fait de s'appuyer fortement sur des logiciels à code source ouvert présente souvent ses propres risques:
- 82% des composants open source se sont révélés obsolètes (c'est-à-dire non corrigés ou mal pris en charge).
- 75 % des bases de code contenaient des vulnérabilités (contre 60 % en 2018), et 49 % contenaient des vulnérabilités à haut risque.
- En moyenne, 82 vulnérabilités ont été identifiées par base de code.
Cette situation entraîne la prolifération d'un sous-ensemble de la dette technique : la dette de sécurité. La dette de sécurité est l'accumulation de vulnérabilités dans une application logicielle qui rend plus difficile, voire impossible, la protection des données et des systèmes contre une attaque.
L'un des exemples les plus notoires est celui d'Equifax, le géant de l'information sur le crédit qui a été victime d'une brèche en 2017 parce qu'il n'avait pas corrigé une vulnérabilité connue dans Apache Struts, un cadre d'application web open-source populaire. Le correctif était disponible depuis des mois, mais la brèche a compromis les données personnelles cruciales de plus de 147 millions de personnes.
Il convient donc d'accorder une plus grande attention aux pratiques de codage sécurisées, car de nombreuses applications ont atteint une masse critique non seulement en termes de dette technique, mais aussi de densité de faiblesses et de vulnérabilités en matière de sécurité dans l'application elle-même.
Cela peut entraîner des pertes considérables, qui peuvent être matérielles ou immatérielles :
Atteinte à la réputation : La perte de la confiance des clients peut avoir un impact extrêmement négatif à long terme. Il peut s'agir d'une atteinte à la marque, d'une perte de chiffre d'affaires et de problèmes juridiques coûteux à la suite d'une violation.
Impact sur la réglementation et la conformité : Si une faille de sécurité peut amener une entreprise à ne pas respecter un délai et/ou des obligations contractuelles, l'entreprise peut avoir des problèmes avec les autorités de régulation, ce qui entraîne des amendes importantes. Le non-respect d'un accord de niveau de service peut entraîner des problèmes avec les autorités de réglementation et des amendes importantes.
Coûts de remise en état : Des travaux supplémentaires sont souvent nécessaires à la suite d'une panne ou d'un arrêt pour compenser la perte de productivité.
Prévenir la dette technique et de sécurité dans le cycle de développement durable (SDLC)
De nombreuses organisations ont déjà réorienté leur budget pour renforcer leur dispositif de sécurité. L'année dernière, Google s'est engagé à verser 10 milliards de dollars sur cinq ans pour financer un programme de renforcement de la cybersécurité. L'administration Biden a également demandé 2,1 milliards de dollars dans le budget discrétionnaire de 2022 pour l'Agence pour la cybersécurité et la sécurité des infrastructures (CISA).
Fournir davantage de ressources et de formations pour soutenir la croissance professionnelle et les connaissances de vos développeurs peut être la première étape dans l'établissement de normes de qualité pour tous les codes livrés en production.
Le coût de la détection et de la correction d'une vulnérabilité ou d'un défaut augmente de manière exponentielle plus la détection et la correction sont tardives dans le cycle de développement du logiciel. Et comme nous l'avons vu, en consacrant tant de temps à la résolution de la dette technique et de sécurité, les organisations créent leurs propres pertes en renonçant à l'innovation et au temps consacré à de nouvelles fonctionnalités ou à de nouveaux produits.
En 2022, une majorité d'équipes de développeurs ont déclaré que DevOps ou DevSecOps était leur méthodologie de choix, et ce n'est pas une surprise. DevSecOps intègre la sécurité à chaque étape du cycle de vie du développement logiciel afin de fournir des applications de meilleure qualité et plus sûres. Les équipes de sécurité et de développement continuent de travailler en silos et de connaître des tensions, mais il est clair que cela doit changer pour aider les entreprises à réussir. DevOps fait partie de la manière dont les organisations tentent de faire tomber les barrières et de remodeler la culture. L'objectif fondamental de DevSecOps est de renforcer la collaboration entre l'AppSec/la sécurité et les développeurs dès le début du cycle de vie du développement logiciel.
La mise en œuvre d'une nouvelle façon de penser la dette technique et la sécurité ne doit pas nécessairement être un exploit monumental. L'instauration d'un état d'esprit proactif par le biais de la formation est essentielle lorsqu'il s'agit d'améliorer la sensibilisation à la sécurité et les compétences de la communauté des développeurs d'une organisation. Une solide formation au codage sécurisé pour les développeurs garantit que l'apprentissage est continu, interactif, pertinent et contextuel. Une approche véritablement holistique doit prendre en compte ce qui est nécessaire pour favoriser une véritable culture de la sécurité menée par les développeurs. Cela peut nécessiter un changement d'orientation par rapport aux méthodes habituelles de gestion et de constitution d'équipes de développeurs.
Créer un changement de culture n'est pas facile, mais Secure Code Warrior vous aide à identifier vos champions de la sécurité et à doter les développeurs et les organisations des compétences adéquates pour relever les défis actuels de la sécurité en constante évolution.
Le lancement d'un programme de code sécurisé engageant et évolutif est un investissement valable en raison de l'approche préventive à long terme de la sécurité, au lieu de l'approche réactive du passé. En fin de compte, cela permet d'atténuer les risques coûteux d'une violation, d'enseigner aux développeurs comment trouver et corriger rapidement les vulnérabilités, et de faciliter une approche plus agile du développement de produits et une mise sur le marché plus rapide.
Le coût du traitement du code non sécurisé et de la dette technique qui en découle est l'un des plus grands obstacles auxquels est confrontée la technologie aujourd'hui. Découvrez comment la mise en œuvre d'un programme évolutif de formation au code sécurisé permet de réduire la dette technique en s'attaquant aux mauvais schémas de codage et en détectant les vulnérabilités dès le début du cycle de développement du logiciel.
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émonstrationTaylor Broadfoot-Nymark est responsable du marketing produit à l'adresse Secure Code Warrior. Elle a écrit plusieurs articles sur la cybersécurité et l'apprentissage agile, et dirige également les lancements de produits, la stratégie GTM et la défense des intérêts des clients.
Parlons de la dette
Tout le monde sait aujourd'hui que la cybercriminalité est devenue un problème majeur pour l'économie mondiale. En 2022, le coût moyen d'une violation de données aux États-Unis s'élevait à 9,44 millions de dollars, contre 9,05 millions de dollars l'année précédente. Il est important de ne pas ignorer le coût du code non sécurisé et de la dette technique accumulée. Selon le rapport 2022 du Consortium for Information and Software Quality : The Cost of Poor Software Quality report, on estime que le coût de la mauvaise qualité des logiciels aux États-Unis s'élève à 2,41 billions de dollars et que la dette technique accumulée s'élève à 1,52 billions de dollars.
Les coûts croissants du traitement des codes non sécurisés et de leur dette technique sont devenus le principal obstacle à toute modification des bases de code existantes, les laissant ainsi vulnérables à l'exploitation et aux menaces extérieures. L'état de la sécurité des logiciels est confronté à une crise existentielle - nous savons que nous devons améliorer notre posture de sécurité et nous attaquer à la dette technique accumulée, mais les obstacles sont énormes :
- On estime à 300 000 le nombre de postes de développeurs de logiciels et d'emplois liés à l'informatique non pourvus aux États-Unis, avec un taux de croissance prévu de 15 %.
- On prévoit que d'ici 2025, 40 % des budgets informatiques seront consacrés à la simple maintenance de la dette technologique.
- 1/3 des heures hebdomadaires des développeurs sont en moyenne consacrées au traitement de la dette technologique
Les solutions rapides sont risquées - et plus coûteuses à long terme
Qu'est-ce que la dette technique et pourquoi est-elle si importante ? La dette technique s'accumule lorsque les décideurs optent pour une solution à court terme à un problème de développement logiciel - au lieu d'une solution plus exhaustive et à long terme. Cela s'accompagne d'un coût caché substantiel que les organisations doivent payer plus tard. À l'instar d'une carte de crédit épuisée, la dette technique se compose de deux éléments principaux :
- Principal - se réfère au coût total du remaniement ou de la correction d'un logiciel afin qu'il atteigne le niveau souhaité de maintenabilité et de sécurité.
- Intérêt - l'effort supplémentaire que les développeurs consacrent à ces changements pour remédier à la seule dette technique, et non à de nouvelles fonctionnalités. Chaque minute passée sur un code qui n'est pas tout à fait correct ajoute de l'intérêt à la dette.
On peut finir par atteindre un état de "faillite technique" lorsque le coût des nouvelles fonctionnalités, des corrections de bogues et de la maintenance dépasse le budget du projet, ce qui réduit considérablement la valeur de l'application logicielle.
Cependant, une certaine accumulation de dettes, comme dans la vie, est normale et, dans la plupart des cas, quelque peu attendue.
Idéalement, tous les développeurs de logiciels devraient réduire les bogues autant que possible avant de livrer le code. Cependant, ils sont confrontés à un compromis difficile : pour être compétitive, une organisation peut vouloir livrer des fonctionnalités ou des produits à ses clients rapidement et à un coût minimum. En conséquence, la qualité de l'application en pâtit, car les indicateurs clés de performance des développeurs sont basés sur la rapidité de la livraison et le coût initial de la construction. Ce qui manque dans le tableau, ce sont les lacunes accumulées et les vulnérabilités potentielles intégrées dans le code. Celui-ci est donc mûr pour des bogues ou des vulnérabilités de sécurité en aval ou, pire, pour une exploitation par des acteurs malveillants.
Mais c'est là que réside l'énigme : existe-t-il un autre moyen de livrer des produits rapidement sans accumuler une dette technique massive ?
Le coût de la détection et de la correction des lacunes et des vulnérabilités est la dépense la plus importante du cycle de développement des logiciels. Plus les problèmes sont détectés tôt dans le cycle de développement, plus la livraison globale sera rentable.
La dette technique peut se transformer en dette de sécurité
De nombreux développeurs tentent de contourner ce compromis en utilisant un code source ouvert qui leur permet d'avancer rapidement et, dans l'idéal, d'utiliser une solution déjà validée. Toutefois, le fait de s'appuyer fortement sur des logiciels à code source ouvert présente souvent ses propres risques:
- 82% des composants open source se sont révélés obsolètes (c'est-à-dire non corrigés ou mal pris en charge).
- 75 % des bases de code contenaient des vulnérabilités (contre 60 % en 2018), et 49 % contenaient des vulnérabilités à haut risque.
- En moyenne, 82 vulnérabilités ont été identifiées par base de code.
Cette situation entraîne la prolifération d'un sous-ensemble de la dette technique : la dette de sécurité. La dette de sécurité est l'accumulation de vulnérabilités dans une application logicielle qui rend plus difficile, voire impossible, la protection des données et des systèmes contre une attaque.
L'un des exemples les plus notoires est celui d'Equifax, le géant de l'information sur le crédit qui a été victime d'une brèche en 2017 parce qu'il n'avait pas corrigé une vulnérabilité connue dans Apache Struts, un cadre d'application web open-source populaire. Le correctif était disponible depuis des mois, mais la brèche a compromis les données personnelles cruciales de plus de 147 millions de personnes.
Il convient donc d'accorder une plus grande attention aux pratiques de codage sécurisées, car de nombreuses applications ont atteint une masse critique non seulement en termes de dette technique, mais aussi de densité de faiblesses et de vulnérabilités en matière de sécurité dans l'application elle-même.
Cela peut entraîner des pertes considérables, qui peuvent être matérielles ou immatérielles :
Atteinte à la réputation : La perte de la confiance des clients peut avoir un impact extrêmement négatif à long terme. Il peut s'agir d'une atteinte à la marque, d'une perte de chiffre d'affaires et de problèmes juridiques coûteux à la suite d'une violation.
Impact sur la réglementation et la conformité : Si une faille de sécurité peut amener une entreprise à ne pas respecter un délai et/ou des obligations contractuelles, l'entreprise peut avoir des problèmes avec les autorités de régulation, ce qui entraîne des amendes importantes. Le non-respect d'un accord de niveau de service peut entraîner des problèmes avec les autorités de réglementation et des amendes importantes.
Coûts de remise en état : Des travaux supplémentaires sont souvent nécessaires à la suite d'une panne ou d'un arrêt pour compenser la perte de productivité.
Prévenir la dette technique et de sécurité dans le cycle de développement durable (SDLC)
De nombreuses organisations ont déjà réorienté leur budget pour renforcer leur dispositif de sécurité. L'année dernière, Google s'est engagé à verser 10 milliards de dollars sur cinq ans pour financer un programme de renforcement de la cybersécurité. L'administration Biden a également demandé 2,1 milliards de dollars dans le budget discrétionnaire de 2022 pour l'Agence pour la cybersécurité et la sécurité des infrastructures (CISA).
Fournir davantage de ressources et de formations pour soutenir la croissance professionnelle et les connaissances de vos développeurs peut être la première étape dans l'établissement de normes de qualité pour tous les codes livrés en production.
Le coût de la détection et de la correction d'une vulnérabilité ou d'un défaut augmente de manière exponentielle plus la détection et la correction sont tardives dans le cycle de développement du logiciel. Et comme nous l'avons vu, en consacrant tant de temps à la résolution de la dette technique et de sécurité, les organisations créent leurs propres pertes en renonçant à l'innovation et au temps consacré à de nouvelles fonctionnalités ou à de nouveaux produits.
En 2022, une majorité d'équipes de développeurs ont déclaré que DevOps ou DevSecOps était leur méthodologie de choix, et ce n'est pas une surprise. DevSecOps intègre la sécurité à chaque étape du cycle de vie du développement logiciel afin de fournir des applications de meilleure qualité et plus sûres. Les équipes de sécurité et de développement continuent de travailler en silos et de connaître des tensions, mais il est clair que cela doit changer pour aider les entreprises à réussir. DevOps fait partie de la manière dont les organisations tentent de faire tomber les barrières et de remodeler la culture. L'objectif fondamental de DevSecOps est de renforcer la collaboration entre l'AppSec/la sécurité et les développeurs dès le début du cycle de vie du développement logiciel.
La mise en œuvre d'une nouvelle façon de penser la dette technique et la sécurité ne doit pas nécessairement être un exploit monumental. L'instauration d'un état d'esprit proactif par le biais de la formation est essentielle lorsqu'il s'agit d'améliorer la sensibilisation à la sécurité et les compétences de la communauté des développeurs d'une organisation. Une solide formation au codage sécurisé pour les développeurs garantit que l'apprentissage est continu, interactif, pertinent et contextuel. Une approche véritablement holistique doit prendre en compte ce qui est nécessaire pour favoriser une véritable culture de la sécurité menée par les développeurs. Cela peut nécessiter un changement d'orientation par rapport aux méthodes habituelles de gestion et de constitution d'équipes de développeurs.
Créer un changement de culture n'est pas facile, mais Secure Code Warrior vous aide à identifier vos champions de la sécurité et à doter les développeurs et les organisations des compétences adéquates pour relever les défis actuels de la sécurité en constante évolution.
Le lancement d'un programme de code sécurisé engageant et évolutif est un investissement valable en raison de l'approche préventive à long terme de la sécurité, au lieu de l'approche réactive du passé. En fin de compte, cela permet d'atténuer les risques coûteux d'une violation, d'enseigner aux développeurs comment trouver et corriger rapidement les vulnérabilités, et de faciliter une approche plus agile du développement de produits et une mise sur le marché plus rapide.
Parlons de la dette
Tout le monde sait aujourd'hui que la cybercriminalité est devenue un problème majeur pour l'économie mondiale. En 2022, le coût moyen d'une violation de données aux États-Unis s'élevait à 9,44 millions de dollars, contre 9,05 millions de dollars l'année précédente. Il est important de ne pas ignorer le coût du code non sécurisé et de la dette technique accumulée. Selon le rapport 2022 du Consortium for Information and Software Quality : The Cost of Poor Software Quality report, on estime que le coût de la mauvaise qualité des logiciels aux États-Unis s'élève à 2,41 billions de dollars et que la dette technique accumulée s'élève à 1,52 billions de dollars.
Les coûts croissants du traitement des codes non sécurisés et de leur dette technique sont devenus le principal obstacle à toute modification des bases de code existantes, les laissant ainsi vulnérables à l'exploitation et aux menaces extérieures. L'état de la sécurité des logiciels est confronté à une crise existentielle - nous savons que nous devons améliorer notre posture de sécurité et nous attaquer à la dette technique accumulée, mais les obstacles sont énormes :
- On estime à 300 000 le nombre de postes de développeurs de logiciels et d'emplois liés à l'informatique non pourvus aux États-Unis, avec un taux de croissance prévu de 15 %.
- On prévoit que d'ici 2025, 40 % des budgets informatiques seront consacrés à la simple maintenance de la dette technologique.
- 1/3 des heures hebdomadaires des développeurs sont en moyenne consacrées au traitement de la dette technologique
Les solutions rapides sont risquées - et plus coûteuses à long terme
Qu'est-ce que la dette technique et pourquoi est-elle si importante ? La dette technique s'accumule lorsque les décideurs optent pour une solution à court terme à un problème de développement logiciel - au lieu d'une solution plus exhaustive et à long terme. Cela s'accompagne d'un coût caché substantiel que les organisations doivent payer plus tard. À l'instar d'une carte de crédit épuisée, la dette technique se compose de deux éléments principaux :
- Principal - se réfère au coût total du remaniement ou de la correction d'un logiciel afin qu'il atteigne le niveau souhaité de maintenabilité et de sécurité.
- Intérêt - l'effort supplémentaire que les développeurs consacrent à ces changements pour remédier à la seule dette technique, et non à de nouvelles fonctionnalités. Chaque minute passée sur un code qui n'est pas tout à fait correct ajoute de l'intérêt à la dette.
On peut finir par atteindre un état de "faillite technique" lorsque le coût des nouvelles fonctionnalités, des corrections de bogues et de la maintenance dépasse le budget du projet, ce qui réduit considérablement la valeur de l'application logicielle.
Cependant, une certaine accumulation de dettes, comme dans la vie, est normale et, dans la plupart des cas, quelque peu attendue.
Idéalement, tous les développeurs de logiciels devraient réduire les bogues autant que possible avant de livrer le code. Cependant, ils sont confrontés à un compromis difficile : pour être compétitive, une organisation peut vouloir livrer des fonctionnalités ou des produits à ses clients rapidement et à un coût minimum. En conséquence, la qualité de l'application en pâtit, car les indicateurs clés de performance des développeurs sont basés sur la rapidité de la livraison et le coût initial de la construction. Ce qui manque dans le tableau, ce sont les lacunes accumulées et les vulnérabilités potentielles intégrées dans le code. Celui-ci est donc mûr pour des bogues ou des vulnérabilités de sécurité en aval ou, pire, pour une exploitation par des acteurs malveillants.
Mais c'est là que réside l'énigme : existe-t-il un autre moyen de livrer des produits rapidement sans accumuler une dette technique massive ?
Le coût de la détection et de la correction des lacunes et des vulnérabilités est la dépense la plus importante du cycle de développement des logiciels. Plus les problèmes sont détectés tôt dans le cycle de développement, plus la livraison globale sera rentable.
La dette technique peut se transformer en dette de sécurité
De nombreux développeurs tentent de contourner ce compromis en utilisant un code source ouvert qui leur permet d'avancer rapidement et, dans l'idéal, d'utiliser une solution déjà validée. Toutefois, le fait de s'appuyer fortement sur des logiciels à code source ouvert présente souvent ses propres risques:
- 82% des composants open source se sont révélés obsolètes (c'est-à-dire non corrigés ou mal pris en charge).
- 75 % des bases de code contenaient des vulnérabilités (contre 60 % en 2018), et 49 % contenaient des vulnérabilités à haut risque.
- En moyenne, 82 vulnérabilités ont été identifiées par base de code.
Cette situation entraîne la prolifération d'un sous-ensemble de la dette technique : la dette de sécurité. La dette de sécurité est l'accumulation de vulnérabilités dans une application logicielle qui rend plus difficile, voire impossible, la protection des données et des systèmes contre une attaque.
L'un des exemples les plus notoires est celui d'Equifax, le géant de l'information sur le crédit qui a été victime d'une brèche en 2017 parce qu'il n'avait pas corrigé une vulnérabilité connue dans Apache Struts, un cadre d'application web open-source populaire. Le correctif était disponible depuis des mois, mais la brèche a compromis les données personnelles cruciales de plus de 147 millions de personnes.
Il convient donc d'accorder une plus grande attention aux pratiques de codage sécurisées, car de nombreuses applications ont atteint une masse critique non seulement en termes de dette technique, mais aussi de densité de faiblesses et de vulnérabilités en matière de sécurité dans l'application elle-même.
Cela peut entraîner des pertes considérables, qui peuvent être matérielles ou immatérielles :
Atteinte à la réputation : La perte de la confiance des clients peut avoir un impact extrêmement négatif à long terme. Il peut s'agir d'une atteinte à la marque, d'une perte de chiffre d'affaires et de problèmes juridiques coûteux à la suite d'une violation.
Impact sur la réglementation et la conformité : Si une faille de sécurité peut amener une entreprise à ne pas respecter un délai et/ou des obligations contractuelles, l'entreprise peut avoir des problèmes avec les autorités de régulation, ce qui entraîne des amendes importantes. Le non-respect d'un accord de niveau de service peut entraîner des problèmes avec les autorités de réglementation et des amendes importantes.
Coûts de remise en état : Des travaux supplémentaires sont souvent nécessaires à la suite d'une panne ou d'un arrêt pour compenser la perte de productivité.
Prévenir la dette technique et de sécurité dans le cycle de développement durable (SDLC)
De nombreuses organisations ont déjà réorienté leur budget pour renforcer leur dispositif de sécurité. L'année dernière, Google s'est engagé à verser 10 milliards de dollars sur cinq ans pour financer un programme de renforcement de la cybersécurité. L'administration Biden a également demandé 2,1 milliards de dollars dans le budget discrétionnaire de 2022 pour l'Agence pour la cybersécurité et la sécurité des infrastructures (CISA).
Fournir davantage de ressources et de formations pour soutenir la croissance professionnelle et les connaissances de vos développeurs peut être la première étape dans l'établissement de normes de qualité pour tous les codes livrés en production.
Le coût de la détection et de la correction d'une vulnérabilité ou d'un défaut augmente de manière exponentielle plus la détection et la correction sont tardives dans le cycle de développement du logiciel. Et comme nous l'avons vu, en consacrant tant de temps à la résolution de la dette technique et de sécurité, les organisations créent leurs propres pertes en renonçant à l'innovation et au temps consacré à de nouvelles fonctionnalités ou à de nouveaux produits.
En 2022, une majorité d'équipes de développeurs ont déclaré que DevOps ou DevSecOps était leur méthodologie de choix, et ce n'est pas une surprise. DevSecOps intègre la sécurité à chaque étape du cycle de vie du développement logiciel afin de fournir des applications de meilleure qualité et plus sûres. Les équipes de sécurité et de développement continuent de travailler en silos et de connaître des tensions, mais il est clair que cela doit changer pour aider les entreprises à réussir. DevOps fait partie de la manière dont les organisations tentent de faire tomber les barrières et de remodeler la culture. L'objectif fondamental de DevSecOps est de renforcer la collaboration entre l'AppSec/la sécurité et les développeurs dès le début du cycle de vie du développement logiciel.
La mise en œuvre d'une nouvelle façon de penser la dette technique et la sécurité ne doit pas nécessairement être un exploit monumental. L'instauration d'un état d'esprit proactif par le biais de la formation est essentielle lorsqu'il s'agit d'améliorer la sensibilisation à la sécurité et les compétences de la communauté des développeurs d'une organisation. Une solide formation au codage sécurisé pour les développeurs garantit que l'apprentissage est continu, interactif, pertinent et contextuel. Une approche véritablement holistique doit prendre en compte ce qui est nécessaire pour favoriser une véritable culture de la sécurité menée par les développeurs. Cela peut nécessiter un changement d'orientation par rapport aux méthodes habituelles de gestion et de constitution d'équipes de développeurs.
Créer un changement de culture n'est pas facile, mais Secure Code Warrior vous aide à identifier vos champions de la sécurité et à doter les développeurs et les organisations des compétences adéquates pour relever les défis actuels de la sécurité en constante évolution.
Le lancement d'un programme de code sécurisé engageant et évolutif est un investissement valable en raison de l'approche préventive à long terme de la sécurité, au lieu de l'approche réactive du passé. En fin de compte, cela permet d'atténuer les risques coûteux d'une violation, d'enseigner aux développeurs comment trouver et corriger rapidement les vulnérabilités, et de faciliter une approche plus agile du développement de produits et une mise sur le marché plus rapide.
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émonstrationSecure 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émonstrationTaylor Broadfoot-Nymark est responsable du marketing produit à l'adresse Secure Code Warrior. Elle a écrit plusieurs articles sur la cybersécurité et l'apprentissage agile, et dirige également les lancements de produits, la stratégie GTM et la défense des intérêts des clients.
Parlons de la dette
Tout le monde sait aujourd'hui que la cybercriminalité est devenue un problème majeur pour l'économie mondiale. En 2022, le coût moyen d'une violation de données aux États-Unis s'élevait à 9,44 millions de dollars, contre 9,05 millions de dollars l'année précédente. Il est important de ne pas ignorer le coût du code non sécurisé et de la dette technique accumulée. Selon le rapport 2022 du Consortium for Information and Software Quality : The Cost of Poor Software Quality report, on estime que le coût de la mauvaise qualité des logiciels aux États-Unis s'élève à 2,41 billions de dollars et que la dette technique accumulée s'élève à 1,52 billions de dollars.
Les coûts croissants du traitement des codes non sécurisés et de leur dette technique sont devenus le principal obstacle à toute modification des bases de code existantes, les laissant ainsi vulnérables à l'exploitation et aux menaces extérieures. L'état de la sécurité des logiciels est confronté à une crise existentielle - nous savons que nous devons améliorer notre posture de sécurité et nous attaquer à la dette technique accumulée, mais les obstacles sont énormes :
- On estime à 300 000 le nombre de postes de développeurs de logiciels et d'emplois liés à l'informatique non pourvus aux États-Unis, avec un taux de croissance prévu de 15 %.
- On prévoit que d'ici 2025, 40 % des budgets informatiques seront consacrés à la simple maintenance de la dette technologique.
- 1/3 des heures hebdomadaires des développeurs sont en moyenne consacrées au traitement de la dette technologique
Les solutions rapides sont risquées - et plus coûteuses à long terme
Qu'est-ce que la dette technique et pourquoi est-elle si importante ? La dette technique s'accumule lorsque les décideurs optent pour une solution à court terme à un problème de développement logiciel - au lieu d'une solution plus exhaustive et à long terme. Cela s'accompagne d'un coût caché substantiel que les organisations doivent payer plus tard. À l'instar d'une carte de crédit épuisée, la dette technique se compose de deux éléments principaux :
- Principal - se réfère au coût total du remaniement ou de la correction d'un logiciel afin qu'il atteigne le niveau souhaité de maintenabilité et de sécurité.
- Intérêt - l'effort supplémentaire que les développeurs consacrent à ces changements pour remédier à la seule dette technique, et non à de nouvelles fonctionnalités. Chaque minute passée sur un code qui n'est pas tout à fait correct ajoute de l'intérêt à la dette.
On peut finir par atteindre un état de "faillite technique" lorsque le coût des nouvelles fonctionnalités, des corrections de bogues et de la maintenance dépasse le budget du projet, ce qui réduit considérablement la valeur de l'application logicielle.
Cependant, une certaine accumulation de dettes, comme dans la vie, est normale et, dans la plupart des cas, quelque peu attendue.
Idéalement, tous les développeurs de logiciels devraient réduire les bogues autant que possible avant de livrer le code. Cependant, ils sont confrontés à un compromis difficile : pour être compétitive, une organisation peut vouloir livrer des fonctionnalités ou des produits à ses clients rapidement et à un coût minimum. En conséquence, la qualité de l'application en pâtit, car les indicateurs clés de performance des développeurs sont basés sur la rapidité de la livraison et le coût initial de la construction. Ce qui manque dans le tableau, ce sont les lacunes accumulées et les vulnérabilités potentielles intégrées dans le code. Celui-ci est donc mûr pour des bogues ou des vulnérabilités de sécurité en aval ou, pire, pour une exploitation par des acteurs malveillants.
Mais c'est là que réside l'énigme : existe-t-il un autre moyen de livrer des produits rapidement sans accumuler une dette technique massive ?
Le coût de la détection et de la correction des lacunes et des vulnérabilités est la dépense la plus importante du cycle de développement des logiciels. Plus les problèmes sont détectés tôt dans le cycle de développement, plus la livraison globale sera rentable.
La dette technique peut se transformer en dette de sécurité
De nombreux développeurs tentent de contourner ce compromis en utilisant un code source ouvert qui leur permet d'avancer rapidement et, dans l'idéal, d'utiliser une solution déjà validée. Toutefois, le fait de s'appuyer fortement sur des logiciels à code source ouvert présente souvent ses propres risques:
- 82% des composants open source se sont révélés obsolètes (c'est-à-dire non corrigés ou mal pris en charge).
- 75 % des bases de code contenaient des vulnérabilités (contre 60 % en 2018), et 49 % contenaient des vulnérabilités à haut risque.
- En moyenne, 82 vulnérabilités ont été identifiées par base de code.
Cette situation entraîne la prolifération d'un sous-ensemble de la dette technique : la dette de sécurité. La dette de sécurité est l'accumulation de vulnérabilités dans une application logicielle qui rend plus difficile, voire impossible, la protection des données et des systèmes contre une attaque.
L'un des exemples les plus notoires est celui d'Equifax, le géant de l'information sur le crédit qui a été victime d'une brèche en 2017 parce qu'il n'avait pas corrigé une vulnérabilité connue dans Apache Struts, un cadre d'application web open-source populaire. Le correctif était disponible depuis des mois, mais la brèche a compromis les données personnelles cruciales de plus de 147 millions de personnes.
Il convient donc d'accorder une plus grande attention aux pratiques de codage sécurisées, car de nombreuses applications ont atteint une masse critique non seulement en termes de dette technique, mais aussi de densité de faiblesses et de vulnérabilités en matière de sécurité dans l'application elle-même.
Cela peut entraîner des pertes considérables, qui peuvent être matérielles ou immatérielles :
Atteinte à la réputation : La perte de la confiance des clients peut avoir un impact extrêmement négatif à long terme. Il peut s'agir d'une atteinte à la marque, d'une perte de chiffre d'affaires et de problèmes juridiques coûteux à la suite d'une violation.
Impact sur la réglementation et la conformité : Si une faille de sécurité peut amener une entreprise à ne pas respecter un délai et/ou des obligations contractuelles, l'entreprise peut avoir des problèmes avec les autorités de régulation, ce qui entraîne des amendes importantes. Le non-respect d'un accord de niveau de service peut entraîner des problèmes avec les autorités de réglementation et des amendes importantes.
Coûts de remise en état : Des travaux supplémentaires sont souvent nécessaires à la suite d'une panne ou d'un arrêt pour compenser la perte de productivité.
Prévenir la dette technique et de sécurité dans le cycle de développement durable (SDLC)
De nombreuses organisations ont déjà réorienté leur budget pour renforcer leur dispositif de sécurité. L'année dernière, Google s'est engagé à verser 10 milliards de dollars sur cinq ans pour financer un programme de renforcement de la cybersécurité. L'administration Biden a également demandé 2,1 milliards de dollars dans le budget discrétionnaire de 2022 pour l'Agence pour la cybersécurité et la sécurité des infrastructures (CISA).
Fournir davantage de ressources et de formations pour soutenir la croissance professionnelle et les connaissances de vos développeurs peut être la première étape dans l'établissement de normes de qualité pour tous les codes livrés en production.
Le coût de la détection et de la correction d'une vulnérabilité ou d'un défaut augmente de manière exponentielle plus la détection et la correction sont tardives dans le cycle de développement du logiciel. Et comme nous l'avons vu, en consacrant tant de temps à la résolution de la dette technique et de sécurité, les organisations créent leurs propres pertes en renonçant à l'innovation et au temps consacré à de nouvelles fonctionnalités ou à de nouveaux produits.
En 2022, une majorité d'équipes de développeurs ont déclaré que DevOps ou DevSecOps était leur méthodologie de choix, et ce n'est pas une surprise. DevSecOps intègre la sécurité à chaque étape du cycle de vie du développement logiciel afin de fournir des applications de meilleure qualité et plus sûres. Les équipes de sécurité et de développement continuent de travailler en silos et de connaître des tensions, mais il est clair que cela doit changer pour aider les entreprises à réussir. DevOps fait partie de la manière dont les organisations tentent de faire tomber les barrières et de remodeler la culture. L'objectif fondamental de DevSecOps est de renforcer la collaboration entre l'AppSec/la sécurité et les développeurs dès le début du cycle de vie du développement logiciel.
La mise en œuvre d'une nouvelle façon de penser la dette technique et la sécurité ne doit pas nécessairement être un exploit monumental. L'instauration d'un état d'esprit proactif par le biais de la formation est essentielle lorsqu'il s'agit d'améliorer la sensibilisation à la sécurité et les compétences de la communauté des développeurs d'une organisation. Une solide formation au codage sécurisé pour les développeurs garantit que l'apprentissage est continu, interactif, pertinent et contextuel. Une approche véritablement holistique doit prendre en compte ce qui est nécessaire pour favoriser une véritable culture de la sécurité menée par les développeurs. Cela peut nécessiter un changement d'orientation par rapport aux méthodes habituelles de gestion et de constitution d'équipes de développeurs.
Créer un changement de culture n'est pas facile, mais Secure Code Warrior vous aide à identifier vos champions de la sécurité et à doter les développeurs et les organisations des compétences adéquates pour relever les défis actuels de la sécurité en constante évolution.
Le lancement d'un programme de code sécurisé engageant et évolutif est un investissement valable en raison de l'approche préventive à long terme de la sécurité, au lieu de l'approche réactive du passé. En fin de compte, cela permet d'atténuer les risques coûteux d'une violation, d'enseigner aux développeurs comment trouver et corriger rapidement les vulnérabilités, et de faciliter une approche plus agile du développement de produits et une mise sur le marché plus rapide.
Table des matières
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échargerRessources pour vous aider à démarrer
Évaluation comparative des compétences en matière de sécurité : Rationalisation de la conception sécurisée dans l'entreprise
Le mouvement "Secure-by-Design" (conception sécurisée) est l'avenir du développement de logiciels sécurisés. Découvrez les éléments clés que les entreprises doivent garder à l'esprit lorsqu'elles envisagent une initiative de conception sécurisée.
DigitalOcean réduit sa dette de sécurité avec Secure Code Warrior
L'utilisation par DigitalOcean de la formation Secure Code Warrior a considérablement réduit la dette de sécurité, permettant aux équipes de se concentrer davantage sur l'innovation et la productivité. L'amélioration de la sécurité a renforcé la qualité des produits et l'avantage concurrentiel de l'entreprise. À l'avenir, le score de confiance SCW les aidera à améliorer leurs pratiques de sécurité et à continuer à stimuler l'innovation.
Ressources pour vous aider à démarrer
Sécurité réactive contre sécurité préventive : La prévention est un meilleur remède
L'idée d'apporter une sécurité préventive aux codes et systèmes existants en même temps qu'aux applications plus récentes peut sembler décourageante, mais une approche "Secure-by-Design", mise en œuvre en améliorant les compétences des développeurs, permet d'appliquer les meilleures pratiques de sécurité à ces systèmes. C'est la meilleure chance qu'ont de nombreuses organisations d'améliorer leur sécurité.
Les avantages de l'évaluation des compétences des développeurs en matière de sécurité
L'importance croissante accordée au code sécurisé et aux principes de conception sécurisée exige que les développeurs soient formés à la cybersécurité dès le début du cycle de développement durable, et que des outils tels que le Trust Score de Secure Code Warriorles aident à mesurer et à améliorer leurs progrès.
Assurer le succès des initiatives de conception sécurisée de l'entreprise
Notre dernier document de recherche, Benchmarking Security Skills : Streamlining Secure-by-Design in the Enterprise est le résultat d'une analyse approfondie d'initiatives réelles de conception sécurisée au niveau de l'entreprise, et de l'élaboration d'approches de meilleures pratiques basées sur des conclusions fondées sur des données.
Plongée en profondeur : Naviguer dans la vulnérabilité critique de CUPS dans les systèmes GNU-Linux
Découvrez les derniers défis de sécurité auxquels sont confrontés les utilisateurs de Linux en explorant les récentes vulnérabilités de haute sévérité dans le système d'impression commun d'UNIX (CUPS). Apprenez comment ces problèmes peuvent conduire à une potentielle exécution de code à distance (RCE) et ce que vous pouvez faire pour protéger vos systèmes.