Le site de développement de Halo a été piraté en utilisant le détournement de dépendance

0

Microsoft a de nouveau été touché avec succès par une attaque de détournement de dépendance, cette fois-ci c’est le site de développement de Halo, une série de jeux vidéo FPS, qui est la victime.

Auparavant, un chercheur avait piraté de manière éthique plus de 35 grandes entreprises technologiques, dont Microsoft, en exploitant une faiblesse appelée « confusion de dépendance ».

Ce mois-ci, un autre chercheur a découvert une dépendance interne npm utilisée par un projet open source.

Après avoir publié une dépendance publique du même nom, il a commencé à recevoir des messages des serveurs de développement de jeux Halo de Microsoft.

Dépendance mystérieuse de « recherche rapide » détournée

Le chercheur Ricardo Iramar dos Santos analysait un package open source SymphonyElectron à la recherche de bogues, c’est alors qu’il est tombé sur une mystérieuse dépendance utilisée par le package.

Cette dépendance s’appelait « swift-search« , mais ce package n’était pas présent dans le registre public npmjs.com.

Halo
Une recherche rapide de dépendance npm interne utilisée par le projet OSS (GitHub)

En réalisant cela, dos Santos a enregistré un package du même nom sur le registre npm, avec son code personnalisé (illustré ci-dessous dans cet article).

Les anciens articles sur la confusion des dépendances expliquent que le terme représente une faiblesse inhérente à divers gestionnaires de référentiels open source lorsqu’il s’agit de récupérer les dépendances spécifiées pour un progiciel.

Si un projet utilise une dépendance privée créée en interne et qu’une dépendance du même nom existe également sur un référentiel public, cela créerait une « confusion » pour les outils de développement quant à la dépendance à laquelle il fait référence.

En tant que telle, la dépendance publique du même nom serait intégrée à l’environnement de développement au lieu de la dépendance privée prévue.

La « confusion de dépendance » ou les attaques de détournement permettent donc aux attaquants d’injecter leur code malveillant dans une application interne lors d’une attaque automatisée de la chaîne d’approvisionnement.

En Mars de cette année, des attaquants ont exploité cette technique pour cibler des entreprises de premier plan avec du code malveillant, élargissant la portée de cette faiblesse au-delà de la recherche bénigne sur les bogues.

La version contrefaite du package « swift-search » publiée par dos Santos dans le cadre de cette recherche a depuis longtemps été supprimée du registre public npm.

Le code contenu dans le package de dos Santos accède aux paramètres sensibles d’un système vulnérable à la confusion des dépendances et les télécharge sur le serveur de preuve de concept du chercheur.

Ces champs et fichiers incluent :

  1. Nom d’hôte du système et nom d’utilisateur du compte
  2. Variables d’environnement (env)
  3. Nom du système d’exploitation et informations sur la version
  4. Adresse IP publique du système (IPv4 ou IPv6)
  5. fichier /etc/hosts
  6. fichier /etc/passwd
  7. fichier /etc/shadow

Le serveur de jeu Microsoft Halo piraté répond

Quelques heures après la publication du package dans le registre npm, le chercheur a remarqué avoir reçu des ping-back des serveurs de Microsoft.

« Les requêtes DNS provenaient de l’IP 13.66.137.90 qui est un serveur DNS de Microsoft et après cela, une requête POST de 51.141.173.203 qui est également une adresse IP de Microsoft (Royaume-Uni) », explique dos Santos dans son article de blog.

Le chercheur déclare que l’accès à https://51.141.173.203 lui a présenté un certificat SSL répertoriant Microsoft en tant qu’organisation, avec le champ Common Name (CN) répertoriant *.test.svc.halowaypoint.com.

Le domaine halowaypoint.com représente la série de jeux vidéo Halo, publiée par Xbox Game Studios de Microsoft.

Cela a encore confirmé les soupçons du chercheur selon lesquels un serveur de Microsoft avait été touché avec succès par son attaque de détournement de dépendance, et le chercheur a contacté Microsoft.

Certaines des données renvoyées par le serveur de Microsoft comprenaient le nom d’utilisateur système, les chemins d’accès aux environnements de développement d’applications, divers identifiants, etc.

Bien que, comme indiqué dans le code ci-dessus, le chercheur ait tenté d’accéder également aux fichiers système sensibles, notamment : /etc/passwd et /etc/shadow.

halo microsoft
Certains des champs obtenus par le chercheur à partir des serveurs de Microsoft

Les certificats SSL présents sur les sous-domaines de halowaypoint.com répertorient Microsoft Corporation comme organisation derrière ceux-ci, et les enregistrements WHOIS pour 51.141.173.203 répertorient également Microsoft comme organisation responsable.

Cela dit, aucun enregistrement de recherche inversée associant directement l’adresse IP 51.141.173.203 à un domaine Microsoft ou à un certificat SSL n’a été trouvé, ce qui indique que l’adresse IP a peut-être été mise hors ligne, à la suite du rapport du chercheur.

« Nous avons enquêté et déterminé que le problème sous-jacent avait déjà été résolu avant le rapport », a déclaré un porte-parole de Microsoft.

De plus, la société déclare que ce rapport fait référence à un bref problème introduit par un changement tiers et qu’il n’y a aucune indication d’un impact sur le client.

Au cours de la dernière année, les attaques contre les référentiels open source, notamment npm, PyPI et RubyGems, ont connu une augmentation constante.

Maintenant, avec la confusion des dépendances et les individus malveillant publiant activement des milliers de packages copiés dans ces écosystèmes, un défi supplémentaire est apparu pour les organisations et les mainteneurs de référentiels pour freiner l’activité malveillante.

Si cet article vous a plu, jetez un œil à nos bons plans.

Laisser un commentaire