L’élévation de privilèges (privilege escalation) désigne le fait, pour un utilisateur ou un processus, d’obtenir des droits supérieurs à ceux qui lui ont été légitimement accordés. Sur WordPress, cela se traduit typiquement par un compte Abonné ou Contributeur qui parvient à exécuter des actions réservées à un Administrateur.
Élévation verticale et horizontale
- Élévation verticale : un compte à faibles privilèges (Abonné) obtient les droits d’un rôle supérieur (Administrateur) – la forme la plus dangereuse, souvent via une faille de plugin
- Élévation horizontale : un utilisateur accède aux données d’un autre compte de même niveau (ex. lire les commandes WooCommerce d’un autre client) sans obtenir de droits supplémentaires globaux
Comment une élévation de privilèges se produit sur WordPress
La cause la plus fréquente est un plugin qui expose une action sensible (créer un utilisateur, modifier une option) sans vérifier la capacité (capability) de l’utilisateur qui l’appelle – par exemple un point d’entrée API REST ou un traitement AJAX accessible à tout utilisateur connecté, alors qu’il devrait être réservé aux administrateurs.
Comment s’en protéger
- Mettre à jour les plugins dès qu’un correctif d’élévation de privilèges est publié – ces failles sont fréquemment corrigées via des mises à jour
- Appliquer le principe du moindre privilège : moins de comptes à privilèges élevés, moins de surface pour ce type d’attaque
- Auditer les plugins qui créent des rôles ou des points d’API personnalisés, un terrain propice à ce type de faille
- Surveiller la création de comptes administrateurs inattendus, signe qu’une élévation a peut-être déjà eu lieu