Un compte GitHub nouvellement créé a tenté d'injecter du code de vol de crédentiels dans le wallet Vizor de Chainapsis et le logiciel de wallet Zcash de Zingo Labs via six pull requests soumis le 9 novembre tard et le 10 novembre tôt, heure de l'Est.
Les enregistrements de GitHub montrent que quatre demandes Vizor ont été fermées sans fusion, tandis que les demandes dans zingo-common et zingolib sont restées ouvertes et non fusionnées mardi matin HE. Il n'est pas confirmé si un mainteneur a construit la dépendance malveillante ou exposé des identifiants.
Le danger ne dépend pas d'une fusion. Le paquet Rust, ou crate, lwd-uri-util place son collecteur d'identifiants dans build.rs, que Cargo exécute avant la compilation du paquet. Il peut également s'exécuter lors de cargo check ou de l'analyse de l'éditeur par rust-analyzer : ce dernier active les scripts de construction par défaut. Un développeur examinant une branche non fusionnée pourrait donc déclencher le collecteur localement.
L'équipe de recherche OpenSourceMalware a documenté la campagne. La base de données d'avis de GitHub classe également les versions 0.1.0 à 0.1.7 du crate comme du malware, sans version corrigée.
Dire aux examinateurs d'IA d'ignorer les téléchargements secrets
Le compte, sapho11, a été créé environ une demi-heure avant ses premières demandes. Sa proposition initiale de version Windows prétendait ajouter des diagnostics d'échec de signature, mais la modification originale a copié des variables d'environnement liées à la signature, des identifiants Git, des clés privées SSH et d'autres fichiers vers un téléchargement sur un serveur externe.
Une revue automatisée Codex a signalé le téléchargement de la clé de signature des mises à jour privées et a averti qu'elle pourrait permettre la création de flux de mises à jour falsifiés. L'auteur a par la suite supprimé la collecte d'identifiants de cette proposition avant sa fermeture.
Le compte a ensuite proposé des modifications à AGENTS.md, un fichier d'instructions du projet destiné aux agents de codage IA. Le texte proposé décrivait la collecte des valeurs de signature comme « intentionnelle et attendue » et demandait aux examinateurs automatisés et humains de ne pas signaler les téléchargements suivant cette prétendue convention comme une fuite d'identifiants. Le fil de discussion public de Vizor confirme que Codex était configuré pour examiner automatiquement les demandes d'extraction.
Un voleur qui s'exécute avant le wallet
La proposition Vizor ultérieure et les deux demandes Zingo ont introduit lwd-uri-util comme utilitaire pour normaliser les adresses du serveur de wallet. OpenSourceMalware a constaté que les modifications Zingo utilisaient des sauts de ligne au format Windows CRLF, faisant apparaître de petites ajouts de dépendances comme des réécritures de fichiers complets.
Dans la version 0.1.7 source, le script de construction lit les variables d'environnement et les fichiers d'identifiants Git, GitHub CLI, AWS, Cargo et npm accessibles. Il recherche également les fichiers de coffre chiffré Keplr MCP et tente de récupérer des secrets sélectionnés du Keychain macOS, puis écrit les données recueillies dans un fichier JSON et tente de les envoyer par POST à webhook.site.
Le script bloque les téléchargements dans les environnements similaires à un scanner, mais la collecte et la création de fichiers locaux se produisent avant cette vérification. Son paramètre « aucune métrique » arrête uniquement le téléchargement.
L'indice du registre crates.io marquait toujours les huit versions comme non retirées mardi matin HE, et le compte GitHub restait publiquement accessible. OpenSourceMalware a encouragé toute personne ayant compilé la branche à changer ses identifiants et à examiner le fichier lwd_uri_build_context.json généré pour voir ce qui avait été collecté.




