Teknik - Génération des mots de passe par LLM - Parce que... c'est l'épisode 0x319!
Contenu de l'épisode
- 6 au 9 août 2026 - Las Vegas, USA - DEFCON 34
- 19 septembre 2026 - Montréal Canada - Bsides Montréal 2026
- 22 septembre 2026 - Belgique - BE-Cyber
- 24 au 25 septembre 2026 - Belgique - BruCON
- 1er au 3 octobre 2026 - Krakow, Pologne - AligatorCon
- 13 et 14 novembre 2026 - Worldwide - DEATHCon
- 16 au 19 novembre - Rennes, France - European Cyber Week 2026
- 1 au 3 décembre 2026 - Ottawa, Canada - Forum inCYBER Canada
- I.A. Café - Enquête au cœur de la recherche sur l’intelligence artificielle
Contexte de la recherche
Dans cet épisode de Polysécure, l’animateur reçoit Gaëtan Ferry, chercheur en sécurité chez GitGuardian, pour discuter d’une recherche originale sur la génération de mots de passe par les grands modèles de langage (LLM). Le point de départ est un article publié début 2026 par Irregular, une entreprise israélienne, qui avait démontré que les mots de passe générés par les LLM présentaient des biais statistiques importants, variables selon les modèles. Cette découverte a poussé l’équipe de GitGuardian à se demander si ces mots de passe biaisés se retrouvaient réellement « dans la nature », c’est-à-dire utilisés par de vraies personnes sur de vrais systèmes.
GitGuardian dispose d’un avantage unique pour répondre à cette question : son activité principale consiste à détecter des secrets (mots de passe, clés API, etc.) exposés publiquement, notamment sur GitHub. L’entreprise possède donc une base de données massive de secrets, dont une catégorie dite « générique » — des chaînes de caractères qui ressemblent à des mots de passe mais ne suivent aucun format standardisé identifiable.
Méthodologie : les chaînes de Markov
Pour détecter automatiquement si un mot de passe avait été généré par un LLM, l’équipe a eu l’idée de reconstruire une structure statistique classique : les chaînes de Markov, l’ancêtre technique des LLM, utilisées par exemple dans la prédiction de texte sur les claviers de téléphone. Ces chaînes excellent à capturer des biais statistiques dans une séquence de caractères.
La méthode a consisté à interroger 40 modèles de LLM différents, en leur demandant de générer des centaines de mots de passe chacun. À partir de ces échantillons, plusieurs types de chaînes de Markov ont été construits, prenant en compte (ou non) la position des caractères dans le mot de passe. Ces structures permettent ensuite, face à un mot de passe arbitraire, d’estimer la probabilité qu’il ait été généré par un LLM, un peu comme une mesure d’entropie relative à une base de référence précalculée.
Des biais spectaculaires
Les résultats ont confirmé, voire amplifié, les observations d’Irregular. L’exemple le plus frappant concerne un modèle (Opus, à l’époque de l’étude) qui ne générait des mots de passe uniques que dans 35 % des cas — autrement dit, il répétait le même mot de passe dans 65 % des requêtes. Un modèle de Mistral faisait encore pire : il ne générait qu’un seul et unique mot de passe, toujours identique, laissant penser qu’il se contentait de restituer une valeur mémorisée durant son entraînement plutôt que d’en générer une nouvelle.
Gaëtan Ferry explique ce phénomène par la tokenisation : certains modèles (comme GPT, étudié par Irregular) découpent le mot de passe en plusieurs tokens indépendants, ce qui introduit une certaine variabilité, alors que d’autres semblent traiter le mot de passe comme un token unique, menant à une quasi-absence de diversité. Un biais récurrent, observé sur presque tous les modèles, est l’alternance rigide entre catégories de caractères (minuscule, majuscule, chiffre, symbole) selon un schéma répétitif — un pattern idéal à capturer dans une chaîne de Markov. Sur un modèle donné, par exemple, un symbole « # » est suivi d’un « 8 » dans 90 % des cas.
Ce comportement s’explique par la nature même des LLM : entraînés à repro