Le plugin Newsletter vulnérable à la prise de contrôle

Newsletter, un plugin WordPress avec plus de 300 000 installations, présente une paire de vulnérabilités qui pourraient conduire à l’exécution de code et même à la prise de contrôle du site.

Le plugin Newsletter offre aux administrateurs du site un éditeur visuel qui peut être utilisé pour créer des newsletters et des campagnes par e-mail à partir de WordPress. Selon Wordfence, les problèmes sont une vulnérabilité de script intersite (XSS) reflétée et une vulnérabilité d’injection d’objets PHP, qui peuvent toutes deux être corrigées en mettant à jour vers la dernière version de Newsletter, v.6.8.2.

Les failles du plugin Newsletter

La première faille de sécurité est une vulnérabilité XSS reflétée (CVE en attente), qui est de gravité moyenne et a une note de 6,5 sur 10 sur l’échelle CvSS. Une exploitation réussie pourrait permettre à des attaquants connectés d’injecter du code malveillant dans une fenêtre Web.

«Malgré le fait que [ce type de faille] oblige un attaquant à persuader une victime d’effectuer une action spécifique (comme cliquer sur un lien spécialement conçu), elles peuvent toujours être utilisés pour injecter des portes dérobées ou ajouter des utilisateurs administratifs malveillants», selon Wordfence. “Si un attaquant amenait une victime à envoyer une requête contenant un code JavaScript malveillant à l’aide de l’une de ces méthodes, le code JavaScript malveillant serait décodé et exécuté dans le navigateur de la victime.”

wordpress

Selon Wordfence, le problème spécifique survient parce que les versions vulnérables de Newsletter utilisent une fonction AJAX, tnpc_render_callback, pour afficher les blocs modifiés en fonction d’un ensemble d’options envoyées dans la requête AJAX. Cependant, ces options ne sont pas filtrées, mais sont au contraire transmises directement à une deuxième fonction, restore_options_from_request, qui affiche les blocs à l’aide de la fonction render_block, selon l’analyse.

«En tant que tel, il était possible pour un attaquant de faire afficher du code JavaScript malveillant de plusieurs manières», expliquent les chercheurs dans l’article.

Par exemple, une méthode d’exploitation serait d’envoyer une requête POST à ​​wp-admin/admin-ajax.php avec le paramètre action défini sur tnpc_render, le paramètre b défini sur html et le paramètre options défini sur JavaScript arbitraire, selon Wordfence . Ou, le paramètre options peut être défini sur un tableau vide options[]=, et le paramètre encoded_options défini sur une chaîne JSON encodée en base64 contenant du JavaScript arbitraire. Dans les deux cas, le code JavaScript serait exécuté dans le navigateur d’un utilisateur connecté.

newsletter

La deuxième faille (le CVE est également en attente pour celui-ci) est une faille d’injection d’objets PHP de haute gravité, ayant une note de 7,5 sur l’échelle CvSS. La vulnérabilité pourrait être utilisée pour injecter un objet PHP qui à son tour pourrait être traité par le code d’un autre plugin ou thème, et utilisé pour exécuter du code arbitraire, télécharger des fichiers ou «n’importe quel nombre d’autres tactiques pouvant conduire à la prise de contrôle du site», a averti la société.

«Bien que l’éditeur de newsletter n’ait pas permis aux utilisateurs de niveau inférieur d’enregistrer les modifications apportées à une newsletter donnée, la même fonction AJAX tnpc_render_callback était toujours accessible à tous les utilisateurs connectés, y compris les abonnés», selon Wordfence. «Cela a introduit une vulnérabilité d’injection d’objets PHP via la fonction restore_options_from_request.»

En termes de méthodes d’exploitation, les chercheurs de Wordfence ont expliqué que la fonction __destruct est utilisée par de nombreux sites pour supprimer automatiquement des fichiers et «nettoyer» une fois qu’un processus prédéfini et légitime est terminé. Un exemple serait un script sur un site de commerce électronique qui calcule les prix des produits, stocke un log de cette action, puis supprime le log une fois l’opération terminée.

Si ce code s’exécutait sur un site contenant également la vulnérabilité d’injection d’objets PHP, un attaquant pourrait supprimer le fichier wp-config.php contenant les paramètres de configuration de base du site WordPress en envoyant une charge utile spécialement conçue.

«La suppression du fichier wp-config.php réinitialiserait le site et permettrait à un attaquant de prendre le relais en pointant la nouvelle configuration du site vers une base de données distante sous son contrôle», a expliqué Wordfence.

Les chercheurs ont ajouté que pour réussir, un attaquant aurait besoin de savoir quels plugins sont installés sur un site donné – ce qui peut être découvert avec des outils d’analyse, mais ce qui signifie que la faille serait peu susceptible d’être exploitée massivement par un script automatique.

Encore une faille de plugin WordPress

Les plugins WordPress ne sont pas étrangers aux vulnérabilités, dont certaines peuvent être critiques. Par exemple, récemment, une faille avait été découverte dans le plugin WordPress appelé wpDiscuz, qui est installé sur plus de 70 000 sites Web. La faille donne aux attaquants non authentifiés la possibilité de télécharger des fichiers arbitraires (y compris des fichiers PHP) et d’exécuter finalement du code à distance sur des serveurs de sites Web vulnérables.

Plus tôt en Juillet, Adning Advertising pour WordPress, un plugin premium comptant plus de 8 000 clients, contenait une vulnérabilité critique d’exécution de code à distance susceptible d’être exploitée par des attaquants non authentifiés.

En Mai, Page Builder de SiteOrigin, un plugin WordPress avec un million d’installations actives utilisé pour créer des sites Web via une fonction glisser-déposer, s’est avéré contenir deux failles qui pourraient permettre la prise de contrôle complète du site.

Et puis en Avril, il a été révélé que des légions de visiteurs du site Web pouvaient être infectées par des logiciels malveillants à cause d’une faille CSRF dans Real-Time Search and Replace.

S’abonner
Notifier de
guest
0 Commentaires
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x