Vue lecture

Il y a de nouveaux articles disponibles, cliquez pour rafraîchir la page.

Un malware invisible se cache dans des caractères Unicode sur GitHub, npm et VS Code

La société Aikido Security a découvert une campagne de malware baptisée Glassworm qui utilise des caractères Unicode invisibles pour dissimuler du code malveillant.

Plus de 150 dépôts GitHub, des paquets npm et des extensions VS Code sont touchés, et le malware utilise la blockchain Solana comme serveur de commande. L'objectif : voler les identifiants de portefeuilles crypto.

Des caractères invisibles qui cachent du code

Le principe est assez fourbe. Les attaquants utilisent des caractères Unicode dits PUA (Private Use Area), qui ne s'affichent pas du tout à l'écran, mais qui contiennent quand même des valeurs exploitables.

Dit plus simplement, chaque caractère invisible correspond à un point de code que le décodeur extrait, reconstruit en payload, puis exécute via eval(). Le code malveillant est là, sous vos yeux, mais vous ne le voyez pas.

Aikido Security a découvert que cette campagne avait eu lieu entre le 3 et le 9 mars derniers. Plus de 150 dépôts GitHub ont été compromis, mais aussi des paquets npm comme @aifabrix/miso-client et @iflow-mcp/watercrawl-watercrawl-mcp.

Si on regarde du côté de VS Code, l'extension quartz-markdown-editor et 72 extensions sur Open VSX ont été touchées. Les attaquants ont aussi utilisé des LLM pour générer des commits de couverture parfaitement crédibles, et passer ainsi sous les radars des reviewers.

La blockchain Solana impliquée

Ce qui rend Glassworm encore plus fourbe, c'est son infrastructure. Au lieu d'utiliser un serveur classique facile à bloquer, le malware récupère ses instructions de commande sur la blockchain Solana. Ce qui veut dire qu'il n'y a pas de serveur central à couper : les instructions sont inscrites dans la blockchain, accessibles à tous et quasi impossibles à supprimer.

L'objectif final est le vol de données liées aux portefeuilles crypto. Le malware cible 49 extensions de navigateur, dont MetaMask, Coinbase Wallet et Phantom. Il récupère les identifiants stockés localement et les exfiltre vers les serveurs des attaquants.

Côté attaquants, c'est du beau travail. Cacher du code dans des caractères que personne ne voit, utiliser une blockchain comme canal de commande et se servir d'IA pour maquiller les commits, c'est bien ficelé.

Le problème, c'est que ça expose un angle mort assez gênant dans la confiance qu'on accorde à l'open source : on installe des paquets et des extensions sans forcément lire chaque ligne de code, et quand le code malveillant est carrément invisible, ça devient compliqué à détecter.

Sources : Aikido.dev , Socket.dev

Dotenv Mask Editor - Fini les clés API à l'air libre

Et si vos fichiers .env se transformaient en un joli tableau avec des astérisques partout afin d'assurer la confidentialité de vos clés API et autres crédentials ? Hé bien c'est exactement ce que propose Dotenv Mask Editor , une extension VS Code qui remplace carrément l'éditeur texte par une grille.

Du coup, vos clés API, tokens AWS, mots de passe PostgreSQL et autres STRIPE_SECRET_KEY s'affichent sous forme de ****** et vous pouvez bosser dessus même si quelqu'un mate par-dessus votre épaule.

En gros, dès que vous ouvrez un fichier .env (ou .env.local, .env.production... bref, tout ce qui matche le pattern), l'extension vous présente vos variables dans un tableau à deux colonnes. Les clés à gauche, les valeurs masquées à droite. Pour modifier une valeur, hop, vous cliquez dessus et elle se dévoile le temps de l'édition. Vous cliquez ailleurs, c'est re-masqué. Pas de sauvegarde manuelle à faire, ça se fait tout seul.

Le masquage se déclenche à partir de 6 caractères (en dessous, c'est probablement pas un secret... genre PORT=3000 ou DEBUG=true, on s'en fiche). Et le truc cool, c'est que tout tourne en local sur votre machine.

Si vous vous dites "mais attends, y'a pas déjà Camouflage pour ça ?"... oui et non. Camouflage masque vos secrets avec un overlay pendant les démos et le partage d'écran, mais vous continuez à éditer dans l'éditeur texte classique. Dotenv Mask Editor, lui, change complètement l'interface, c'est un éditeur de tableau dédié aux variables d'environnement. Deux approches différentes du coup, et rien ne vous empêche d'utiliser les deux.

L'extension est sous licence MIT, fonctionne sur toutes les plateformes (Windows, Linux, macOS, même VS Code Web) et vous pouvez ajouter des patterns de fichiers personnalisés dans vos settings.json.

D'ailleurs, si vous voulez l'installer, c'est du classique : Ctrl+Shift+X dans VS Code (Cmd+Shift+X sur Mac), vous tapez "dotenv mask" et voilà.

Avec ça, vos secrets restent secrets mais faut quand même pas oublier de mettre votre .env dans le .gitignore hein. ^^

VS Code agent orchestrations: A simple example

VS Code agent orchestrations
Visual Studio Code version 1.109 introduces agent orchestrations — a feature that transforms the IDE into a multi-agent development platform. You can now create custom agents that collaborate, delegate tasks to specialized subagents, and execute complex workflows autonomously. This article explains the concept and demonstrates agent orchestration with a simple example. I'll also share my opinion on Microsoft's concept of agent orchestrations. It's not particularly favorable.

Source

VS Code 1.107 brings chat-integrated background agents and Agent HQ for multi-agent orchestration

Microsoft released Visual Studio Code version 1.107 with new features focused on Agent HQ, a multi-agent orchestration interface introduced in version 1.106. In version 1.107, background agents are promoted beyond pure CLI-based sessions: they run as named background tasks with isolated worktrees and richer context attachment, and appear as manageable sessions in the Agent HQ experience (the integrated Chat + sessions UI), rather than existing only as Copilot CLI or cloud sessions.

Source

❌