Visual Studio Code (VS Code) est un éditeur de code source développé par Microsoft et utilisé par de nombreux développeurs de logiciels professionnels dans le monde entier. VS Code possède un magasin d'extensions (Marketplace) qui propose des modules complémentaires qui étendent les fonctionnalités de l'application et offrent davantage d'options de personnalisation. Mais Marketplace est connu pour ses problèmes de sécurité. Selon plusieurs rapports antérieurs, ces lacunes favorisent l'usurpation d'identité des extensions et des éditeurs, ainsi que des extensions qui volent les jetons d'authentification des développeurs.
Il y a également eu des découvertes dans la nature qui ont été confirmées comme étant malveillantes. Plus récemment, une équipe de chercheurs israéliens en cybersécurité (Amit Assaraf, Itay Kruk et Idan Dardikman) a mis à l'épreuve la sécurité de Marketplace et a réussi à infecter plus d'une centaine d'organisations en créant un cheval de Troie du thème populaire "Dracula Official" pour y inclure un code à risque. En outre, des recherches plus approfondies menées par l'équipe ont permis de découvrir des milliers d'extensions malveillantes avec des millions d'installations, suscitant de nombreuses préoccupations.
Ajout d'un code malveillant à l'extension Darcula
L'extension "Dracula Official" permet aux développeurs d'ajouter un mode sombre très net aux applications. Elle est utilisée par un grand nombre de développeurs en raison de son mode sombre visuellement attrayant et de sa palette de couleurs à fort contraste, qui est agréable pour les yeux et permet de réduire la fatigue oculaire pendant les longues sessions de codage. Mais la fausse extension utilisée dans la recherche a été baptisée "Darcula", et les chercheurs ont même enregistré un domaine correspondant à "darculatheme.com". Ce domaine a permis à l'équipe de se faire passer pour un éditeur vérifié sur Marketplace.
Ce qui a ajouté de la crédibilité à l'extension malveillante. Leur extension utilise le code du thème Darcula légitime, mais inclut également un script supplémentaire qui collecte des informations sur le système, notamment le nom d'hôte, le nombre d'extensions installées, le nom de domaine de l'appareil et la plateforme du système d'exploitation, et les envoie à un serveur distant par le biais d'une requête HTTPS POST. Cette extension malveillante a ensuite pu se propager facilement et infecter plus d'une centaine d'utilisateurs, car Microsoft l'a marquée comme "légitime" en établissant un lien avec le site Web "darculatheme.com".
Les chercheurs notent que le code malveillant n'est pas repéré par les outils de détection et de réponse des points finaux (Endpoint Detection and Response - EDR), car VS Code est traité avec un peu d'indulgence en raison de sa nature de système de développement et de test. Les outils EDR sont des outils conçus pour identifier et atténuer automatiquement les menaces au niveau du point final, c'est-à-dire sur l'appareil de l'utilisateur final. Pour ce faire, ils surveillent en permanence les points de terminaison, collectent des analyses de données et utilisent des réponses et des analyses automatisées basées sur des règles.
Amit Assaraf, coauteur de l'étude, explique : « malheureusement, les outils EDR traditionnels ne détectent pas cette activité (comme nous avons montré des exemples de RCE pour certaines organisations au cours du processus de divulgation responsable). VS Code a été construit pour lire de nombreux fichiers et exécuter de nombreuses commandes et créer des processus enfants, de sorte que les outils EDR ne peuvent pas comprendre si l'activité de VS Code est une activité de développement légitime ou une extension malveillante ». Et même les infrastructures privées de sécurité n'ont pu rien faire contre cette extension.
Localisation des victimes 24 heures après la publication de Darcula sur VS Code Marketplace
L'extension a rapidement gagné en popularité, étant installée par erreur par de nombreuses cibles de grande valeur, dont une entreprise cotée en bourse avec une capitalisation boursière de 483 milliards de dollars, d'importantes entreprises de sécurité et un réseau national de cours de justice. Les chercheurs ont choisi de ne pas divulguer les noms des entreprises concernées. L'étude n'ayant pas un but malveillant, les chercheurs n'ont recueilli que des informations d'identification et ont inclus une divulgation dans le fichier readme, la licence et le code de l'extension. Dans un billet de blogue, Assaraf a écrit :
Envoyé par Amit Assaraf
- 1 283 extensions qui contiennent un code malveillant connu (229 millions d'installations) ;
- 8 161 extensions qui communiquent avec des adresses IP codées en dur ;
- 1 452 extensions qui exécutent des exécutables inconnus ;
- 2 304 extensions qui utilisent le référentiel Github d'un autre éditeur, ce qui indique qu'il s'agit d'un copieur.
L'équipe s'est dite très préoccupée par le manque de contrôle de Microsoft sur le code des extensions disponibles sur Marketplace. L'absence de contrôles rigoureux et de mécanismes d'examen du code des extensions de Marketplace permet aux acteurs de la menace d'abuser de la plateforme, et cela s'aggrave au fur et à mesure que la plateforme est de plus en plus utilisée. « Comme vous pouvez le constater par les chiffres, il y a une pléthore d'extensions qui présentent des risques pour les organisations sur Visual Studio Code Marketplace », a écrit l'équipe. Ce problème représente une menace directe pour les organisations.
Selon les chercheurs, toutes les extensions malveillantes détectées par les chercheurs ont été signalées de manière responsable à Microsoft en vue de leur suppression. Toutefois, dimanche, la grande majorité d'entre elles pouvaient encore être téléchargées via Marketplace. L'équipe prévoit de publier son outil "ExtensionTotal" ainsi que des détails sur ses capacités opérationnelles au cours de cette semaine, en le diffusant en tant qu'outil gratuit pour aider les développeurs à analyser leurs environnements à la recherche de menaces. Microsoft n'a pas commenté les conclusions du rapport des chercheurs israéliens.
Source : billet de blogue
Et vous ?
Quel est votre avis sur le sujet ?
Que pensez-vous de la prolifération des extensions malveillantes sur VS Code Marketplace ?
Pourquoi l'éditeur de code le plus utilisé au monde comporte-t-il autant de lacunes en matière de sécurité ?
Voir aussi
40 % des suggestions de GitHub Copilot comportent des vulnérabilités en matière de sécurité, selon une nouvelle étude sur l'outil d'autocomplétion de VS Code
Des chercheurs démontrent qu'une fausse extension VS Code peut être installée plus d'un millier de fois en 48 heures, en faisant passer la fausse extension pour un paquet populaire existant
Microsoft dévoile les mises à jour de mai 2024 de Visual Studio Code (version 1.90), dont une multi-sélection des onglets de l'éditeur, l'amélioration de l'extensibilité de Copilot et du chat