Une failles dans la sécurité de la plateforme de revente en ligne LEGO
Découverte de vulnérabilités dans le site de vente en ligne de LEGO Group. Elles auraient pu permettre à des pirates de compromettre les serveurs internes de LEGO et d’exfiltrer les données des comptes privés des utilisateurs .
Qui ne connait pas le monde merveilleux des petites briques de couleurs de LEGO. En cette période de fêtes de fin d’année vous allez peut-être demandé au Père Noël les nouvelles boites Star Wars, Harry Potter ou l’un des mondes imaginaires de la marque ludique. Un monde qui regroupe de plus en plus de collectionneurs, de véritables fans du sujet. Certains en faisant un véritable business parallèle. Ils utilisent, par exemple, le site de vente en ligne de LEGO Group : BrickLink.
Les informaticiens de la société Salt Security, un spécialiste en sécurisation des API, ont pointé de la brique deux vulnérabilités compromettant la sécurité des API découvertes sur BrickLink, la plateforme numérique de revente. Réunissant plus d’un million de membres, Bricklink est la première place de marché virtuelle au monde mettant en relation acheteurs et vendeurs de pièces LEGO d’occasion.
Ces failles dans la sécurité des API auraient pu déclencher à la fois des attaques de type « usurpation de compte » massives par prise de contrôle des comptes clients et des compromissions côté serveur, permettant alors à des acteurs malveillants de manipuler les comptes de cette plateforme jusqu’à prendre entièrement la main sur les comptes utilisateurs ; de faire fuiter des informations personnelles et autres données utilisateurs sensibles stockées en interne via cette plateforme d’avoir accès à des données de production internes, susceptibles de compromettre les serveurs internes de l’entreprise.
Cross-Site Scripting
Les chercheurs ont mis au jour les deux vulnérabilités en question en s’intéressant aux parties du site intégrant des champs de saisie utilisateurs. Dans la boîte de dialogue « Find Username » de la fonctionnalité de recherche associée aux coupons, ils ont découvert une vulnérabilité XSS (Cross-Site Scripting) qui leur a permis d’injecter et d’exécuter du code sur la machine d’une victime via un lien trafiqué. L’équipe est parvenue à enchaîner la vulnérabilité XSS avec un identifiant de session exposé sur une autre page. En conjuguant ces deux vulnérabilités, les chercheurs ont réussi à pirater la session et à prendre le contrôle du compte. Des pirates auraient pu se servir de ces tactiques pour déclencher des attaques d’usurpation de compte intégrales ou dérober des données utilisateurs sensibles.
Upload to Wanted List
La seconde vulnérabilité a été identifiée sur la page « Upload to Wanted List » de la plateforme, qui permet aux utilisateurs de charger les listes de pièces et ensembles LEGO recherchés au format XML. En se servant de cette fonctionnalité, les chercheurs de Salt Labs ont pu exécuter une attaque par injection XXE (External Entity) sur le fichier XML, laquelle se produit lorsque l’entrée XML contenant une référence à une entité externe est traitée par un analyseur XML mal configuré. Grâce à cette attaque par injection XXE, les chercheurs ont pu lire les fichiers sur le serveur web et exécuter une attaque SSRF (par falsification de requête côté serveur) qui a pu être exploitée de nombreuses façons, notamment pour dérober des jetons AWS EC2 sur le serveur.
Dès la découverte de ces vulnérabilités, les chercheurs ont observé des pratiques de divulgation parfaitement coordonnées avec LEGO, et tous les problèmes ont été corrigés rapidement.