Page Builder: 1 million de sites vulnérables à cause du plugin

Page Builder de SiteOrigin est un plugin WordPress qui a été installé un million de fois et qui est utilisé pour créer des sites Web via une fonction glisser-déposer. L’extension contient deux failles qui peuvent permettre la prise de contrôle complète du site.

Selon des chercheurs de WordPress, les deux failles de sécurité de Page Builder peuvent conduire à des attaques CSRF et XSS. Ces attaques “permettent aux pirates de falsifier des requêtes au nom d’un administrateur de site et d’exécuter du code malveillant dans le navigateur de l’administrateur”, selon des chercheurs de Wordfence.

Ils ont attribué aux deux failles de Page Builder une note de gravité de 8,8 sur 10, mais aucun CVE n’a encore été attribué.

A l’intérieur des failles de Page Builder

Si elles sont exploitées, les deux failles de Page Builder peuvent être utilisés pour rediriger l’administrateur d’un site, créer un nouveau compte d’utilisateur administratif ou injecter une porte dérobée sur un site.

page builder

La première faille de Page Builder réside dans l’éditeur intégré au plugin, cette fonctionnalité permet aux utilisateurs de mettre à jour le contenu et de glisser/déposer des widgets, tout en obtenant une vue en temps réel des modifications sur le site Web donné.

“Afin d’afficher les modifications en temps réel via l’éditeur, Page Builder enregistre la fonction is_live_editor() pour vérifier si un utilisateur est dans l’éditeur”, ont expliqué les chercheurs de Wordfence. “Si l’utilisateur est dans l’éditeur, le paramètre siteorigin_panels_live_editor sera défini sur “true” et enregistrera qu’un utilisateur accède à l’éditeur. Le plugin tentera alors d’inclure le fichier de l’éditeur qui restitue tout le contenu. »

Ce fichier de rendu «live-editor-preview.php» met ainsi à jour l’aperçu de la page avec les modifications apportées, en temps réel.

Le problème est qu’il n’y a pas de protection pour vérifier qu’une tentative de rendu de contenu dans l’éditeur provient d’une source légitime, selon Wordfence.

“Certains des widgets disponibles, tels que le widget “HTML personnalisé”, pourraient être utilisés pour injecter du JavaScript malveillant dans une page en direct”, ont écrit les chercheurs. “Si un administrateur de site était amené à accéder à une page d’aperçu spéciale, tout JavaScript malveillant inclus dans le widget HTML personnalisé pourrait être exécuté dans le navigateur.”

Les données associées à un aperçu n’ont jamais été stockées dans la base de données, ce qui entraîne une faille XSS réfléchie plutôt qu’une faille XSS stockée, en plus de la faille CSRF.

La deuxième faille de Page Builder est similaire, cette fois elle se trouve dans la fonction “action_builder_content” du plugin, qui est liée à la fonction AJAX “wp_ajax_so_panels_builder_content”.

“Le but de cette fonction était de transmettre le contenu soumis en tant que panels_data de l’éditeur afin de mettre à jour ou d’afficher la publication en utilisant le contenu créé à partir de l’éditeur”, ont déclaré les chercheurs. «Cette fonction avait une vérification des autorisations pour vérifier qu’un utilisateur avait la capacité de modifier les articles pour le post_id donné. Cependant, il n’y avait pas de protection pour vérifier la source d’une demande, provoquant la faille CSRF. »

wordpress

En testant les exploits, les chercheurs ont découvert que le widget “Texte” pouvait être utilisé pour injecter du JavaScript malveillant en raison de la possibilité de modifier le contenu en mode “texte” plutôt qu’en mode “visuel”.

“Cela a permis d’envoyer du JavaScript potentiellement malveillant sans filtrage”, selon Wordfence. “En raison de l’écho des données des widgets, tout code malveillant faisant partie des données des widgets de texte pouvait alors être exécuté dans le cadre d’une attaque combinée CSRF vers XSS dans le navigateur d’une victime.”

Correctif de Page Builder

Les failles affectent les versions 2.10.15 et inférieures du plugin Page Builder de SiteOrigin. Pour éviter une prise de contrôle complète de leur site, les administrateurs doivent mettre à jour leurs plugins vers la version 2.10.16.

Il convient également de noter qu’un pirate doit inciter un administrateur de site à exécuter une action, comme cliquer sur un lien ou une pièce jointe, pour que l’attaque réussisse.

Les plugins WordPress continuent d’être en proie à des vulnérabilités. Le mois dernier, il a été révélé que des légions de visiteurs de sites Web pouvaient être infectées par des logiciels malveillants à cause d’une faille CSRF dans le plugin Real Time Search and Replace.

En Avril également, une paire de vulnérabilités de sécurité dans le plugin d’optimisation pour les moteurs de recherche (SEO) WordPress, connue sous le nom de Rank Math, a été découverte. Selon les chercheurs, la faille permettait aux cybercriminels distants d’élever leurs privilèges et d’installer des redirections malveillantes sur un site cible. RankMath est un plugin WordPress avec plus de 200 000 installations.

En Mars, une vulnérabilité critique dans un plugin WordPress appelé «ThemeREX Addons» a été trouvée et ouvrait la porte à l’exécution de code à distance dans 44 000 sites.

Toujours en Mars, deux vulnérabilités – dont une faille de haute gravité – ont été corrigées dans un plugin WordPress populaire appelé Popup Builder. La faille la plus grave pourrait permettre à un attaquant non authentifié d’injecter du JavaScript malveillant dans une fenêtre contextuelle – rendant potentiellement plus de 100 000 sites Web vulnérables à la prise de contrôle.

Et en Février, le plugin WordPress Duplicator, qui compte plus d’un million d’installations actives, a été découvert comme présentant une vulnérabilité de téléchargement de fichiers arbitraires non authentifié qui était exploitée par des pirates.

Encore au mois de Février, une faille critique dans un plugin WordPress qui aide à rendre les sites Web conformes au Règlement général sur la protection des données (RGPD) a été révélée. La faille pourrait permettre aux pirates de modifier le contenu ou d’injecter du code JavaScript malveillant dans les sites Web des victimes. Elle concernait 700 000 sites.