Le XML-RPC de WordPress : son utilité et la nécessité de le désactiver

Qu’est-ce que le XML-RPC ?

Il repose sur le protocole HTTP pour l’échange de données et utilise XML pour la structuration des informations.

Le XML-RPC en relation avec WordPress
Le XML-RPC a précédé l’existence du système de gestion de contenu (CMS) WordPress, ayant été employé dans le logiciel de blogging B2. Automattic a ensuite dérivé B2 pour créer WordPress en 2003.

Initialement, jusqu’à la version 3.5 de WordPress, le fichier XML-RPC était inactif par défaut. Cependant, à partir de la version 3.5, il a été activé par défaut. Cette modification visait principalement à permettre à l’application mobile de WordPress de se connecter à votre site WordPress, facilitant ainsi la gestion depuis des appareils mobiles. De plus, le XML-RPC servait à échanger des données entre WordPress et d’autres systèmes externes, et il jouait un rôle dans la gestion des rétroliens et des pings.

Cependant, les utilisateurs de WordPress devraient être conscients que le XML-RPC est désormais obsolète. En décembre 2016, la version 4.7 de WordPress a introduit l’API REST (Representational State Transfer) au cœur du CMS. Cette API a été conçue pour soutenir les applications basées sur WordPress et transformer WordPress en une véritable plateforme d’application, étant notamment utilisée par WordPress.com pour se connecter à la base de données de WordPress et par l’éditeur de texte Gutenberg.

L’API REST de WordPress fournit une interface permettant aux développeurs d’accéder à WordPress depuis l’extérieur de l’installation WordPress, tout comme le faisait le XML-RPC à l’époque. Les développeurs peuvent interagir avec l’API REST en utilisant JavaScript.

Depuis l’intégration de l’API REST dans le cœur de WordPress, le fichier xmlrpc.php n’est plus utilisé et est considéré comme obsolète. L’API REST offre une plus grande flexibilité que le protocole XML-RPC et peut interagir avec un plus grand nombre de systèmes que ce que permettait xmlrpc.php.

Pourquoi désactiver XML-RPC sur WordPress ?

Étant donné que le XML-RPC n’est plus utilisé et a été remplacé par l’API REST, il est judicieux de désactiver XML-RPC sur votre site WordPress. Le fichier xmlrpc.php peut représenter une vulnérabilité potentielle de sécurité et est souvent la cible d’attaques DDoS.

En outre, ce fichier consomme généralement des ressources, alors qu’il est rarement utilisé, étant activé sur seulement 1% des sites WordPress.

Par conséquent, vous pouvez en toute sécurité désactiver le XML-RPC de WordPress sur votre hébergement web.

Comment désactiver XML-RPC dans WordPress ?

Pour ce faire, connectez-vous à votre compte cPanel ou utilisez un client FTP tel que FileZilla.

  • Accédez ensuite au gestionnaire de fichiers dans le dossier de votre site. 
  • Recherchez et éditez le fichier .htaccess.
  • Ajoutez le code suivant au fichier .htaccess :

# Bloquer les requêtes XML-RPC de WordPress

<Files xmlrpc.php>

order deny,allow

deny from all

</Files>

Vous avez maintenant désactivé XML-RPC sur votre site.