Catégories

Tags

🔍 Licence d'Utilisation 🔍

Sauf mention contraire, le contenu de ce blog est sous licence CC BY-NC-ND 4.0.

© 2025 à 2042 Sébastien Gioria. Tous droits réservés.

⏱️
Temps de lecture estimé
4 min de lecture
⏱️
Temps de lecture estimé
~6 minutes

Aikido a trouvé deux providers Terraform et deux modules Go piégés, rattachés à la campagne Graphalgo. L’un d’eux imite le provider Docker le plus populaire du registre, et son payload ne se déchiffre que sur une machine précise. Le malware se pilote ensuite par Slack et par un smart contract Ethereum.


Un n à la place d’un r

Le provider Docker de kreuzwerker pèse 56 millions de téléchargements sur le registre Terraform. Presque tous les dépôts d’infrastructure qui pilotent des conteneurs le déclarent quelque part. Début septembre, un provider nommé kreuzwenker/docker est apparu à côté. Une lettre change, et le reste du nom est identique.

Aikido l’a repéré, avec un second provider, gocommunity-io/dockerd, et deux modules Go : gocommunity.io/orderedbtree (publié le 11 août) et gogets.dev/btreex (le 8 septembre). Les quatre se rattachent à Graphalgo, une campagne documentée en février par ReversingLabs, avec les mêmes clés publiques et la même infrastructure. Aikido ne désigne aucun acteur. The Hacker News retient l’hypothèse d’acteurs nord-coréens, sur la seule base de ces recoupements avec la campagne d’origine

Le typosquatting, on connaît. Ce qui me gêne, c’est l’endroit où le code atterrit. Un provider Terraform est un binaire que le client télécharge puis exécute pendant plan et apply, sur un poste ou un runner qui détient déjà les identifiants cloud, l’accès au dépôt et les secrets de déploiement. Autant dire le meilleur siège de la maison.

Note du PandaRedacteur : on passe des années à durcir le pipeline applicatif, et on laisse un binaire téléchargé sur un registre public s’exécuter avec les clés du royaume. L’IaC, c’est de la supply chain avec un meilleur service de communication.

Une charge qui attend le bon invité

📬 Cette analyse est partie d'abord aux abonnés Substack
Mes analyses sortent en avant-première sur ma newsletter Substack, avant d'être publiées ici. Pour les recevoir dès leur sortie, abonnez-vous ; vous pouvez aussi relire cette analyse sur Substack et la commenter.

Note du PandaRedacteur : les attaquants ont compris que le meilleur domaine de commande, c’est celui que l’entreprise a déjà payé et whitelisté. A quand un malware altassian.net (ah oui ca existe deja…)

Ce que montrent les traces laissées

📬 Cette analyse est partie d'abord aux abonnés Substack
Mes analyses sortent en avant-première sur ma newsletter Substack, avant d'être publiées ici. Pour les recevoir dès leur sortie, abonnez-vous ; vous pouvez aussi relire cette analyse sur Substack et la commenter.

Analyse STRIDE

📬 Cette analyse est partie d'abord aux abonnés Substack
Mes analyses sortent en avant-première sur ma newsletter Substack, avant d'être publiées ici. Pour les recevoir dès leur sortie, abonnez-vous ; vous pouvez aussi relire cette analyse sur Substack et la commenter.

Impact potentiel

📬 Cette analyse est partie d'abord aux abonnés Substack
Mes analyses sortent en avant-première sur ma newsletter Substack, avant d'être publiées ici. Pour les recevoir dès leur sortie, abonnez-vous ; vous pouvez aussi relire cette analyse sur Substack et la commenter.

Ce que je ferais si j’etais vous….

📬 Cette analyse est partie d'abord aux abonnés Substack
Mes analyses sortent en avant-première sur ma newsletter Substack, avant d'être publiées ici. Pour les recevoir dès leur sortie, abonnez-vous ; vous pouvez aussi relire cette analyse sur Substack et la commenter.

Note du PandaRedacteur : « on scanne notre Terraform » est vrai, et ne sert à rien contre un provider qui n’est pas celui que vous croyez. Le scan lit ce que vous écrivez ; l’attaque se cache dans ce que vous téléchargez.

Indicateurs à chercher

📬 Cette analyse est partie d'abord aux abonnés Substack
Mes analyses sortent en avant-première sur ma newsletter Substack, avant d'être publiées ici. Pour les recevoir dès leur sortie, abonnez-vous ; vous pouvez aussi relire cette analyse sur Substack et la commenter.

La famille de défauts

📬 Cette analyse est partie d'abord aux abonnés Substack
Mes analyses sortent en avant-première sur ma newsletter Substack, avant d'être publiées ici. Pour les recevoir dès leur sortie, abonnez-vous ; vous pouvez aussi relire cette analyse sur Substack et la commenter.

📚 Quelques références pour aller plus loin


À retenir 📌

  • ✓ Quatre paquets, deux écosystèmes : deux providers Terraform (dont kreuzwenker/docker, qui imite un provider à 56 millions de téléchargements) et deux modules Go.
  • ✓ Un payload qui attend sa cible : chiffré en AES, il ne se déchiffre que si le hash de deux variables Terraform correspond à une valeur codée en dur.
  • ✓ Commande par Slack et blockchain : un workspace interrogé toutes les 10 secondes et un smart contract toutes les 3 secondes, deux canaux difficiles à bloquer par réputation.
  • ✓ Attribution prudente : Aikido ne nomme personne ; la piste nord-coréenne vient des recoupements avec Graphalgo, documenté par ReversingLabs en février.
  • ✓ Verrouiller et réduire : lock file relu, miroir de providers, identifiants éphémères et sortie réseau des runners filtrée. Une machine touchée se réinstalle et ses secrets tournent.

Graphalgo : le faux provider Terraform - Générée par IA