Introduction

Un paquet open source très populaire, avec plus d'un million de téléchargements mensuels, a été compromis après que des acteurs malveillants aient exploité une vulnérabilité dans le flux de travail des comptes des développeurs, leur donnant ainsi accès aux clés de signature et à d'autres informations sensibles.

Contexte Technique

Le paquet en question, appelé element-data, est une interface en ligne de commande qui aide les utilisateurs à surveiller les performances et les anomalies dans les systèmes de machine learning. Les attaquants ont exploité une vulnérabilité dans un flux de travail GitHub pour accéder au compte des développeurs et publier une nouvelle version malveillante du paquet, qui a ensuite été téléchargée et exécutée par les utilisateurs.

La version malveillante, étiquetée 0.23.3, a été publiée sur l'index de paquets Python et les comptes d'images Docker des développeurs. Elle a été supprimée environ 12 heures plus tard. Les développeurs ont conseillé aux utilisateurs d'assumer que toutes les informations d'identification accessibles à l'environnement où le paquet malveillant a été exécuté pourraient avoir été exposées.

Analyse et Implications

L'attaque a été possible en raison d'une vulnérabilité dans un flux de travail GitHub, qui a permis aux attaquants de poster du code malveillant et d'exécuter un script bash à l'intérieur du compte des développeurs. Les clés de signature et les jetons de compte ont ensuite été utilisés pour publier le paquet malveillant.

Les développeurs ont appris la compromission grâce à un rapport de problème tiers et ont supprimé le paquet dans les trois heures. Ils ont également tourné toutes les informations d'identification auxquelles le code malveillant avait accès et ont corrigé la vulnérabilité.

Perspective

Il est essentiel pour les utilisateurs de rester vigilants et de surveiller les mises à jour de sécurité pour les paquets open source qu'ils utilisent. Les développeurs doivent également prendre des mesures pour sécuriser leurs flux de travail et protéger leurs comptes contre les attaques.