
Article de recherche signé et démonstration de récupération de clé en direct contre la branche NOSSL d'InfiniteWP Client, qui dérive sa clé de signature à partir de 31 bits de secret sur un préfixe public.
knell
Horodatage de référence (archive.org) : https://archive.org/details/knell-thirty-one-bits
InfiniteWP Client 1.13.10 — un plugin de gestion WordPress installé sur environ 200 000 sites — possède une seconde branche d'authentification, NOSSL, que le panneau d'enrôlement sélectionne en définissant un seul paramètre de requête, même sur des hôtes capables d'utiliser RSA. Une fois sélectionnée, la branche est permanente et sa clé de signature est générée comme le MD5 de la clé publique du panneau concaténée avec un unique résultat de rand() : pas plus de 2^31 de secret, sur un préfixe que tout le monde peut connaître. La signature ne couvre que l'action et l'ID de message ; les paramètres ne sont jamais signés, et les requêtes capturées sont rejouées avec des paramètres modifiés. Prouvé en conditions réelles contre notre propre instance : à partir d'une seule requête capturée et de la clé publique du panneau, la clé a été récupérée hors ligne en 291,9 secondes et une commande falsifiée modifiant l'état a été acceptée — falsification illimitée et permanente du canal de gestion du site. L'article ne prétend pas que les 200 000 installations sont toutes enrôlées en NOSSL ; la proportion d'installations enrôlées n'est pas mesurable de l'extérieur. Il s'agit de la première publication connue de cette construction.
gpg --import knell-public.asc
gpg --verify paper-infinitewp-FINAL-2026-11-04.md.asc
Attendu : Good signature from "knell", clé 133883AB9F6EDE5B9BA6B82E27BEDAF0CE152F25
Empreinte : 1338 83AB 9F6E DE5B 9BA6 B82E 27BE DAF0 CE15 2F25