CVE-2026-5217 in Optimole Plugin
Résumé
par VulDB • 25/06/2026
Le plugin WordPress Optimole – Optimize Images | Convert WebP & AVIF | CDN & Lazy Load | Image Optimization présente une vulnérabilité de type Stored Cross-Site Scripting (XSS stocké) dans toutes les versions jusqu'à la 4.2.2 incluse. Cette faille est due à un assainissement insuffisant des entrées et à l'absence d'échappement approprié lors de la sortie, concernant le paramètre 's' fourni par l'utilisateur (descripteur srcset) dans le point de terminaison REST /wp-json/optimole/v1/optimizations non authentifié. Le point de terminaison valide les requêtes à l'aide d'une signature HMAC et d'un horodatage, mais ces valeurs sont exposées directement dans le HTML du frontend, ce qui les rend accessibles à tout visiteur. Le plugin utilise la fonction sanitize_text_field() sur la valeur du descripteur dans rest.php ; cette dernière supprime les balises HTML mais n'échappe pas les guillemets doubles. Le descripteur corrompu est ensuite stocké via les transients (s'appuyant sur la table d'options de WordPress) et récupéré ultérieurement, puis injecté tel quel dans l'attribut srcset du tag_replacer.php sans échappement approprié. Cela permet aux attaquants non authentifiés d'injecter des scripts web arbitraires dans les pages qui s'exécuteront dès qu'un utilisateur accédera à la page infectée.
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.