Des chercheurs de NTT Security ont trouvé une souche de malware nommée StoatWaffle qui cible les développeurs. Une campagne qui n’est pas sans rappeler celle menée par le groupe Contagious Interview en décembre dernier et qui visait le même public. Selon les conclusions des experts, StoatWaffle marque une évolution avec une compromission quasi instantanée des workflows des développeurs. Les attaquants utilisent comme leurres des référentiels de projets en rapport avec la blockchain. Puis ils intégrent un fichier de configuration VS Code malveillant qui déclenche l’exécution du code lorsque le dossier est ouvert et considéré comme fiable par la victime
« StoatWaffle est un logiciel malveillant modulaire implémenté par Node.js et doté de modules Stealer et RAT », ont déclaré les chercheurs de NTT dans un blog, ajoutant que l’opérateur de la campagne, « WaterPlum », « développe en permanence de nouveaux malwares et met à jour ceux qui existent déjà. » Cela signifie que pour suivre l'activité de « Contagious Interview », il faudra peut-être élargir la portée des efforts de détection aux environnements de développement détournés, et pas seulement aux paquets malveillants et aux leurres.
Un seul dossier à ouvrir
StoatWaffle exploite la confiance des développeurs dans les environnements Visual Studio Code. Au lieu de compter sur les utilisateurs pour exécuter des scripts suspects, comme lors des attaques précédentes, les pirates intègrent des configurations malveillantes dans des dépôts de projets d'apparence officielle, souvent axés sur le développement de la blockchain, un type d'appât qui correspond aux campagnes Contagious Interview. L'astuce repose sur un fichier « .vscode/tasks.json » configuré avec le paramètre « runOn: folderOpen ». Dès qu'un développeur ouvre le projet, la charge utile s'exécute automatiquement sans qu'aucun autre clic ne soit nécessaire. Le malware StoatWaffle exécuté exploite un framework modulaire basé sur Node.js qui se déploie généralement par étapes. Elles comprennent un chargeur, des composants de collecte d’identifiants, puis un cheval de Troie d’accès à distance (RAT) implanté pour assurer la persistance et garder un accès entre les systèmes.
Le module RAT maintient une communication régulière avec un serveur C2 contrôlé par l’attaquant, exécutant des commandes pour mettre fin à son propre processus, modifier le répertoire de travail, lister les fichiers et répertoires, naviguer vers le répertoire de l’application, récupérer les détails du répertoire, télécharger un fichier, exécuter du code Node.js et lancer des commandes shell arbitraires, entre autres. De même, StoatWaffle adopte un comportement spécifique en fonction du navigateur de la victime. « Si le navigateur appartient à la famille Chromium, il vole les données des extensions du navigateur en plus des identifiants enregistrés », ont indiqué les chercheurs. « Si le navigateur est Firefox, il vole les données des extensions du navigateur en plus des identifiants enregistrés. Il lit le fichier extensions.json pour obtenir la liste des noms d’extensions, puis vérifie si le mot-clé désigné y figure. » Pour les victimes utilisant macOS, « le logiciel malveillant cible aussi les bases de données Keychain », ont-ils ajouté.
Une étape de plus pour Contagious Interview
StoatWaffle n’est pas une campagne isolée. Il s’agit du dernier chapitre des attaques Contagious Interview, largement attribuées à des acteurs liés à la Corée du Nord et suivis sous le nom de WaterPlum. Historiquement, cette campagne a ciblé des développeurs et des demandeurs d’emploi via de faux processus d’entretien, les incitant à exécuter du code malveillant sous le couvert d’évaluations techniques.
Auparavant, la campagne utilisait des paquets npm et des chargeurs de type XORIndex et HexEval, distribuant souvent des dizaines de paquets malveillants pour infiltrer à grande échelle les écosystèmes de développeurs. « Jusque-là, Team 8, l'un des sous-groupes du groupe, s'appuyait sur des logiciels malveillants comme OtterCookie, avant de passer à StoatWaffle vers décembre 2025 », ont indiqué les chercheurs. La divulgation a également permis de partager un ensemble d'indicateurs de compromission (Indicator of Compromise, IOC) basés sur les adresses IP, probablement liés à l'infrastructure C2 observée lors de l'analyse, afin de faciliter les efforts de détection.