Un nouvel outil de fuzzing découvre des failles de sécurité dans les plugins WordPress
Un nouvel outil de fuzzing découvre des failles de sécurité dans les plugins WordPress

Visualisation de l’article « THEMIS : Fuzzing en boîte grise contextuelle pour les plugins WordPress » Crédit : Helmholtz Association of German Research Centres
WordPress est l’un des systèmes de gestion de contenu les plus utilisés pour les sites web. Les extensions sont très populaires auprès des développeurs et des utilisateurs car elles permettent de personnaliser les sites web avec des fonctionnalités adaptées à des besoins spécifiques.
« De nombreux plugins permettent, par exemple, d’intégrer des calendriers ou d’autres fonctionnalités à un site web », explique Matteo Leonelli, chercheur chez CISPA. « Le problème, c’est que du code est ajouté sans que l’on sache souvent comment il a été testé ni s’il est sécurisé. En effet, beaucoup de développeurs privilégient la fonctionnalité à la sécurité. »
Cela fait des plugins une surface d’attaque importante pour les failles de sécurité et les erreurs logiques au sein de l’écosystème WordPress. Les outils de fuzzing web existants peinant à atteindre les chemins d’exécution complexes et contextuels des systèmes de gestion de contenu modernes tels que WordPress, le chercheur du CISPA et ses collègues ont développé un nouvel outil de fuzzing.
Un outil de fuzzing (ou fuzzer) est un logiciel qui injecte automatiquement des données aléatoires, malformées ou inattendues dans un programme pour détecter des erreurs, des plantages ou des failles de sécurit
Fuzzing contextuel avec THEMIS
« Nous avons décidé de ne pas nous concentrer sur le cœur de WordPress, mais plutôt sur le code des extensions individuelles », explique Leonelli. « Cela signifie que nous essayons d’examiner spécifiquement la logique des extensions tout en évitant autant que possible d’être perturbés par le reste. »
Pour ce faire, le chercheur a étendu le framework de fuzzing ATROPOS développé par ses collègues avec plusieurs composants spécifiquement adaptés à WordPress : une instrumentation spécifique au domaine du noyau WordPress, un outil de fuzzing adaptatif qui identifie et cible automatiquement différents points d’entrée de plugins, et un oracle de bogues spécialement développé pour détecter les vulnérabilités typiques de WordPress.
« Nous utilisons un composant Oracle qui surveille le trafic entre les deux domaines logiques : le noyau WordPress et l’interface des plugins », explique Leonelli. L’objectif est de guider le fuzzer précisément vers les parties du code critiques pour la sécurité et d’y déceler les vulnérabilités.
THEMIS se concentre sur les vulnérabilités côté serveur. Certaines failles de sécurité côté client, telles que les attaques XSS, ne peuvent actuellement pas être détectées par le système.
Mise à l’épreuve de l’outil en pratique
Pour cette évaluation, Leonelli a examiné 68 extensions WordPress en production. THEMIS a reproduit 27 failles de sécurité connues et en a identifié 10 autres jusqu’alors inconnues, qui ont été communiquées de manière responsable aux développeurs concernés. Trois d’entre elles ont reçu un identifiant CVE.
L’article intitulé « THEMIS: Context-Aware Grey-box Fuzzing for WordPress Plugins » ou « THEMIS : Fuzzing en boîte grise sensible au contexte pour les plugins WordPress » a été présenté à Euro&SP à Lisbonne.
En comparaison directe avec ATROPOS, THEMIS a détecté les vulnérabilités plus rapidement, a couvert une plus grande partie du code du plugin et a identifié des bogues plus pertinents.
Il existait cependant certaines limitations concernant les faux positifs. « Il faut trouver un compromis », explique Leonelli. « On peut détecter moins de bogues et être plus sûr de leur authenticité. Ou bien, on peut accepter une certitude légèrement moindre et potentiellement détecter des cas limites qui atteignent un certain seuil. » Outre les faux positifs, la scalabilité reste également un axe d’amélioration.
Un autre défi majeur du fuzzing web réside dans la vitesse d’exécution. « Chaque fois qu’une requête est envoyée, elle doit d’abord être générée, transmise au serveur, exécutée sur celui-ci, puis renvoyée », explique le chercheur. « C’est pourquoi le fuzzing web est fondamentalement plus lent que le fuzzing traditionnel. »
Perspectives
Dans son étude, Leonelli démontre que les outils de fuzzing web généralistes existants atteignent leurs limites face à des écosystèmes de plugins complexes. Il montre en revanche qu’une analyse contextuelle adaptée à l’architecture de WordPress permet d’obtenir de meilleurs résultats. Avec THEMIS, il propose une approche pour les tests de sécurité automatisés au sein de vastes écosystèmes de plugins.
THEMIS a été publié sur GitHub , permettant aux développeurs de l’installer et de suivre les instructions du dépôt. « Ils peuvent intégrer leur plugin à l’infrastructure et vérifier si des failles de sécurité y sont présentes », explique Leonelli.
À l’avenir, il prévoit de se concentrer davantage sur les projets assurant l’interface entre le client et le serveur. Il envisage également la possibilité d’adapter THEMIS à d’autres systèmes de gestion de contenu, sous réserve du respect des conditions requises.
https://techxplore.com/news/2026-09-fuzzing-tool-vulnerabilities-wordpress-plugins.html


