Aller au contenu
en ce moment

Actualités

PoeLLM : un poème GitHub pilote un botnet de 3 400 serveurs IA

PoeLLM a infecté plus de 3 400 serveurs pour miner des cryptomonnaies. Voici comment le malware dissimulait son serveur de commande et comment protéger vos outils.

Par 8 min de lecture
PoeLLM : un poème GitHub pilote un botnet de 3 400 serveurs IA

👁 120 lectures

Black Lotus Labs, une équipe de Lumen, a décrit une campagne qu’elle suit depuis avril 2026 sous le nom de Canto Incognito. Le malware PoeLLM a touché plus de 3 400 serveurs, pour la plupart des machines exécutant des versions vulnérables de services open source dédiés aux modèles de langage, notamment LiteLLM et Ollama. Le code malveillant ne cherchait ni à voler des données ni à faire du chantage : il utilisait les machines compromises pour miner des cryptomonnaies.

L’aspect le plus étonnant de l’opération tient à la façon dont les machines infectées obtenaient l’adresse de leur serveur de commande. L’auteur avait publié sur GitHub un poème intitulé On the Nature of Connection, composé de deux strophes. Quatre mots précis du texte encodaient une adresse IPv4. Pour déplacer l’infrastructure vers une nouvelle machine, l’auteur remplaçait ces mots et publiait un nouveau commit : il l’a fait 11 fois à ce jour. Le malware téléchargeait le fichier, en extrayait les mots concernés et reconstituait l’adresse. Les chercheurs soulignent que la méthode de décodage n’a jamais changé : une fois découverte, elle permettait donc d’anticiper les déplacements suivants.

Un poème sur GitHub pilotait un botnet de 3 400 serveurs IA

Une attaque contre les serveurs, pas contre les modèles

Il faut distinguer cette affaire de la « poésie adversariale », dont on a beaucoup parlé ces derniers mois : ces techniques visent à contourner les protections des modèles de langage en formulant des demandes malveillantes sous forme de poème. Ici, aucun modèle ne recevait le texte et aucune instruction n’était injectée dans un prompt. Le poème servait simplement à publier une adresse, car un texte littéraire sur GitHub paraît anodin et ne déclenche pas de mécanisme de détection. Comme l’ont expliqué des chercheurs de Lumen à The Register, la poésie est

« un support idéal pour dissimuler un message important »

- l’équipe de Black Lotus Labs, citée par The Register

Le vecteur d’intrusion était, lui, beaucoup plus classique. Dans le cas de LiteLLM - un proxy populaire qui permet aux entreprises de diriger depuis un point unique le trafic de leurs applications vers plusieurs fournisseurs de modèles -, l’exploitation passait probablement par une requête POST spécialement conçue vers un point de terminaison de connexion. La faille permettait à deux points de terminaison d’exécuter sur l’hôte des commandes fournies par l’attaquant, sans vérifier les autorisations. Identifiée sous le numéro CVE-2026-42271, elle a été ajoutée en juin au catalogue des vulnérabilités exploitées dans des attaques, tenu par l’agence américaine CISA. Un correctif était déjà disponible depuis avril : la plupart des victimes avaient donc laissé pendant plusieurs mois un service exposé directement à Internet sans le mettre à jour.

Les cibles comprenaient aussi trois outils que les administrateurs considèrent parfois comme secondaires et qu’ils négligent ainsi facilement : Gotenberg, une API exécutée dans Docker pour convertir des documents en PDF, dont la documentation indique explicitement qu’elle ne doit pas être exposée sur Internet ; Gitea, une plateforme Git auto-hébergée ; et Ollama, qui n’est pas exposée par défaut, mais que certains utilisateurs configurent volontairement pour écouter sur 0.0.0.0 afin d’accéder à un modèle depuis un ordinateur portable ou un téléphone. Les chercheurs mentionnent également Ivanti Sentry : c’est une instance infectée de cet appareil qui les a mis sur la piste de toute la campagne.

Combien rapporte le minage sur une seule machine ?

La charge utile comprenait XMRig et Iron, deux mineurs courants reliés à l’infrastructure du pool Kryptex. Les 900 premières victimes avaient un point commun : elles avaient contacté le point de terminaison d’un service russe de minage de cryptomonnaies. Le mobile était donc financier, et il est possible de l’estimer en examinant les coûts des deux côtés.

Prenons une configuration courante pour l’hébergement local d’un modèle de langage : une carte RTX 4090 dans une station de travail, accompagnée d’un processeur doté d’une douzaine de threads. XMRig mine principalement du Monero avec le processeur, tandis qu’Iron peut solliciter le GPU. Une machine infectée fonctionnant sans interruption à pleine charge consomme environ 500 à 550 W à la prise, contre environ 80 W lorsqu’elle est au repos, en attente d’une requête au modèle. L’écart est de 450 W. Sur 720 heures par mois, cela représente 324 kWh. Le coût de cette consommation dépend du tarif d’électricité applicable : sans tarif local précis, il n’est pas possible d’en déduire une facture représentative pour la France, la Belgique ou la Suisse.

Pour l’attaquant, le calcul est très différent. Le minage de Monero sur un processeur grand public doté d’une douzaine de threads produit de l’ordre de 10 à 15 kH/s. Avec la puissance actuelle du réseau Monero et un cours d’environ 300 dollars, cela représente quelque 2 à 3 dollars par mois et par machine, soit environ 1,79 à 2,68 €. Le propriétaire du matériel supporte donc un coût électrique qui peut être bien supérieur au revenu du mineur. Mais multipliés par 3 400 machines, même de petits gains peuvent s’accumuler. L’infrastructure dédiée à l’IA constitue une cible attrayante : elle concentre des machines équipées de cartes graphiques coûteuses, alimentées en continu, parfois administrées comme de simples « environnements de test ».

Les montants en euros sont des estimations converties depuis des prix officiels en dollars au taux de référence de la BCE du 14 octobre 2026 (1 € = 1,1195 $). Source : BCE. Il ne s’agit pas de prix locaux de facturation.

Comment vérifier que vos services ne sont pas exposés

Si vous hébergez vous-même un modèle, commencez par vérifier si Ollama écoute sur 0.0.0.0. La variable OLLAMA_HOST réglée sur cette adresse signifie que toute personne connaissant votre adresse IP peut envoyer des requêtes au modèle et potentiellement faire davantage. La valeur par défaut est 127.0.0.1 : mieux vaut la conserver et passer par un tunnel SSH ou WireGuard pour accéder au service à distance, plutôt que d’ouvrir un port. Ensuite, mettez LiteLLM à jour vers une version intégrant le correctif publié en avril, ou vers une version ultérieure. Si vous ne savez pas quelle version est installée, partez du principe qu’elle est vulnérable. Enfin, Gotenberg et Gitea devraient rester accessibles uniquement depuis le réseau interne ; la documentation de Gotenberg le précise explicitement.

Un contrôle simple consiste à surveiller l’activité de votre machine : un mineur ne peut pas facilement dissimuler son utilisation des ressources. Si votre carte graphique atteint 70 degrés et que ses ventilateurs tournent alors que personne n’envoie de requête au modèle, il ne s’agit probablement pas d’un « modèle qui chauffe », mais d’un processus qui mine des cryptomonnaies. Vérifiez les processus portant des noms proches de ceux de services système et qui saturent le processeur, ainsi que les connexions sortantes vers des ports utilisés par des pools de minage. Lumen a publié une liste d’indicateurs de compromission sur son dépôt GitHub et a bloqué, sur son réseau dorsal, le trafic à destination et en provenance des serveurs de commande de PoeLLM. Cela ne signifie pas que la campagne a pris fin, seulement qu’une voie importante a été fermée.

Pourquoi ces campagnes risquent de se multiplier

Les outils conçus pour exécuter des modèles localement ont souvent été pensés comme des outils pour développeurs : ils doivent fonctionner immédiatement après installation, sans configuration, mot de passe ni certificat. C’est raisonnable pour un logiciel lancé sur un ordinateur portable. Ça l’est beaucoup moins quand le même paquet est installé sur un serveur doté de quatre cartes graphiques et d’une adresse publique, parce qu’une équipe voulait « tester rapidement quelque chose » et que l’environnement de test est ensuite resté en place.

Le vol de puissance de calcul est pourtant le scénario le moins grave auquel s’expose une passerelle de modèles mal sécurisée. Dans la campagne Canto Incognito, les serveurs infectés servaient aussi à scanner et à exploiter d’autres machines, au nom de leur propriétaire. Une autre conséquence possible est le vol des clés API stockées dans la configuration de LiteLLM. La facture ne se limite alors plus à l’électricité consommée : elle dépend du nombre de jetons qu’un attaquant peut générer sur le compte du fournisseur de modèles avant d’être repéré. Avec les tarifs des grands modèles de raisonnement, le montant peut grimper en une journée au point de rendre dérisoire le coût d’un mois de minage de Monero.

Informations vérifiées le 14 octobre 2026. Sources : Tom’s Hardware - compte rendu de la campagne Canto Incognito, Lumen Black Lotus Labs, catalogue KEV de la CISA américaine (CVE-2026-42271).

Google · Vos sourcesPromptif plus haut dans Google - en un clicAjouter aux sources préférées →

Questions fréquentes

Comment le malware PoeLLM dissimulait-il l’adresse de son serveur de commande ?

L’auteur avait publié sur GitHub un poème intitulé On the Nature of Connection, dans lequel quatre mots précis encodaient une adresse IPv4. Pour déplacer l’infrastructure, il remplaçait ces mots et publiait un nouveau commit : il l’a fait 11 fois au total.

Combien coûte un mois de minage au propriétaire d’un serveur infecté ?

Une machine équipée d’une RTX 4090 qui fonctionne sans interruption consomme environ 450 W de plus qu’au repos, soit 324 kWh par mois. Le coût supplémentaire dépend du tarif d’électricité du propriétaire. Le mineur, lui, peut rapporter environ 2 à 3 dollars par mois sur une machine dotée d’un processeur grand public à une douzaine de threads.

Combien de serveurs ont été infectés par la campagne Canto Incognito ?

Plus de 3 400 serveurs ont été touchés selon les informations rapportées sur la campagne. Lumen n’a pas publié de répartition géographique des victimes.

Kinetyra

// read next

More on this from PROMPTIF

Promptif

Promptif

ADMINISTRATOR
à lire ensuiteKimi K3 : hausse de 11%. Nouveaux tarifs par million de tokensactualitésKimi K3 : hausse de 11%. Nouveaux tarifs par million de tokensLe fournisseur de Kimi K3 modifie ses tarifs API : l'entrée baisse à 0,70 USD tandis que la sortie grimpe à 15,00 USD le million de tokens, soit +11%.

Les plus lus

  1. 1Applications de génération vidéo IA : Kling, PixVerse et autres
  2. 2Calendrier IA 2026 : lancements de modèles, conférences et IA Act
  3. 3Affaire Thélyson Orélien : j’ai testé le roman avec trois détecteurs d’IA. Même paragraphe : 100 %, 85 % et 0 %
// plan du site

Cette page dans d’autres langues6

promptif en chiffres 0textes dans les archives0actus des 7 derniers jours0modèles vidéo dans l'observatoire
🎬 Studio Vidéo IA : Higgsfield AI DoP Presets Caméra & Calculateur • Code Promo Higgsfield AI -50% • Higgsfield vs Kling AI
× ‹ agrandissement ›