1 min de lecture
Un dépôt GitHub sans une seule ligne de code malveillant. Un agent de codage qui suit sagement un message d’erreur bien formulé. Et pourtant : un shell inversé, les credentials du développeur exfiltrées, une persistance installée. La charge utile n’apparaît jamais dans le dépôt, jamais dans la revue de code, jamais dans le contexte que l’agent traite avant de l’exécuter.
Source : 0DIN Blog (Andre Hall, Miller Engelbrecht), “Clone This Repo and I Own Your Machine”, 0din.ai/blog, relayé par tl;dr sec #336.
Trois composants anodins, un système complet
Le dépôt a une documentation d’installation parfaitement banale. Le package lève un RuntimeError dont le message vous recommande poliment la commande à lancer pour réparer. Et cette commande d’initialisation va chercher sa vraie instruction dans un enregistrement DNS TXT contrôlé par l’attaquant, qu’elle décode en base64 et passe directement à bash.
Un secret bien caché finit par se trouver. Un secret qui n’est nulle part dans ce que vous inspectez survit à un audit parfait.
Le shell inversé n’a rien d’original ; on en a vu des centaines. Ce qui l’est, c’est d’avoir compris qu’un agent de codage face à une erreur cherche à la corriger, pas à s’arrêter et à poser la question. Même mécanique que dans AWS Kiro : l’agent accorde sa confiance à un contenu que personne n’a validé.
Je détaille dans la version complète pourquoi cette technique rend la revue de code et le SAST structurellement aveugles, le tableau d’impact complet, et mes recommandations de durcissement pour les environnements de développement assistés par agent : sandboxing des scripts d’installation, traitement de la résolution DNS comme un canal de données, journalisation des requêtes DNS sortantes des postes de développement.
Articles lies
Vibe coding : 6, 15, 35... la courbe des CVE générées par IA qui double chaque mois
Le projet Vibe Security Radar de Georgia Tech trace les CVE directement attribuables au code généré par IA : méthodologie, croissance x6 en un trim...
11/09/2026NemoClaw : une page web piégée suffit pour prendre le contrôle d'un agent Ollama local
Analyse de CVE-2026-65105 (NemoClaw, NVIDIA) découverte par Oasis Security : contournement des origin checks par DNS rebinding vers l'API non authe...
09/09/2026Mind viruses : quand l'agent infecté devient lui-même le vecteur de contamination
Analyse du preprint Anthropic/EPFL sur les mind viruses : des payloads auto-réplicants qui se propagent d'agent en agent via les fichiers de prompt...
07/09/2026GhostSplice : découpez votre instruction malveillante en trois, et l'agent la recolle tout seul
Analyse de GhostSplice (ASSET Research Group) : la fragmentation d'instructions malveillantes à travers les canaux d'un serveur MCP (description d'...
03/09/2026Comment and Control : une issue GitHub sans aucun droit suffit à voler les secrets de votre CI
Analyse des CVE-2026-54316 (Claude Code) et CVE-2026-12537 (Gemini CLI, CVSS 10.0) présentées à Black Hat USA 2026 : vol de secrets CI via prompt i...
01/09/2026