En septembre, un ingénieur logiciel de Binance a passé deux entretiens d’embauche pour une entreprise fictive, puis installé sur son ordinateur de travail l’exercice de code de son faux recruteur. Quelques semaines plus tard, des pirates nord-coréens remontaient de ce poste jusqu’au service qui signe les retraits, et vidaient les portefeuilles de Binance de 6,34 milliards de dollars.

Les équipes de sécurité de Binance ont repéré l’anomalie, remplacé son ordinateur et changé tous ses identifiants. Trop tard pour effacer ce que les pirates avaient appris, à savoir son poste et l’identité de ses collègues - ©PJ McDonnell / Shutterstock
Les équipes de sécurité de Binance ont repéré l’anomalie, remplacé son ordinateur et changé tous ses identifiants. Trop tard pour effacer ce que les pirates avaient appris, à savoir son poste et l’identité de ses collègues - ©PJ McDonnell / Shutterstock

Après le feuilleton du piratage de Huggin Face cet été, aura-t-on droit à la saga de l'automne avec celle de Binance ? Quelques jours après l’attaque du 29 octobre, le FBI a mis ce casse sur le compte de la Corée du Nord, sans dire par où les pirates étaient entrés. Dans un premier rapport d’enquête publié hier, Binance retrace l’intrusion et reconnaît que l’incident « n’aurait pas dû se produire ». Selon la plateforme, les pirates ont préparé leur coup pendant plusieurs mois. Ils ont repéré l’ingénieur sur un site de recherche d’emploi légitime, où son profil mentionnait son expérience chez Binance.

L’exercice de code piégé d’un faux recruteur

Les pirates connaissaient l’équipe chargée des portefeuilles de Binance dès le mois de juin. En cherchant sur le Web un assistant de programmation dopé à l’IA, un ingénieur DevOps de cette équipe avait téléchargé une version piégée de l’outil d’installation Homebrew, très répandu sur Mac. Les équipes de sécurité de Binance ont repéré l’anomalie, remplacé son ordinateur et changé tous ses identifiants. Trop tard pour effacer ce que les pirates avaient appris, à savoir son poste et l’identité de ses collègues.

En septembre, ils ont contacté un ingénieur logiciel de Binance en se faisant passer pour le directeur de projet d’une entreprise fictive. Le premier entretien s’est déroulé en vidéo, avec un prétendu recruteur des ressources humaines. Pour gagner sa confiance, l’interlocuteur lui a montré un compte de réseau social rempli de photos et de vidéos personnelles, une mise en scène inédite selon Binance. Le second entretien, avec un faux PDG, a eu lieu sur une application de messagerie grand public. À la fin de l’échange, le faux dirigeant lui a demandé de télécharger sur son ordinateur de travail un exercice de programmation.

Dès l’installation du projet, les pirates ont remplacé sur sa machine pyenv, un utilitaire courant de gestion des versions de Python, par une copie piégée. Ils envoyaient ensuite leurs ordres à cette copie depuis un serveur sous leur contrôle. « Ce logiciel malveillant inédit n’a pas été détecté par les outils de protection des postes de travail à ce moment-là », reconnaît Binance.

Si vous êtes développeur, ce scénario vous concerne aussi. Les pirates nord-coréens emploient ce genre de recrutement piégé depuis des années, dans les campagnes Contagious Interview et Operation Dream Job, rappelle BleepingComputer, même si Binance ne rattache son ingénieur à aucune d’elles. Depuis janvier, la plateforme dit avoir déjoué 57 tentatives de pirates liés à la Corée du Nord.

Binance
Clubic
Binance
  • Volume de transactions élevé
  • Large éventail de cryptomonnaies
  • Fonctionnalités avancées de trading
9 / 10
9  / 10

L’outil d’IA interne de Binance détourné par les pirates

Le 20 octobre, depuis l’ordinateur de l’ingénieur piégé, les pirates ont détourné un outil d’IA interne à Binance pour prendre le contrôle des postes de deux collègues de l’équipe portefeuilles, dont l’ingénieur DevOps repéré en juin. Sur le poste de ce dernier, ils ont trouvé un jeton d’accès. Grâce à lui, l’ingénieur pouvait lancer de nouveaux programmes, appelés conteneurs, sur l’infrastructure de Binance.

Le 29 octobre, les pirates se sont connectés à l’ordinateur du second collègue et ont déployé un conteneur avec les identifiants de l’ingénieur DevOps. Avec ce conteneur, ils ont pris la main sur le service qui signe les retraits de Binance. En quatre minutes, à partir de 20 h 05 (heure UTC), ils ont fait transférer 233,46 millions de XRP depuis cinq portefeuilles, avant de vider ceux de Solana, d’Optimism et de Bitcoin.

Les équipes de Binance ont été alertées après les premiers transferts, puis ont suspendu les retraits, mais les pirates avaient pris leurs précautions. Grâce au mécanisme EIP-7702 d’Ethereum, ils avaient confié à leur contrat intelligent une partie des droits sur un portefeuille de Binance, et ces autorisations étaient toujours valables malgré la suspension des retraits. Pour les annuler, Binance a dû mettre au point une procédure spéciale. La clé de signature de ce portefeuille est répartie entre plusieurs parties, selon le principe du calcul multipartite (MPC), et aucune clé unique ne permettait de tout révoquer d’un coup. Les pirates ont fait valider leur dernier transfert, 2 961,9 ETH, à 23 h 56, et Binance a effacé la délégation quatorze minutes plus tard.

Si vous aviez des fonds sur Binance, la plateforme assure prendre la totalité des pertes à sa charge, et elle avait remplacé 98 % des cryptomonnaies volées au 31 octobre. Avec ses partenaires, elle a gelé ou intercepté 2,85 milliards de dollars d’actifs, puis reconstruit le système de portefeuilles et l’outil d’IA compromis. Binance garde pour elle certains détails techniques, pour éviter d’aider d’autres pirates, et ne dit ni le nom de cet outil d’IA ni la façon dont les pirates l’ont détourné pour prendre la main sur les postes de deux ingénieurs.