Rubrique Wordpress

Sécurez WordPress: Restreindre ou interdire l’accès à l’API WordPress XML-RPC

Catégorie Wordpress

xml-rpc-bruteforceJe vous en parlais il y a peu de temps, un des meilleurs moyens de sécuriser l’espace admin de WordPress est d’en changer l’URL. Mais il existe une autre porte d’accès, que vous ne connaissez peut-être pas, mais qu’un hacker peut utiliser pour pirater votre site: l’API WordPress XML-RPC.

Cette API permet a des programmes tiers de se connecter à votre blog pour éventuellement en modifier le contenu. C’est par exemple le cas des applications mobiles WordPress qui offrent une interface plus adaptées au écrans tactiles que l’admin web WordPress. Pour vous afficher les données de votre sites, ces applications utilisent XML-RPC.

L’URL de cette API est toujours la même: www.adressedevotreblogwordpress.com/xmlrpc.php. Il est donc aisé pour les pirate de passer par là pour tenter une attaque bruteforce (essayer de se connecter avec de nombreux login/mots de passe).

Alors, si vous n’utilisez pas de logiciels tiers pour accéder à votre blog, je vous conseille de désactiver XML-RPC. Seulement voilà, c’est encore une lacune de WordPress, il n’y a pas d’option pour désactiver ça. Il faut passer par un plugin. Il en existe de nombreux, en voici un:

Manage XML-RPC
Manage XML-RPC
Développeur: brainvireinfo
Prix: Gratuit

Manage XML-RPC va vous ajouter un menu « XML-RPC setting » dans lequel vous pourrez désactiver XML-RPC (cochez les 2 options « Disable XML-RPC ») ou n’autoriser que certaines adresses IP à se connecter à votre API WordPress.

Utiliser un plugin WordPress n’est pas le seul moyen pour couper l’accès à XML-RPC, mais c’est probablement le plus simple à mettre en place. Voici d’autres méthodes alternatives:

– Supprimer le fichier xmlrpc.php en FTP. Inconvénient: celui-ci reviendra surement lors de la prochaine mise à jour de WordPress…

– Modifier le virtualhost de votre serveur en y ajoutant les lignes suivantes, juste avant </VirtualHost>:
<files xmlrpc.php>
order allow,deny
deny from all
</files>

– Ajouter ces lignes dans le fichier .htaccess de votre WordPress
<files xmlrpc.php>
order allow,deny
deny from all
</files>

Laissez un commentaire...

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

(obligatoire)