Certaines failles de sécurité bouleversent la façon dont le secteur envisage la sécurité. Le piratage de SolarWinds en fait partie.

Ce n’était pas seulement l’ampleur ou la sophistication de l’attaque qui la rendait si remarquable. C’était surtout la prise de conscience que les mises à jour logicielles que les entreprises considéraient comme sûres pouvaient elles-mêmes devenir un vecteur d’attaque. Pour de nombreuses entreprises, ce moment a sonné le réveil. Il a mis en évidence à quel point la confiance accordée aux chaînes d’approvisionnement logicielles était aveugle, et à quel point la visibilité était réduite dès lors que le code échappait au contrôle interne.

Des années plus tard, la question dérangeante demeure. Qu’est-ce qui a réellement changé ?

Quand la confiance devient une vulnérabilité

Fin 2020, SolarWinds — un fournisseur de logiciels de gestion informatique très répandu — s’est retrouvé au cœur de l’un des incidents de cyberespionnage les plus importants de l’histoire moderne. Les pirates ont réussi à compromettre le processus de développement logiciel de l’entreprise et à insérer du code malveillant dans ses mises à jour. Cette mise à jour a ensuite été téléchargée par des milliers d’organisations dans le cadre de leur maintenance de routine, donnant ainsi, à leur insu, aux pirates l’accès à leurs systèmes internes.

Ce n’est pas seulement l’ampleur ou la sophistication de cette faille qui l’ont rendue remarquable. C’est surtout la prise de conscience que les mises à jour logicielles que les entreprises considéraient comme sûres pouvaient elles-mêmes devenir un vecteur d’attaque.

Ce qui est le plus frappant dans cette intrusion, ce n’est pas tant que les pirates aient réussi à compromettre un fournisseur de logiciels, mais plutôt qu’ils aient pu toucher des milliers d’organisations sans avoir à les cibler une par une.

Après avoir injecté du code malveillant dans le processus de compilation de SolarWinds, les pirates ont pu le diffuser via une mise à jour logicielle de confiance que les clients ont installée dans le cadre de leur maintenance de routine. Du point de vue des organisations qui l’ont reçue, tout semblait normal. La mise à jour provenait d’un fournisseur connu, est parvenue par les canaux officiels et a été déployée sans éveiller de soupçons.

C’est ce qui a rendu cette attaque si efficace. Plutôt que d’exploiter une faille dans un pare-feu ou une vulnérabilité non corrigée au sein de chaque environnement cible, les pirates ont tiré parti de la confiance que les organisations accordaient à leur chaîne d’approvisionnement logicielle.

C’est ce qui rend les attaques visant la chaîne logistique si difficiles à contrer. Les systèmes mêmes conçus pour rationaliser les mises à jour et garantir l’intégrité peuvent également devenir le vecteur par lequel le risque s’introduit.

Les risques liés au pipeline de compilation

Les pipelines de développement modernes sont conçus pour allier rapidité et efficacité. Le code est écrit, testé, intégré et déployé à un rythme qui aurait été inimaginable il y a dix ans. Cette rapidité s’accompagne toutefois d’une certaine complexité.

De nombreux outils, environnements et dépendances interviennent dans le processus, chacun constituant un point de vulnérabilité potentiel s’il n’est pas correctement sécurisé. Lorsque des pirates parviennent à accéder à un pipeline de compilation, ils ne compromettent pas seulement un seul système, mais se positionnent en amont, d’où ils peuvent influencer tout ce qui transite par ce pipeline. C’est là que la signature de code prend toute son importance, mais peut aussi prêter à confusion. Une mise à jour signée procure un sentiment de sécurité, mais elle ne fait que confirmer que le code provient d’une source fiable. Elle ne garantit pas que la source n’ait pas été compromise.

Sans contrôles rigoureux sur la manière dont le code est développé, testé et signé, cette confiance risque d’être mal placée.

Le point aveugle des mises à jour logicielles

Les mises à jour logicielles sont conçues pour renforcer la sécurité. C’est pourquoi elles sont souvent déployées rapidement, parfois automatiquement, sans faire l’objet d’un examen approfondi. Le problème, c’est que ce processus part du principe que la mise à jour elle-même est sûre.

Dans le cas de SolarWinds, ainsi que d’autres attaques de la chaîne d’approvisionnement qui ont suivi, le mécanisme de mise à jour est devenu le vecteur de diffusion du code malveillant. Les organisations ont appliqué la mise à jour dans le cadre de leur maintenance de routine, sans se rendre compte qu’elles introduisaient ainsi un risque dans leurs propres environnements. Cela met en évidence une lacune. Alors que l’on accorde souvent une grande importance à la détection des menaces externes, on accorde moins d’attention à la surveillance de ce qui se passe après l’installation d’un logiciel.

Sans une meilleure visibilité sur le fonctionnement des systèmes après une mise à jour, il devient difficile de détecter quand quelque chose ne va pas.

Code externe, risque interne

Toute organisation s’appuie d’une manière ou d’une autre sur du code externe, qu’il s’agisse de logiciels tiers, de bibliothèques open source ou de services intégrés. Cette dépendance est inévitable, mais elle engendre des contraintes qui ne sont pas toujours pleinement comprises.

Une fois qu’un code externe est intégré à un environnement, il est souvent considéré comme intrinsèquement fiable, surtout s’il provient d’un fournisseur réputé. Cette hypothèse peut créer des angles morts, en particulier lorsque les processus de validation internes sont limités ou incohérents.

La validation du code externe ne signifie pas qu’il faille se méfier de tous les fournisseurs. Il s’agit plutôt de reconnaître que le risque ne disparaît pas simplement parce que la source est connue. La violation de SolarWinds a démontré que même des fournisseurs réputés peuvent se retrouver impliqués dans la chaîne d’attaque.

Pourquoi le modèle « Zero Trust » semble encore hors de portée

Le « zero trust » est devenu un concept largement débattu depuis l’attaque contre SolarWinds. L’idée de vérifier en permanence les utilisateurs, les systèmes et les accès plutôt que de se fonder sur une confiance implicite est logique en principe. Dans la pratique, son adoption a été plus lente que beaucoup ne l’avaient prévu.

Une partie du défi réside dans l’ampleur des changements requis. Le passage à un modèle « zero-trust » implique de repenser la manière dont les accès sont accordés, dont les systèmes interagissent et dont la confiance s’établit au sein de l’organisation.

Pour de nombreuses équipes, cela représente un changement radical par rapport aux méthodes de travail habituelles et nécessite une coordination entre les différents services ainsi qu’une volonté de remettre en question des idées reçues de longue date. De ce fait, les progrès sont souvent progressifs. Certains éléments du modèle « zero trust » peuvent être mis en place, mais rarement d’une manière qui permette de contrer pleinement les risques liés aux attaques visant la chaîne d’approvisionnement.

Les décisions humaines qui se cachent derrière la technologie

Si les attaques visant la chaîne d’approvisionnement sont souvent abordées en termes très techniques, elles sont en réalité le fruit de décisions humaines à chaque étape. Les choix concernant la rapidité de déploiement des mises à jour, la rigueur de la révision du code et le niveau de visibilité assuré entre les différents systèmes influencent tous le niveau de risque.

Ces décisions sont rarement prises de manière isolée. Elles sont influencées par les délais et les contraintes opérationnelles et, dans ce contexte, la confiance devient une nécessité pratique plutôt qu’un risque délibéré. Le problème, c’est que les pirates informatiques comprennent cette dynamique. Ils n’ont pas besoin de contourner tous les contrôles s’ils parviennent à s’intégrer dans le flux normal des activités.

Pourquoi les leçons n’ont pas été pleinement assimilées

La violation de SolarWinds a mis en lumière un ensemble de problèmes systémiques, mais leur résolution ne se limite pas à une simple prise de conscience. Elle nécessite une action cohérente dans de nombreux domaines, allant de la sécurisation des pipelines de développement à l’amélioration de la visibilité sur le comportement des logiciels, en passant par le renforcement des processus de validation et la refonte des modèles de confiance.

Il ne s’agit pas là de solutions miracles. Cela implique de modifier en profondeur la manière dont les organisations développent, déploient et gèrent leurs technologies. C’est pourquoi les progrès peuvent sembler lents. Les leçons ont été comprises, mais les mettre en pratique au quotidien est bien plus complexe.

Aller de l’avant sans confiance aveugle

Réduire les risques liés à la chaîne d’approvisionnement ne signifie pas supprimer totalement la confiance. Cela signifie plutôt choisir avec plus de discernement à qui accorder sa confiance et comment la vérifier. Cela implique de renforcer les contrôles autour des pipelines de développement, d’améliorer la surveillance du comportement des logiciels et de veiller à ce que le code externe fasse l’objet d’un niveau de vérification approprié. Cela signifie également reconnaître que la confiance ne doit pas être figée. Ce qui était considéré comme sûr à un moment donné peut ne plus l’être à mesure que les environnements évoluent.

Une approche plus résiliente repose sur une validation continue, dans le cadre de laquelle les hypothèses sont régulièrement vérifiées plutôt que considérées comme acquises.

Comment MetaCompliance peut vous aider

Chez MetaCompliance, nous nous concentrons sur les comportements qui sont à l’origine des risques de sécurité complexes, notamment ceux mis en évidence par les attaques visant la chaîne d’approvisionnement.

Les enseignements tirés d’incidents tels que celui de SolarWinds ne sont pas uniquement d’ordre technique. Ils montrent à quel point les décisions quotidiennes, qu’il s’agisse du déploiement de mises à jour ou de la gestion des relations avec des tiers, peuvent comporter des risques si elles ne sont pas pleinement comprises.

Notre approche associe des formations ciblées de sensibilisation à la sécurité à une analyse comportementale, aidant ainsi les organisations à comprendre comment les risques liés au Top 10 de l’OWASP et aux vulnérabilités de la chaîne d’approvisionnement se manifestent dans des situations concrètes. Cela implique notamment de comprendre comment la confiance s’établit, où elle peut être rompue et comment y répondre plus efficacement.

En apportant aux équipes des conseils concrets et une mise en contexte, nous aidons les organisations à dépasser le stade des réactions ponctuelles et à mettre en place une approche plus cohérente et mieux fondée en matière de gestion des risques.

À mesure que les chaînes d’approvisionnement gagnent en complexité, il devient de plus en plus important de savoir remettre en question les hypothèses et de prendre de meilleures décisions.

N’hésitez pas à contacter notre équipe dès aujourd’hui pour en savoir plus.

Foire aux questions sur les attaques de la chaîne d'approvisionnement

En quoi consistait le piratage de SolarWinds et pourquoi était-il si important ?

Le piratage de SolarWinds a constitué une attaque majeure visant la chaîne d’approvisionnement, au cours de laquelle les pirates ont inséré du code malveillant dans une mise à jour logicielle légitime. Cela leur a permis d’accéder à des milliers d’organisations, notamment des agences gouvernementales et de grandes entreprises, sans éveiller immédiatement les soupçons. Son importance réside dans le fait qu’il a mis en évidence les risques liés à la confiance accordée aux mises à jour logicielles et aux fournisseurs tiers sans validation suffisante.