Ne passez pas par GO – alerte sur un package malveillant
12 février 2025
0 minutes de lectureDes chercheurs ont récemment découvert un nouveau problème dans la chaîne d’approvisionnement logicielle de BoltDB, un outil de base de données populaire dans l’environnement de programmation Go. Le module Go BoltDB a été compromis et contenait du code malveillant dissimulé. Cette version a exploité la façon dont Go gère et met en cache ses modules, ce qui lui a permis de passer inaperçue pendant plusieurs années. Cette porte dérobée permet aux pirates de contrôler à distance les ordinateurs infectés par l’intermédiaire d’un serveur qui leur envoie des commandes, c’est-à-dire via un serveur de commande et de contrôle. La version malveillante (1.3.1) a été publiée sur GitHub en novembre 2021. Après sa publication, le service Go Module Mirror l’a stockée de façon permanente.
Qu’est-ce qu’une attaque par typosquattage ?
Les attaques par typosquattage se produisent lorsque des acteurs malveillants créent et téléversent des packages logiciels dangereux dans des bibliothèques en ligne, sous des noms très proches de ceux de packages populaires. Ils espèrent que les utilisateurs téléchargeront et installeront par erreur ces versions dangereuses au lieu du logiciel légitime qu’ils recherchaient.
Pour en savoir plus : https://snyk.io/blog/typosquatting-attacks/
Le module malveillant de Go Module Mirror s’appelait github.com/botdb-go/bolt, un nom proche de celui du module d’origine, github.com/boltdb/bolt. Une fois détecté, le package malveillant a été remplacé par la version légitime. Cependant, la mise en cache indéfinie des modules par Go Module Mirror a pris le relais et a conservé le module compromis dans son cache. Un autre facteur déterminant est notre volonté actuelle de mettre à jour nos systèmes vers les dernières dépendances, ce qui a conduit les développeurs à installer une version qui est restée dans le système pendant trois ans. Les chercheurs de Socket ont signalé Go Module Mirror à GitHub et à Google le 30 janvier 2025. Le module avait été mis en cache sur Go Module Proxy, qui a continué à le fournir à ses clients.


Plus de 80 problèmes restent sans solution dans le dépôt d’origine depuis 2015.

Impact
Des milliers d’organisations touchées pendant plus de trois ans
Une faille majeure dans l’écosystème de la chaîne d’approvisionnement
Les packages malveillants restent consultables sur Go Module Proxy
Mesures prises
Selon une mise à jour publiée par Arstechnia le 7 février 2025, un représentant de Google a fait la déclaration suivante :
« Le module a été supprimé à la fois du proxy Go et de GitHub, et nous l’avons ajouté à la base de données des vulnérabilités Go pour les personnes qui pensent avoir été touchées. Nous mettons en œuvre des correctifs, notamment l’analyse des capacités via Capslock et des comparaisons avec deps.dev. Nous remercions Socket et les contributeurs de l’équipe Go qui ont détecté le module et travaillent à la mise en place de correctifs. Nous continuerons à collaborer avec l’ensemble du secteur pour sensibiliser aux problèmes courants de sécurité open source de ce type et aux initiatives en cours, telles que SLSA et OpenSSF. »

Le package vulnérable de Go Module Mirror a été supprimé de GitHub.

Mesures d’atténuation
Suivez les risques liés à la chaîne d’approvisionnement et les bonnes pratiques :
https://snyk.io/blog/supply-chain-risks-and-best-practices/
Découvrez les 4 bonnes pratiques pour atténuer les attaques contre la chaîne d’approvisionnement logicielle
https://snyk.io/articles/software-supply-chain-security/#best
Utilisez Snyk pour sécuriser votre chaîne d’approvisionnement logicielle https://snyk.io/solutions/software-supply-chain-security/
Références :
Avis Snyk Open Source : https://security.snyk.io/vuln/SNYK-GOLANG-GITHUBCOMBOLTDBGOBOLT-868841
https://socket.dev/blog/malicious-package-exploits-go-module-proxy-caching-for-persistence
https://thehackernews.com/2025/02/malicious-go-package-exploits-module.html
Participez à Fetch the Flag 2026 !
Mettez vos compétences en sécurité à l’épreuve lors de notre événement Capture the Flag, les 12 et 13 février, de midi à midi (heure de l’Est).



