Le 30 octobre, à 11h43 UTC, une équipe de sécurité cloud a envoyé un avertissement à Northflank. Une minute plus tard, les ingénieurs de Northflank l'avaient ouvert. À 13h05 UTC, deux correctifs supplémentaires étaient déjà déployés.
Le message public adressé ce jour-là aux clients tenait en onze mots, et c'est l'une des phrases les plus honnêtes de la réponse à incident moderne : « Considérez que toutes les variables d'environnement ont été déchiffrées. Désactivez et faites tourner toutes les clés. »
Northflank est une plateforme d'hébergement pour développeurs. Vous y poussez des conteneurs, des bases de données et des applications d'IA, et elle les fait tourner. Ce qui veut dire qu'elle conservait, par conception, une copie de presque tout ce qui vous empêcherait de dormir : mots de passe de bases de données, identifiants cloud, clés de prestataires de paiement, clés privées et les clés d'API des fournisseurs d'IA qui alimentent chaque agent, chatbot et copilote livré cette année.
Les clients ont signalé un usage non autorisé de ces clés d'IA presque immédiatement.
Ce n'est pas l'histoire d'une mauvaise semaine pour une entreprise. C'est l'histoire d'une catégorie entière qui apprend, à grande vitesse, que son actif le plus précieux est une chaîne de caractères dans une variable d'environnement.
Ce que Northflank a réellement dit
La chronologie est inhabituellement détaillée, et mérite une lecture attentive.
- 30 oct., 11h43 UTC — Wiz alerte Northflank d'une activité suspecte.
- 11h44 UTC — les ingénieurs l'examinent.
- 12h50 et 13h05 UTC — correctifs supplémentaires sur les politiques réseau.
- Peu après — les clients sont invités à considérer les variables comme déchiffrées et à tout faire tourner.
Dans ses mises à jour, Northflank indique que le vecteur d'attaque a été contenu en moins d'une heure après la première alerte, que les charges de travail en cours n'ont pas été affectées, qu'aucune donnée de charge de travail n'a été consultée et que l'activité visait les secrets détenus dans le plan de contrôle. Les clients sur des plans de contrôle dédiés ou déployés chez eux n'étaient pas concernés. L'entreprise a aussi corrigé CVE-2026-98432 sur toute sa flotte, fait tourner ses propres clés et révoqué jetons d'accès, sessions, intégrations de gestion de version et rôles IAM inter-comptes lorsqu'elle pouvait le faire pour ses clients.
Ce qu'elle n'a pas dit : comment les attaquants sont entrés, combien de clients sont touchés, ni si autre chose que des clés d'IA a été exploité. Une analyse de cause racine est promise.
C'est exactement dans cet écart que vit le reste de l'histoire.
Neuf plateformes, un même motif
Wiz a rassemblé les divulgations du mois sous un titre volontairement sinistre : « Black October for AI Developer Platforms ». Au moins neuf plateformes ont signalé un incident en octobre : Fireworks AI, Andromeda, Zeabur, Lightning AI, OpenCode, Railway, Warp, CommandCode et Northflank. Quelques jours plus tard, la liste s'est allongée avec Brev (NVIDIA), Trigger.dev et Chainstack.
Les causes racines diffèrent : Railway évoque une élévation de privilèges dans son infrastructure de build, Warp une dépendance à un fournisseur tiers, OpenCode un système hérité. Fireworks, Zeabur et Lightning attribuent leur incident à l'accès aux identifiants.
Mais un détail revient dans presque tous les rapports : les attaquants cherchaient des variables d'environnement stockées, et en particulier celles qui donnent accès aux modèles d'IA.
Le rapport de Zeabur était si détaillé que l'entreprise a annoncé sa fermeture. Railway a publié un rapport préliminaire. Pour tous les autres, les détails techniques restent en attente, et une bonne partie des commentaires traite chaque incident comme une mauvaise journée isolée.
Ils ne sont pas isolés. Ils forment un marché.
L'économie d'une clé d'IA volée
Voici la partie que la plupart des rapports sautent, et c'est celle qui devrait vous inquiéter.
Un mot de passe de base de données volé doit être utilisé prudemment, à l'intérieur, là où le bruit est faible. Une clé d'API d'IA volée peut être dépensée depuis n'importe où, en volume illimité, et le compteur tourne à votre nom.
Wiz a suivi deux clés d'entreprise utilisées depuis l'infrastructure compromise de fournisseurs. Toutes deux ont été testées pour la première fois dans les 30 minutes suivant l'accès aux identifiants signalé : un seul appel de modèle depuis une IP résidentielle, balayant les clés de plusieurs organisations en une minute.
Puis le robinet s'est ouvert.
- Cas A : environ 800 000 appels Amazon Bedrock en trente heures, à 90% réussis, d'abord depuis une adresse résidentielle puis de nuit depuis un hébergeur.
- Cas B : environ 1,7 million d'appels Bedrock en treize heures depuis une seule adresse d'hébergement, dont plus d'un million réussis.
Au prix catalogue, ces deux clés ont probablement généré plus de 100 000 dollars d'usage. Le profil des jetons ressemblait à du trafic d'agents de code revendu : petites entrées non cachées, quelques centaines de jetons de sortie, plus une longue traîne de prompts énormes compatible avec de nombreux utilisateurs finaux derrière un revendeur.
D'où la question : pourquoi cela continue-t-il ? Wiz a identifié une infrastructure liée à des opérations de revente de LLM à visage découvert, qui annoncent un accès à prix cassé aux modèles de pointe avec paiement en USDT. Une clé volée le lundi peut devenir une gamme de produits le vendredi. Il y a de la demande, un prix, un canal. Le vol est monétisable, donc le vol continue.
Pourquoi c'est pire pour les bâtisseurs d'IA que cela n'en a l'air
Trois choses distinguent cette catégorie du risque d'hébergement ordinaire.
1. Le rayon d'impact n'est pas le serveur. C'est la facture, les données et la réputation. Une clé volée peut brûler six chiffres en un week-end, exfiltrer tout ce que vos prompts peuvent atteindre et produire en votre nom des réponses dont votre marque devra répondre.
2. Les clés sont des identités synthétiques, et la plupart des inventaires ne les comptent pas. Cela fait vingt ans que nous construisons des processus pour revoir les comptes humains. Une clé d'API qui peut dépenser de l'argent et atteindre des données de production vit souvent dans un tableau de bord que personne n'audite, créée par un développeur qui a changé d'équipe depuis.
3. La rotation n'est pas un clic, c'est un graphe. « Faites tourner tous les secrets » est une instruction d'une ligne qui se ramifie en secrets d'intégration, de projet, globaux, charges de travail, webhooks, runners CI, connecteurs tiers et le fichier .env local de chaque collègue. La plupart des équipes découvrent la vraie forme de leur graphe d'identifiants pendant un incident, au pire moment.
Que faire cette semaine
N'attendez pas l'analyse de cause racine d'un fournisseur dont vous n'aviez jamais entendu parler. Faites ceci maintenant.
- Inventoriez chaque clé de fournisseur d'IA que vous possédez. OpenAI, Anthropic, Bedrock, Google, Cohere, les plus petits aussi. Notez qui l'a créée, à quoi elle donne accès, qui la paie et quand elle a été tournée pour la dernière fois.
- Donnez un plafond à chaque clé. Des clés séparées par environnement, par application, par équipe. Fixez des limites de dépense strictes chez le fournisseur et des alertes à 50% du budget. Une facture aberrante est un signal de détection, et aujourd'hui la plupart des équipes l'ont désactivé.
- Rendez la révocation ennuyeuse. Un runbook de rotation qui prend une journée est un runbook qui ne sera jamais répété. Automatisez l'échange et testez-le un mardi après-midi, pas pendant un incident.
- Surveillez la forme de l'usage, pas seulement le volume. Des appels de modèles soudains dans d'autres régions, des catalogues de modèles sondés pour la disponibilité ou une rafale de prompts non cachés depuis un ASN inconnu ressemblent beaucoup à quelqu'un d'autre qui utilise votre compte.
- Traitez le plan de contrôle de votre hébergeur comme une frontière de confiance. Ce qu'il détient, il peut le perdre. Demandez-lui s'il stocke des secrets en clair, s'il prend en charge des gestionnaires de secrets externes et s'il peut révoquer vos intégrations pour vous.
La conclusion pour nos clients
Chez aratech, nous construisons sur de l'infrastructure gérée parce qu'elle permet à de petites équipes de bouger comme de grandes. Ce compromis reste valable. Mais il n'est pas gratuit, et octobre vient de nous envoyer la facture.
La leçon n'est pas « arrêtez d'utiliser des plateformes ». C'est que dans une stack native de l'IA, vos clés d'API sont le périmètre. Ce ne sont pas de la configuration. C'est ce qu'un attaquant veut vraiment, elles sont faciles à voler, et il existe déjà un marché qui en affiche les prix.
Les équipes qui s'en sortiront bien seront celles capables de répondre à une question sans ouvrir un tableur : si notre hébergeur appelait à midi pour dire « considérez que tout a été déchiffré », que devrions-nous exactement faire tourner, et combien de temps cela prendrait-il ?
Si la réponse est « des heures, et nous l'avons répété », tout va bien. Si c'est « il faudrait demander à trois personnes », aujourd'hui est un bon jour pour corriger ça.