Les malheurs de Toyota en matière de cybersécurité s'enchainent depuis des mois, voire des années. Le 28 février 2022, on apprenait ainsi que le constructeur avait du arrêter l'ensemble de ses lignes de production au Japon à cause d'une cyberattaque par rebond via son fournisseur de pièces plastiques et de composants électroniques Kojima Industries. Le 10 mars de la même année, un ransomware a cette fois touché son prestataire Dusso par lequel 1,4 To de ses données ont été dérobées, avant un scénario similaire le 18 mars via Bridgestone. Ce scénario d'attaque par rebond souligné dernièrement par Gérôme Billois, associé au cabinet Wavestone lors du dernier Panocrim 2023 du Clusif, n'est pas le seul danger pour Toyota. Une dernière vulnérabilité affectant le système mondial de gestion des informations sur la préparation des fournisseurs du constructeur aurait ainsi pu être exploitée à des fins malveillantes. Découverte par un chercheur en sécurité qui a remonté ce risque à Toyota, cette faille aurait pu conduire au pire pour le géant japonais.
« J'ai découvert ce qui était essentiellement un mécanisme de connexion par porte dérobée sur la web app Toyota GSPIMS qui m'a permis de me connecter en tant qu'utilisateur ou fournisseur de l'entreprise Toyota simplement en connaissant une de ses adresses e-mail. J'ai finalement découvert un e-mail d'administrateur système et j'ai pu me connecter à leur compte. Une fois cela fait, j'ai eu un contrôle total sur l'ensemble du système mondial », a expliqué le chercheur en sécurité Eaton Zveare. Ce dernier indique avoir eu accès aux projets internes du groupe, à des documents et comptes d'utilisateurs de partenaires et de fournisseurs du groupe automobile dont ceux de Michelin, Continental, Stanley Black&Decker, Harman...
Un jeton de session JWT généré avec une simple adresse mail
Dans un premier temps, le chercheur indique avoir d'abord modifié des valeurs return true du code JavaScript de la page de login Toyota GSPIMS sous Angular sans réussir toutefois à récupérer de données. « Toyota/SHI avait apparemment correctement sécurisé son API et, à ce stade, j'étais sur le point de qualifier ce site de "probablement sécurisé" [...] Avant d'abandonner le travail sur l'application GSPIMS, j'ai parcouru son code pour voir s'il pouvait y avoir des clés API, des points de terminaison API secrets ou toute autre chose qui pourrait être intéressante ».
Et le chercheur de trouver qu'un jeton de session JSON Web Token pouvait être généré en fournissant une simple adresse e-mail sans mot de passe. « Les courriels d'entreprise de Toyota utilisent un format prévisible en Amérique du Nord : prénom.nom@toyota.com. Cela m'a permis de deviner plus facilement un e-mail valide, mais je devais encore trouver quelqu'un. J'ai cherché sur Google des employés de Toyota impliqués dans la chaîne d'approvisionnement, dans l'espoir de trouver quelqu'un qui pourrait être enregistré dans le système GSPIMS. J'ai trouvé une correspondance prometteuse et j'ai formulé son adresse e-mail en fonction de son nom. Ensuite, j'ai lancé la requête HTTP createJWT, et elle a renvoyé un JWT valide », explique Eaton Zveare. « Il semble que j'aie découvert un moyen de générer un JWT valide pour tout employé ou fournisseur Toyota enregistré dans GSPIMS, en contournant complètement les différents flux de connexion d'entreprise, qui appliquent probablement également des options d'authentification à deux facteurs ». Le chercheur ne s'est pas arrêté en si bon chemin puisqu'il a été en mesure via une porte dérobée d'agir en tant qu'administrateur système et d'accéder en lecture et en écriture au répertoire utilisateur global du système sur lequel sont enregistrés plus de 14 000 utilisateurs.
Des scénarios d'attaques redoutables évités
Si un acteur menaçant avait découvert ce problème, les conséquences auraient pu être graves explique le chercheur, mettant en avant des scénarios d'attaques variés incluant l'ajout d'un compte à privilège élevé pour conserver un accès malveillant même en cas de découverte et de résolution de l'incident, la modification ou suppression de données pour perturber l'activité mondiale de Toyota, réaliser des campagnes de phishing ciblé. « Il y a plus de 14 000 utilisateurs à attaquer. C'est une chose d'obtenir plus de 14 000 e-mails d'entreprise, mais c'en est une autre d'avoir ces 14 000 adresses et de savoir exactement sur quoi les utilisateurs travaillent/ont travaillé. Si un utilisateur/fournisseur a l'habitude de réutiliser ses mots de passe, il est aussi possible d'attaquer son infrastructure », a fait savoir le chercheur.
Eaton Zveare a prévenu Toyota le 3 novembre dernier de son hack qui a indiqué le 23 du même mois ce vecteur d'attaque en faisant en sorte que les points de terminaison createJWT et findByEmail renvoient le statut HTTP 400 – Bad Request dans tous les cas.