Un avis de sécurité a été émis pour deux vulnérabilités affectant le plugin WordPress Seraphinite Accelerator installé sur plus de 60 000 sites Web. Les vulnérabilités peuvent être exploitées par tout utilisateur connecté avec un accès minimum au niveau de l’abonné.
La faille du plugin WordPress Seraphinite Accelerator permet à des attaquants authentifiés de récupérer des données opérationnelles internes d’un site Web et également d’apporter des modifications non autorisées. Le problème affecte toutes les versions du plugin jusqu’à la 2.28.14 incluse. Les développeurs ont corrigé la vulnérabilité dans la version 2.28.15.
Ce que fait le plugin
Seraphinite Accelerator est un plugin de performance utilisé pour accélérer les sites WordPress. La fonction principale consiste à créer des versions en cache des pages afin que le serveur n’ait pas besoin de les générer à chaque fois que quelqu’un visite le site. Le plugin prend également en charge plusieurs formats de compression, notamment GZip, Deflate et Brotli, permet la mise en cache du navigateur et sépare les données mises en cache pour différents appareils et environnements afin de réduire la charge du serveur.
Qui peut exploiter la vulnérabilité
La vulnérabilité nécessite une authentification pour exploiter la faille, mais uniquement au niveau d’abonné faible, qui est généralement attribué aux utilisateurs qui s’inscrivent sur un site. Cela signifie que les attaquants n’ont pas besoin d’un accès administrateur. Un compte utilisateur de base suffit pour déclencher la fonction vulnérable.
Qu’est-ce que l’échec de la sécurité
La vulnérabilité existe car le plugin ne vérifie pas si un utilisateur est autorisé à accéder à une fonction API spécifique. Le plugin expose un point de terminaison AJAX nommé seraph_accel_api. L’une des fonctions pouvant être appelées via ce point de terminaison est Obtenir des donnéesqui est géré en interne par le OnAdminApi_GetData() fonction.
Selon le consultatif:
« Le plugin Seraphinite Accelerator pour WordPress est vulnérable à l’exposition d’informations sensibles dans toutes les versions jusqu’à la 2.28.14 incluse via l’action AJAX `seraph_accel_api` avec `fn=GetData`. Cela est dû au fait que la fonction `OnAdminApi_GetData()` n’effectue aucune vérification de capacité.
Cela permet aux attaquants authentifiés, disposant d’un accès au niveau de l’abonné ou supérieur, de récupérer des données opérationnelles sensibles, notamment l’état du cache, les informations sur les tâches planifiées et l’état de la base de données externe.
Dans une seconde consultatif pour une vulnérabilité similaire, Wordfence met en garde contre les modifications que les attaquants pourraient apporter sur un site Web :
« Le plugin Seraphinite Accelerator pour WordPress est vulnérable à la modification non autorisée des données en raison d’une vérification de capacité manquante sur l’action AJAX `seraph_accel_api` avec `fn=LogClear` dans toutes les versions jusqu’à la 2.28.14 incluse. Cela permet aux attaquants authentifiés, avec un accès au niveau de l’abonné et supérieur, d’effacer les journaux de débogage/opérationnels du plugin. «
Dans WordPress, les vérifications de fonctionnalités sont utilisées pour confirmer qu’un utilisateur est autorisé à effectuer une action administrative. Les plugins nécessitent généralement la fonctionnalité manage_options pour les fonctions qui exposent les données internes du système.
Cette vérification étant manquante, le plugin permettait à tout utilisateur connecté d’appeler la fonction API et de récupérer des informations qui ne devraient être disponibles que pour les administrateurs.
La partie concernée du plugin est :
- un contrôleur/répartiteur « Admin API » (car les méthodes sont nommées OnAdminApi_*)
- le point de terminaison/fonction spécifique : GetData
- et probablement un autre point de terminaison/fonction : LogClear (à partir du journal des modifications)
La « zone de script » concernée correspond aux parties qui :
- reçoit la demande
- lit fn
- appelle OnAdminApi_GetData() (et de même OnAdminApi_LogClear() ou équivalent)
Le problème principal est alors l’autorisation rompue, car la fonction OnAdminApi_GetData() réservée aux administrateurs n’effectue pas de vérifications de capacité.
À quoi les attaquants peuvent accéder
La fonction vulnérable renvoie des informations opérationnelles sur le plugin et l’environnement du site.
Les attaquants peuvent récupérer :
- Informations sur l’état du cache
- Informations sur les tâches planifiées
- État de la base de données externe
Ces informations révèlent comment le plugin fonctionne sur le serveur et comment certains processus sont planifiés. Bien que cela ne donne pas directement aux attaquants le contrôle du site Web, cela expose des détails internes du système qui sont normalement réservés aux administrateurs.
Comment la vulnérabilité a été corrigée
Les développeurs ont corrigé la faille dans la version 2.28.15 en restreignant l’accès aux fonctions API concernées.
Le changelog du plugin explique que les fonctions API LogClear et GetData pouvaient être appelées par des utilisateurs qui n’avaient pas le privilège manage_options. Le correctif restaure la vérification des fonctionnalités requise afin que seuls les administrateurs autorisés puissent accéder à ces fonctions.
Ce que les propriétaires de sites devraient faire
Les propriétaires de sites utilisant le plugin Seraphinite Accelerator doivent mettre à jour vers la version 2.28.15 ou une version plus récente. La mise à jour supprime l’accès à l’API exposé et empêche les utilisateurs au niveau abonné de récupérer les données opérationnelles.
Image en vedette par Shutterstock/Max Acronyme

Commentaires