Le tableau de bord était une porte, et l'ANSSI l'avait laissée entrouverte
Metabase corrige une injection SQL le 6 août. Le CERT-FR alerte le 10 septembre. Entre les deux, des ministères, et le laboratoire d'innovation de l'agence elle-même.
La réunion traîne. Quelqu'un partage son écran. Un graphique en barres, propre, avec un titre en gras et une couleur par ministère. Tu hoches la tête. C'est joli. C'est même utile.
Puis tu regardes la barre d'adresse. Le tableau de bord est sur Internet. Pas derrière un badge. Pas derrière un deuxième facteur. Juste une URL, du genre de celles qu'on envoie sur un chat un vendredi soir parce que « de toute façon, c'est que des stats ».
Ce graphique a une porte. Et pendant tout l'été, un paquet de monde l'a poussée.
La porte s'appelle reset_password
Le 6 août 2026, Metabase publie un correctif. La faille, CVE-2026-72898, est une injection SQL sans compte. L'éditeur le dit sans détour : un attaquant distant peut injecter du SQL dans la base de l'application, et de là obtenir les droits d'administrateur de l'instance. Ensuite, la configuration, les identifiants des bases branchées dessus, et les données que ces bases acceptent de montrer.
Le chemin cité partout est le même : /api/session/reset_password. La page « j'ai oublié mon mot de passe », celle qu'on laisse publique parce qu'un formulaire de réinitialisation, par définition, s'adresse à quelqu'un qui n'est pas connecté.
Le CERT-FR, dans son alerte du 10 septembre, décrit même la signature dans les journaux. Deux lignes qui se suivent : un POST sur ce chemin qui répond 400, puis un GET /api/user/current qui répond 200. Traduction : la réinitialisation a râlé, et pourtant quelqu'un est dedans.
Cinq semaines, et la caserne dans la liste
Le correctif existe donc depuis le 6 août. L'alerte française date du 10 septembre. Le point de situation de l'opération REACTIV, publié le 30 septembre par l'ANSSI, dit que l'exploitation massive est observée depuis début août, et que neuf instances dans des ministères ont été compromises par cette voie.
REACTIV, c'est le dispositif demandé le 1er septembre par le Premier ministre : l'agence bascule ses moyens sur les fuites de données des services de l'État. Depuis le 1er août, elle dit avoir eu connaissance de 99 violations. Sur ce total, 67 sont confirmées, et parmi ces 67, 32 sont encore en cours de traitement de son côté. Le document prévient lui-même que ce n'est pas un bilan fermé : les enquêtes bougent, les chiffres aussi.
Le détail qui reste coincé dans la gorge : le laboratoire d'innovation de l'ANSSI est dans la liste. Même faille Metabase. 118 comptes, dont une trentaine de comptes externes. Statistiques d'usage, identifiants, courriels, mots de passe hachés. L'agence a mis à jour, renouvelé les mots de passe, coupé les comptes inactifs depuis plus de trois mois.
Le pompier n'a pas théorisé l'incendie. Il a noté, dans son propre rapport, que la caserne avait de la fumée.
Ce que le graphique ouvrait vraiment
Metabase ne stocke pas « le graphique ». Il stocke les connexions vers les bases qui nourrissent le graphique. Devenir admin de l'instance, c'est hériter de ces connexions. Qualicharge, la gestion des bornes de recharge, est dans le même chapitre : 102 000 sessions de recharge et une centaine de comptes techniques, identifiants, courriels, mots de passe chiffrés. France VAE, le 8 août : accès privilégié, et l'intégralité des données utilisateurs exfiltrée, dit le point de situation.
Ailleurs, le document reste plus prudent, et je le suis. Zéro Logement Vacant : le point d'entrée serait une instance Metabase, la violation concernerait 48 millions de propriétaires. Docurba : les premiers éléments permettent d'envisager la même famille de faille. Tant que l'ANSSI conjugue au conditionnel, moi aussi.
Et Metabase n'est pas toute l'histoire. Le même PDF aligne d'autres serrures, moins spectaculaires et tout aussi ouvertes : des infostealers sur des postes personnels, des portails sans deuxième facteur, ou avec un deuxième facteur qui est un e-mail. Un mot de passe qui a fui suffit, et la porte n'a même pas besoin d'être jolie.
La seule vérification qui tient en une ligne
Si tu héberges Metabase toi-même, la question n'est pas « est-ce que mon graphique est sensible ». C'est « est-ce que /api/session/reset_password répond depuis l'extérieur ».
Le contournement officiel, en attendant la mise à jour, c'est de bloquer ce chemin. Après coup, l'éditeur demande de vider les sessions (la table core_session), de passer les clés d'API au peigne, de regarder les comptes admin, et de changer les identifiants des bases connectées. Pas seulement le mot de passe du tableau de bord. Les bases. Parce que c'est elles que la porte ouvrait.
Le graphique, lui, peut rester joli. À condition que l'URL ne soit plus une invitation.