Sécuriser la chaîne d’approvisionnement logicielle une étape à la fois
La chaîne d’approvisionnement en logiciels est un vaste paysage mondial composé d’un réseau complexe de producteurs et de consommateurs de logiciels interconnectés. En tant que tel, il comporte de nombreux risques et vulnérabilités qui affectent tous les logiciels, y compris ceux de tiers et de fournisseurs externes. Ces risques incluent tout, des vulnérabilités de code et des référentiels de code open source aux mises à jour logicielles piratées, aux appareils connectés non sécurisés, à l’accès surprivilégié aux ressources tout au long de la chaîne d’approvisionnement, etc.
Cependant, de nombreuses vulnérabilités de la chaîne d’approvisionnement logicielle surviennent parce que la plupart des logiciels ne sont pas écrits à partir de zéro. Au lieu de cela, les développeurs s’appuient souvent sur du code open source pour faire évoluer la production de logiciels. Pas moins de 96 % des applications contiennent au moins un composant open source et 78 % des entreprises déclarent utiliser des logiciels open source dans le cadre de leur réseau. Et bien que cette tendance fasse partie intégrante de l’amélioration de la productivité des entreprises, elle souligne également l’importance de créer une chaîne d’approvisionnement logicielle sécurisée.
Lisez la suite pour savoir quelles mesures vos développeurs peuvent prendre pour mieux sécuriser la production et la consommation de logiciels tout au long du cycle de vie du développement logiciel (SDLC).
Comment les attaques de la chaîne d’approvisionnement logicielle se déplacent vers la gauche
Les attaques de la chaîne d’approvisionnement impliquent généralement plusieurs composants et peuvent évoluer rapidement en fonction du vecteur d’attaque ou du point d’entrée utilisé. Les cybercriminels commencent souvent par un compromis initial dans l’espoir d’avoir éventuellement un impact sur un consommateur en aval.
Par exemple, un groupe de menaces peut lancer une attaque de la chaîne d’approvisionnement logicielle en compromettant un composant open source populaire. Alors que les développeurs du monde entier implémentent ce nouveau code, ils ingèrent sans le savoir un package malveillant ou dérobé. Les attaquants utilisent ensuite ce compromis pour obtenir un accès privilégié et persistant au réseau. À partir de là, ils peuvent provoquer des dommages tels que le vol de données ou financier, la surveillance de l’activité au sein du réseau, la désactivation de systèmes critiques, etc.
Nous constatons également une tendance croissante dans laquelle les attaquants se déplacent vers la gauche plus tôt dans le SDLC. En effet, les attaques de la chaîne d’approvisionnement logicielle ciblent principalement les développeurs et les systèmes qu’ils utilisent. Cette approche peut être vue dans des incidents passés comme Solorigate et 3CX.
Alors, que peuvent faire les organisations pour se prémunir contre ce virage à gauche et sécuriser leur chaîne d’approvisionnement logicielle à l’avenir ?
4 stratégies pour des chaînes logistiques logicielles plus sécurisées
Alors que les attaquants continuent de se déplacer vers la gauche, votre organisation et les logiciels de support doivent faire de même. Garantir une approche de sécurité intégrée grâce à la production et à la consommation sécurisées de logiciels dès le début du SDLC peut aider les organisations à se déplacer vers la gauche, en augmentant la sécurité et en limitant le risque de compromission. Voici quatre stratégies que vous pouvez utiliser pour créer un SDLC plus sécurisé.
- Implémenter le cycle de vie du développement de la sécurité Microsoft (SDL): Compte tenu de la complexité du paysage des menaces modernes, il est impératif que les entreprises intègrent la sécurité dans leurs applications et services à partir de zéro. Cela signifie que la sécurité et la confidentialité doivent être prises en compte à toutes les phases de développement. Le SDL de Microsoft permet aux développeurs de créer des logiciels hautement sécurisés et de répondre aux exigences de conformité en matière de sécurité tout en réduisant les coûts de développement. Le SDL fournit des conseils et des exigences pour effectuer la modélisation des menaces et les tests de pénétration, définir les fonctionnalités et les exigences de sécurité standard, inventorier les composants tiers, établir un plan de réponse aux incidents, etc.
- S’engager dans une collaboration intersectorielle: Étant donné que le code open source joue un rôle prédominant dans le développement de logiciels, il est essentiel que les organisations s’associent à des groupes tels que l’Open Source Security Foundation (OpenSSF). Travailler avec ces groupes permet aux entreprises de protéger les développeurs contre la consommation accidentelle de packages malveillants et compromis. Il peut également atténuer les attaques de la chaîne d’approvisionnement en réduisant les surfaces d’attaque basées sur la consommation. Un exemple est S2C2F, un sous-ensemble du groupe de travail sur l’intégrité de la chaîne d’approvisionnement d’OpenSSF. Lorsqu’il est associé à un cadre axé sur le producteur et orienté artefact, S2C2F aide les équipes de développement et les organisations à mettre en œuvre des contrôles de sécurité complets pour créer et consommer des logiciels en toute sécurité.
- Sécuriser la couche d’accès: Zero Trust ne se limite pas à l’identité, aux appareils et à l’accès. Il peut servir de principes fondateurs pour sécuriser les développeurs, y compris l’authentification multifacteur (MFA) résistante au hameçonnage, les politiques d’accès conditionnel, le principe du moindre privilège, les examens d’accès des utilisateurs et les contrôles d’autorisation juste à temps (JIT) pour le niveau administrateur. Tâches. L’adoption de ces politiques plus strictes est essentielle pour réduire votre surface d’attaque et empêcher un compromis initial.
- Surveillez votre plateforme DevOps: Les organisations doivent également penser au-delà des contrôles préventifs et envisager des mesures plus proactives telles que la détection et la réponse. Cela peut inclure l’utilisation d’analyses pour surveiller les comportements anormaux tels que les contrôles de source falsifiés, les environnements de construction et les systèmes de publication. Une fois que ces indicateurs de compromis (IOC) sont détectés, ils peuvent être immédiatement triés pour des actions de réponse. Plus votre réponse est rapide, plus vite vous pourrez expulser les mauvais acteurs de votre environnement.
Alors que la chaîne d’approvisionnement logicielle peut être difficile à naviguer et complexe à sécuriser, les entreprises peuvent s’associer à des organisations de sécurité de premier plan pour mettre en œuvre les meilleures pratiques et protéger leur environnement de manière globale.
Pour plus d’informations sur le travail de Microsoft pour sécuriser la chaîne d’approvisionnement des logiciels, visitez le site Web Microsoft Built-In Security.