Un plugin WordPress populaire pour le respect de la confidentialité avec plus de 800 000 installations a récemment corrigé une vulnérabilité XSS stockée qui pourrait permettre à un attaquant de télécharger des scripts malveillants pour lancer des attaques contre les visiteurs du site.
Conformité | Plugin WordPress de consentement aux cookies RGPD/CCPA
Le plugin Complianz pour WordPress est un outil puissant qui aide les propriétaires de sites Web à se conformer aux réglementations en matière de confidentialité telles que le Règlement général sur la protection des données (RGPD) et le California Consumer Privacy Act (CCPA).
Le plugin gère plusieurs facettes de la confidentialité des utilisateurs, notamment le blocage des cookies tiers, la gestion du consentement aux cookies (y compris par sous-région) et la gestion de plusieurs aspects liés aux bannières de cookies.
Sa polyvalence et son utilité peuvent expliquer la popularité de l'outil qui compte actuellement plus de 800 000 installations.
Vulnérabilité XSS stockée dans le plugin Complianz
Il a été découvert que le plugin Complianz WordPress présentait une vulnérabilité XSS stockée, un type de vulnérabilité qui permet à un utilisateur de télécharger un script malveillant directement sur le serveur du site Web. Contrairement à un XSS réfléchi qui nécessite qu'un utilisateur d'un site Web clique sur un lien, un XSS stocké implique un script malveillant stocké et servi depuis le serveur du site Web cible.
La vulnérabilité réside dans les paramètres d'administration de Complianz et se présente sous la forme d'un manque de deux fonctions de sécurité.
1. Désinfection des entrées
Le plugin manquait de désinfection des entrées et d’échappement des sorties suffisants. La vérification des entrées est un processus standard permettant de vérifier ce qui est saisi dans un site Web, comme dans un champ de formulaire, pour s'assurer que ce qui est saisi correspond à ce qui est attendu, comme une saisie de texte par opposition à un téléchargement de script.
Le guide officiel du développeur WordPress décrit la désinfection des données comme suit :
« La désinfection des données d'entrée est le processus de sécurisation/nettoyage/filtrage des données d'entrée. La validation est préférable à la désinfection car la validation est plus spécifique. Mais lorsqu’il n’est pas possible d’être « plus précis », la désinfection est la meilleure solution. »
2. Sortie d'échappement
Le plugin manquait de Output Escaping, un processus de sécurité qui supprime les données indésirables avant qu'elles ne soient rendues à un utilisateur.
Quelle est la gravité de la vulnérabilité ?
La vulnérabilité nécessite que l'attaquant obtienne des niveaux d'autorisation d'administrateur et plus afin d'exécuter l'attaque. C’est peut-être la raison pour laquelle cette vulnérabilité est notée 4,4 sur 10, dix représentant le niveau de vulnérabilité le plus élevé.
La vulnérabilité n’affecte également que certains types d’installations.
Selon Wordfence :
« Cela permet aux attaquants authentifiés, disposant d'autorisations de niveau administrateur et supérieures, d'injecter des scripts Web arbitraires dans des pages qui s'exécuteront chaque fois qu'un utilisateur accède à une page injectée.
Cela n'affecte que les installations multisites et les installations pour lesquelles unfiltered_html a été désactivé.
Mettre à jour vers la dernière version
La vulnérabilité affecte les versions de Complianz égales ou inférieures à la version 6.5.5. Les utilisateurs sont encouragés à mettre à jour vers la version 6.5.6 ou supérieure.
Lisez l'avis de Wordfence sur la vulnérabilité :
Conformité | Consentement aux cookies RGPD/CCPA <= 6.5.5 – Scripts intersites stockés authentifiés (administrateur +) via les paramètres