La sécurité de la chaîne logistique logicielle consiste à protéger les actifs numériques d'une organisation contre les cybermenaces provenant d'une source externe. L'accent est mis sur la réduction des vulnérabilités provenant de tiers, des logiciels libres et des services cloud. La sécurisation de la chaîne d'approvisionnement logicielle est une mesure essentielle pour protéger une organisation contre les cyberattaques.
Le terme plus général de « chaîne d'approvisionnement » désigne l'ensemble des organisations nécessaires à la production et à la fourniture d'un produit ou d'un service au client. Dans le monde actuel, la chaîne d'approvisionnement désigne généralement la fabrication et la circulation des biens matériels, dont une grande partie a été perturbée par la pandémie de COVID-19, la guerre en Ukraine et d'autres crises mondiales.
La « chaîne d'approvisionnement logicielle » constitue une partie plus restreinte de cette chaîne d'approvisionnement plus large, liée au développement et au déploiement d'applications ou de services numériques. C'est de la chaîne d'approvisionnement logicielle — et des risques auxquels les entreprises sont confrontées tout au long de cette chaîne — que nous allons parler en détail dans cet article explicatif.
La chaîne d'approvisionnement logicielle comprend de nombreux éléments, notamment :
- Logiciels d'entreprise commerciaux et open source
- Services cloud, , notamment les fournisseurs de logiciels en tant que service (SaaS),
de plateformes en tant que service (PaaS) et d'infrastructures en tant que service (IaaS) - Les fournisseurs, prestataires et sous-traitants qui proposent des services
tels que l'informatique et la gestion des données, le développement de logiciels,
et la cybersécurité - Toute partie ayant conclu un partenariat avec les entités susmentionnées
Chaque maillon de la chaîne logistique des logiciels représente un risque potentiel pour la sécurité, et, pris dans leur ensemble, ces maillons constituent un paysage de menaces complexe. Le manque de visibilité qui en résulte tout au long de la chaîne d'approvisionnement expose les organisations à des failles de sécurité qui peuvent se cacher partout où elles exercent leurs activités.
Les attaques visant la chaîne logistique logicielle consistent à exploiter une faille de sécurité chez un ou plusieurs partenaires et fournisseurs tiers de logiciels de confiance d'une organisation. Les pirates utilisent ces solutions piratées pour s'introduire dans l'infrastructure informatique d'une entreprise. Ces entités tierces ayant obtenu l'accès au réseau, aux applications et aux données d'une organisation, les pirates informatiques peuvent s'en servir pour pénétrer dans les zones les plus sensibles du réseau d'entreprise et voler des actifs de grande valeur ou prendre le contrôle de systèmes critiques.
Certaines des violations de données les plus importantes et les plus coûteuses subies par les entreprises au cours de la dernière décennie ont été liées à des piratages de la chaîne d'approvisionnement logicielle. During the 2013 Target credit card breach, attackers stole a refrigeration contractor’s login credentials to gain access to Target’s vendor portal and ultimately install malware in its point-of-sale system. Les voleurs ont dérobé 40 millions de numéros de cartes bancaires et ont compromis les données personnelles de 70 millions de clients. À la suite de cette violation de données, Target a dû verser une indemnité de 18,5 millions de dollars.
Lors de l'attaque SolarWinds « 2020 », des pirates ont injecté du code malveillant
dans la solution de surveillance et de gestion d'infrastructure Orion du fournisseur, ce qui a permis aux attaquants d'espionner plus de 100 entreprises et agences gouvernementales, notamment Microsoft,
Intel, Nvidia, le Département de la Sécurité intérieure et le
Département du Trésor.
Les attaques visant la chaîne d’approvisionnement connaissent une croissance exponentielle à mesure que l’environnement informatique s’étend pour s’adapter aux télétravailleurs dans le sillage de la pandémie — avec une augmentation d’au moins 300 %, passant de 2020 à 2021
, et touchant, selon les estimations, trois entreprises sur cinq 2021, d’après deux estimations. Verizon indique que plus de 60 % des incidents d'intrusion dans les systèmes en 2021 ont été commis par l'intermédiaire d'un partenaire ou d'une mise à jour logicielle.
Pourquoi les chaînes d'approvisionnement logicielles sont-elles vulnérables ?
Les grandes entreprises peuvent utiliser des centaines, voire des milliers d'applications dans le cadre de leurs activités quotidiennes, notamment pour la gestion intégrée des ressources d'entreprise, l'intelligence économique et la gestion de la relation client. Les vulnérabilités de ces applications d'entreprise sont devenues plus fréquentes avec l'utilisation croissante de frameworks open source accessibles au public , tels que Struts et Spring, comme éléments de base du développement logiciel.
Comme les organisations ont peu de visibilité sur ces composants logiciels et peu de contrôle sur ceux-ci, les pirates informatiques ont découvert qu'ils pouvaient exploiter toute une série de failles potentiellement présentes dans le code open source.
Et il y en a beaucoup. Selon le rapport « State of Open-Source Security » de Contrast Security 2021 , disponible à l'adresse , une application contient en moyenne 118 « bibliothèques » de programmation, c'est-à-dire des ensembles de code pré-écrits que les développeurs peuvent utiliser pour automatiser des tâches. En moyenne, les applications n'utilisent activement que 38 % de ces bibliothèques. Les bibliothèques inactives constituent un risque majeur pour la sécurité, car les pirates informatiques peuvent potentiellement y insérer du code malveillant ou des logiciels malveillants sans être détectés. Le rapport a également révélé qu'une application Java moyenne comporte 50 vulnérabilités liées à des bibliothèques open source, ce qui représente une probabilité sur six qu'une vulnérabilité puisse être exploitée par des pirates.
L'identification de ces vulnérabilités constitue un obstacle majeur pour les organisations. Une seule faille de codage exploitable en Java, par exemple, peut se retrouver dans des centaines d'applications, en raison de la popularité de Java en tant que plateforme de développement logiciel. Si la plupart des systèmes d’évaluation des vulnérabilités peuvent vous indiquer qu’un logiciel spécifique est obsolète, ils n’offrent généralement pas le niveau de précision nécessaire pour identifier le fichier ou le composant précis contenant la vulnérabilité — bien que cela puisse changer avec le décret présidentiel n° 2021 du président Biden, intitulé « » (Améliorer la cybersécurité nationale), qui impose aux fournisseurs de logiciels du gouvernement fédéral d’inclure une liste des composants logiciels (SBOM) pour l’ensemble des éléments de leurs produits.
Pour bien saisir l'ampleur du défi, imaginez le cas d'un rappel de produit alimentaire ordonné par les pouvoirs publics. Une épicerie peut vous fournir des informations détaillées sur l'ensemble de son stock de « mac and cheese ». Le magasin peut même afficher en détail les numéros de lot spécifiques de ce stock. Mais si un organisme gouvernemental souhaitait procéder au rappel de tous les produits du magasin contenant le colorant alimentaire artificiel FD&C Yellow n° 5, le magasin n'aurait probablement aucun moyen efficace d'identifier l'ensemble de ces produits.
C'est là, en substance, le problème auquel sont confrontées les organisations lorsqu'il s'agit de sécuriser leurs chaînes d'approvisionnement logicielles. Rares sont ceux qui disposent d'outils ou de méthodes efficaces pour obtenir la vue d'ensemble détaillée et minutieuse de chaque composant de chaque logiciel sur chaque appareil, nécessaire pour évaluer leur niveau de risque.
Pourriez-vous donner un exemple de faille de sécurité dans la chaîne d'approvisionnement logicielle ?
Dans le cadre d'une attaque hypothétique visant la chaîne logistique logicielle, un pirate informatique cible un composant open source utilisé dans un projet de développement d'application d'entreprise donné. Le pirate informatique identifie les développeurs de l’organisation qui ne travaillent pas sur ce projet et compromet les comptes GitHub utilisés pour collaborer au développement logiciel, puis insère dans le projet un code d’apparence inoffensive contenant une porte dérobée.
«Une seule faille de codage exploitable en Java, par exemple, peut être présente dans des centaines d’applications, en raison de la popularité de Java en tant que plateforme de développement logiciel. »
Sans que l'on s'en rende compte, la porte dérobée est intégrée à la prochaine version du logiciel. Lorsque l'application est mise à jour, elle intègre le composant open source compromis, offrant ainsi au pirate informatique un point d'entrée dans le réseau de l'organisation.
Des mesures de sécurité adaptées pourraient toutefois atténuer les effets d’une telle attaque en détectant des comportements anormaux — tels qu’un développeur accédant à un projet sur lequel il ne travaillait pas —, voire en recourant à une authentification multifactorielle afin de contrecarrer d’emblée toute tentative d’un pirate informatique de se connecter au compte du développeur.
Pourquoi la sécurité de la chaîne d'approvisionnement logicielle est-elle importante ?
Dans les chaînes d'approvisionnement modernes, les fournisseurs ont souvent accès aux systèmes d'information et aux données des entreprises clientes. L'organisation se retrouve ainsi exposée aux failles de sécurité présentes ailleurs dans la chaîne d'approvisionnement. Un seul incident de sécurité, quel que soit le maillon de la chaîne concerné, peut avoir des conséquences catastrophiques sur l'ensemble d'un réseau d'organisations.
Les attaques visant la chaîne d'approvisionnement logicielle sont de plus en plus fréquentes. Au cours des six derniers mois de l'année 2021, les attaques visant la chaîne d'approvisionnement ont bondi de 51 %. Le risque lié aux fournisseurs prenant de plus en plus d'importance, les organisations doivent accorder une priorité accrue à la gestion des risques liés aux fournisseurs, aux évaluations complètes des risques, à la détection des menaces et à la réaction face à celles-ci, ainsi qu'à d'autres mesures similaires.
Quels sont les principaux risques liés à la chaîne d'approvisionnement logicielle ?
Les principaux risques pesant sur la chaîne d'approvisionnement sont les suivants :
- Mauvaise visibilité. La complexité des chaînes d'approvisionnement logicielles actuelles rend extrêmement difficile d'avoir une vision claire et précise des fournisseurs disposant de droits d'accès à des systèmes et ressources spécifiques, ainsi que de l'ensemble des appareils et services accédant à un réseau. Sans une visibilité complète sur l' , il est impossible de savoir si un fournisseur présente un risque pour la sécurité.
- Les faiblesses des éditeurs de logiciels. Étant donné que des milliers d'organisations utilisent les mêmes solutions logicielles, les pirates qui s'attaquent à la chaîne d'approvisionnement ciblent souvent les développeurs et les éditeurs de logiciels. Lorsque des pirates informatiques parviennent à compromettre des outils et des solutions individuels, ils accèdent à un plus grand nombre de cibles. Les pirates informatiques peuvent introduire une faille de sécurité ou injecter un logiciel malveillant dans le logiciel afin de pouvoir accéder à des données sensibles une fois que celui-ci est installé sur le système d'une organisation. Les systèmes tiers non mis à jour constituent depuis longtemps un risque majeur pour les chaînes d'approvisionnement. La récente vulnérabilité Log4j a ainsi mis en évidence l'importance de disposer de processus rigoureux en matière d' s et de gestion des correctifs .
- Données compromises. Les données sensibles conservées par un fournisseur peuvent être volées, supprimées ou compromises d'une autre manière lors d'une attaque. Les conséquences sont les mêmes que si votre organisation avait été directement victime d'une violation de données : interruption de l'activité, pertes financières, atteinte à la réputation, répercussions juridiques et sanctions réglementaires.
- La chasse à la baleine. À l'instar du phishing de type « » (), ce type d'attaque par ingénierie sociale vise les employés des entreprises. Ils reçoivent des e-mails ou des SMS qui semblent provenir d'une source fiable, dans le but de les inciter à divulguer leurs identifiants de connexion ou d'autres informations personnelles sensibles. Une attaque de type « whaling » peut consister à rechercher et à identifier une seule personne dans le but de réaliser une « prise de choix », comme un cadre disposant de privilèges d'accès de haut niveau. Le phishing, en revanche, vise généralement un public plus large, ciblant des centaines de personnes.
- Une technologie obsolète. Les entreprises n'ont absolument aucune visibilité sur l'infrastructure informatique de leurs fournisseurs, et il n'est pas rare que des prestataires tiers utilisent du matériel obsolète équipé de logiciels anciens, non mis à jour ou dont le support a pris fin. À mesure que les technologies vieillissent, le nombre de failles de sécurité augmente, ce qui en fait un risque particulièrement préoccupant pour la chaîne d'approvisionnement.
- Les failles de sécurité chez les fournisseurs. Si un fournisseur de logiciels n'a pas mis en place les mesures de sécurité adéquates, votre organisation est vulnérable, quelle que soit la robustesse de votre propre système de sécurité. Les pirates informatiques peuvent exploiter les failles de sécurité d'un fournisseur pour éventuellement accéder à vos systèmes et à vos données. Si les fournisseurs ne font pas l'objet d'une vérification préalable et si les exigences en matière de sécurité ne leur sont pas communiquées, les entreprises ne peuvent pas garantir un niveau minimal de sécurité.
Quels sont les éléments qui constituent la sécurité de la chaîne d'approvisionnement logicielle ?
Dès qu'un pirate parvient à s'introduire dans votre réseau, il s'attaquera aux actifs les plus précieux de votre organisation. La première étape pour sécuriser la chaîne d'approvisionnement consiste donc à identifier les éléments dont vous disposez et qui présentent un intérêt pour les pirates informatiques. Commencez par recenser tous vos actifs, puis hiérarchisez vos « joyaux de la couronne » (« ») — ceux dont vous ne pouvez en aucun cas vous permettre qu’ils soient compromis. Tout ce qui est jugé essentiel à l'activité peut être considéré comme un actif de grande valeur pour la plupart des organisations ; il peut s'agir notamment de code logiciel propriétaire, de données financières et clients, de codes de chiffrement, d'informations relatives aux ressources humaines et de propriété intellectuelle.
«En substance, toute entreprise de logiciels avec laquelle votre société travaille représente un risque potentiel. »
Dans le cadre de cette étape, vous devez également comprendre l'environnement dans lequel se trouve chaque ressource, ainsi que tous les moyens permettant d'y accéder. Ce processus de découverte et d'inventaire des actifs proposé par l' , accessible à l'adresse , vous aidera à déterminer dans quelle mesure vos actifs sont exposés à des violations de sécurité et à identifier les domaines dans lesquels vous devez limiter l'exposition de votre chaîne d'approvisionnement.
La deuxième étape pour sécuriser la chaîne d'approvisionnement consiste à identifier vos partenaires commerciaux et les éventuels maillons faibles de leurs systèmes, ainsi qu'à mettre en place un processus rigoureux de gestion des risques liés aux fournisseurs. Parmi ces partenaires, on peut citer les éditeurs de logiciels, les fournisseurs de services cloud, les sociétés spécialisées dans les terminaux de paiement, les prestataires de services de paie et même les sociétés de sécurité ; tous ces acteurs ont servi de point d'ancrage aux pirates pour s'introduire dans les systèmes d'entreprise au sens large. En substance, toute société de logiciels avec laquelle votre entreprise travaille représente un risque potentiel.
Bien qu’il n’existe pas d’approche universelle pour cette étape, un processus efficace devrait inclure des pratiques telles que la réalisation d’évaluations des risques liés aux fournisseurs, la classification des fournisseurs en fonction de leur importance, la création d’un inventaire des fournisseurs, le suivi des caractéristiques essentielles des fournisseurs, ainsi que le suivi de leurs performances et des risques associés au fil du temps.
L'objectif de la gestion des risques liés aux fournisseurs est de s'assurer que vos fournisseurs ont mis en place les politiques et les technologies appropriées pour protéger vos données les plus sensibles. Cela peut également vous aider à identifier les fournisseurs à haut risque et à collaborer avec eux afin d'atténuer les risques de sécurité ou de déterminer si vous souhaitez les remplacer par un autre fournisseur.
Quels sont les principaux défis en matière de sécurité de la chaîne logistique logicielle ?
Comme nous l'avons souligné précédemment, la visibilité constitue l'un des aspects les plus complexes des risques liés à la chaîne d'approvisionnement. Dans le cas des biens matériels, les fournisseurs peuvent fournir une liste des matériaux ou des ingrédients utilisés pour la fabrication de leurs produits. La plupart des logiciels modernes sont toutefois développés en grande partie à partir de composants open source. Il est difficile de trouver une liste détaillée des composants qui entrent dans la composition d’une application donnée et de savoir qui les a fabriqués, et la plupart des gens ne disposent pas d’un moyen efficace de se renseigner eux-mêmes sur
.
Les organisations sont également confrontées à des difficultés lorsqu'il s'agit de contrôler les développeurs de projets afin de s'assurer qu'ils respectent les pratiques de codage sécurisées et qu'ils corrigent rapidement les vulnérabilités. En fin de compte, ils ne disposent pas d’une compréhension
ni d’un contrôle clairs sur l’ensemble de la chaîne logistique qui sous-tend leur architecture informatique «
».
Quelles sont les meilleures pratiques en matière de sécurité de la chaîne logistique logicielle ?
Vous n'avez jamais entendu parler de l'« air-gap » ? Il est temps que vous découvriez cette astuce, ainsi que d'autres, pour vous aider à renforcer la sécurité de votre chaîne logistique logicielle :
- Maîtrisez votre chaîne logistique de bout en bout. La chaîne d'approvisionnement logicielle englobe l'ensemble du code, des fichiers et des autres composants ayant servi à la création de votre logiciel d'entreprise, ainsi que leur provenance et l'identité de leurs auteurs. Vous souhaitez savoir, par exemple, comment les produits ont été contrôlés pour détecter les risques de sécurité et les éventuelles vulnérabilités connues qu'ils pourraient présenter. En bref : vous devez vous renseigner autant que possible sur les applications utilisées par votre organisation.
- Isolez votre réseau physiquement. Un « air gap » crée une barrière entre un réseau et les attaquants, tout comme un fossé protège un château contre les assauts. Les collaborateurs du service informatique créent cette « barrière » en isolant physiquement les ressources sensibles des systèmes connectés au réseau ou en déconnectant certains appareils du réseau. L'objectif de l'« air-gap » est d'éliminer tout risque qu'un acteur malveillant puisse attaquer votre système via une connexion externe.
- Effectuez régulièrement des tests. La plupart des entreprises ne se rendent pas compte à quel point leur chaîne d'approvisionnement est vulnérable tant qu'un fournisseur en particulier n'a pas été victime d'une attaque. Cependant, vous n'avez pas besoin d'attendre pour le savoir. La réalisation d'analyses de vulnérabilité vous permettra d'identifier et de corriger des problèmes de sécurité courants, tels que les erreurs de configuration d' , les politiques d'accès inadéquates et les failles des produits que les pirates informatiques pourraient exploiter. Les tests d'intrusion peuvent également vous aider à déterminer dans quelle mesure vos données sont faciles à voler, en simulant une attaque afin de mettre au jour et d'exploiter les éventuelles vulnérabilités de votre système.
Quels sont les cadres existants en matière de sécurité de la chaîne d'approvisionnement logicielle ?
Un cadre de sécurité est un ensemble de politiques et de pratiques visant à mettre en place et à maintenir des contrôles de cybersécurité. Les organisations peuvent recourir à des référentiels pour évaluer leur niveau de risque, comprendre comment elles pourraient être la cible d'attaques et renforcer la capacité de leurs programmes de cybersécurité existants à consolider la sécurité de la chaîne d'approvisionnement logicielle.
Le gouvernement américain a notamment élaboré le cadre de gestion des risques du NIST ( ) (RMF) afin de définir la manière dont les organismes publics doivent concevoir, sécuriser et surveiller leurs systèmes pour gérer les risques liés à la sécurité, à la protection de la vie privée et à la chaîne d'approvisionnement. Géré par l'Institut national des normes et des technologies (NIST), ce référentiel propose des bonnes pratiques détaillées pour évaluer les risques et améliorer la sécurité informatique afin d'atténuer les menaces telles que les fuites de données et les attaques par rançongiciel de type « ».
Le RMF comprend un processus de gestion des risques en sept étapes destiné à aider les organisations à renforcer la sécurité de leurs systèmes et à réagir plus rapidement aux problèmes de sécurité. Les étapes sont les suivantes :
- Préparez-vous. Au cours de cette étape, l'organisation se prépare à mettre en œuvre le RMF. Ces activités consistent notamment à identifier les postes clés en matière de gestion des risques, à déterminer le niveau de tolérance au risque de l’organisation, à mener une évaluation dess de gestion des risques à l’échelle de l’organisation, ainsi qu’à élaborer et à mettre en œuvre des stratégies de gestion des risques.
- Classer par catégorie. Dans un deuxième temps, l'organisation utilise les normes du NIST pour classer ses informations et ses systèmes afin d'évaluer avec précision les risques auxquels ils sont exposés. L'organisation dresse un inventaire de toutes les données présentes dans son environnement, en recensant les données sensibles accessibles à des utilisateurs non autorisés ainsi que les données de faible valeur. Il décrit également les caractéristiques de chaque système et la manière dont ils sont reliés les uns aux autres.
- Sélectionnez. À l'étape suivante, l'organisation sélectionne les mesures de sécurité pertinentes pour ses systèmes en s'appuyant sur un catalogue de mesures figurant dans le RMF. Ces mesures de contrôle comprennent des solutions de surveillance, l'authentification multifactorielle et des politiques qui réduisent les comportements à risque et facilitent la restauration des systèmes et des données en cas de sinistre. Au cours de cette étape, il est important de déterminer qui a besoin d'accéder à des informations sensibles et qui n'en a pas besoin.
- Mettre en œuvre. L'organisation met en place les mesures de sécurité qu'elle a choisies. Au cours de cette étape, il convient de former le personnel aux nouvelles procédures et politiques, ainsi qu’à la manière dont celles-ci doivent être mises en œuvre au sein de chaque système
. - Évaluer. Au cours de cette étape, l'organisation élabore et met en œuvre des procédures d'évaluation adaptées, fondées sur les mesures de sécurité qu'elle a mises en place. L'objectif est de veiller à ce que l'organisation puisse réagir immédiatement à tout risque de sécurité.
- Autoriser. La direction générale détermine si les contrôles sélectionnés sont adéquats en fonction du seuil de tolérance au risque de l'organisation.
- Écran. Au cours de cette étape, l'organisation surveille en permanence les systèmes afin d'assurer leur sécurité et de réagir à tout changement
de leur état.
Quelles sont les meilleures ressources sur la sécurité de la chaîne logistique logicielle ?
Voici quelques ressources permettant d'obtenir davantage d'informations sur la sécurité de la chaîne d'approvisionnement logicielle :
- Sécurité des logiciels dans les chaînes d'approvisionnement (NIST)
- Recommandations relatives à la sécurité de la chaîne d'approvisionnement (NCSC)
- La sécurité de la chaîne d'approvisionnement : l'affaire de tous (Mitre)
- Bibliothèque de ressources sur la chaîne d'approvisionnement des TIC (CISA)




