Comment et pourquoi activer et désactiver XMLRPC.PHP dans WordPress
xmlrpc.php est un fichier de WordPress qui permet l’accès à distance à votre site web. Il permet à des applications externes, telles que des applications mobiles, des outils tiers et des pingbacks, d’interagir avec votre site WordPress. Bien que cette fonctionnalité puisse être utile, elle comporte également des risques de sécurité. C’est pourquoi de nombreux propriétaires de sites WordPress choisissent de désactiver xmlrpc.php lorsqu’ils n’en ont pas besoin.
Ce guide vous expliquera ce qu’est xmlrpc.php, pourquoi vous souhaitez l’activer ou le désactiver, et comment le faire en toute sécurité.
Qu’est-ce que xmlrpc.php dans WordPress ?
- xmlrpc.php est un fichier central de WordPress qui permet l’accès à distance à votre site web via le protocole XML-RPC.
- Il est utilisé pour effectuer des actions telles que :
- Publier des articles à partir d’applications distantes.
- Gérer les commentaires à distance.
- Activer les pingbacks et les trackbacks.
- Connecter des applications WordPress sur des appareils mobiles à votre site web.
- Exemples de cas d’utilisation :
- Publication d’articles à partir d’applications mobiles WordPress.
- Le plugin Jetpack utilise xmlrpc.php pour certaines de ses fonctionnalités.
- Intégration de services tiers qui utilisent XML-RPC pour le transfert de données.
Pourquoi désactiver xmlrpc.php ?
xmlrpc.php peut présenter des risques pour la sécurité, c’est pourquoi de nombreux propriétaires de sites web choisissent de le désactiver, en particulier s’ils n’utilisent pas de fonctionnalités qui en dépendent.
Risques de sécurité courants associés à xmlrpc.php :
- Attaques par force brute :
- Les attaquants peuvent utiliser xmlrpc.php pour effectuer des attaques par force brute en essayant plusieurs noms d’utilisateur et mots de passe via des requêtes XML-RPC.
- Cela peut être fait plus efficacement en utilisant xmlrpc.php parce qu’une seule requête peut essayer plusieurs tentatives de connexion.
- Attaques DDoS :
- xmlrpc.php peut être utilisé dans le cadre d’attaques par déni de service distribué (DDoS) pour submerger un site de demandes de pingback, ce qui entraîne l’épuisement des ressources et des temps d’arrêt.
- Exploitation des pingbacks :
- Des acteurs malveillants peuvent utiliser la fonction de rétroliaison (pingback) de xmlrpc.php pour amplifier les attaques DDoS ou générer d’importants volumes de spam.
Quand activer xmlrpc.php ?
- Vous devriez garder xmlrpc.php activé si :
- Vous devez publier des articles à partir de l’application mobile de WordPress.
- Vous utilisez des plugins ou des outils qui s’appuient sur XML-RPC, comme Jetpack.
- Vous avez besoin de capacités de publication à distance via des services externes.
Si vous n’avez pas besoin de ces fonctionnalités, il est plus sûr de désactiver xmlrpc.php pour minimiser les risques de sécurité.
Comment désactiver xmlrpc.php dans WordPress
Méthode 1 : Désactiver xmlrpc.php à l’aide d’un plugin (recommandé)
L’utilisation d’un plugin est la manière la plus simple de désactiver xmlrpc.php sans toucher au code.
Étape 1 : Installer un plugin
- Installez un plugin de sécurité comme Disable XML-RPC-API ou All In One WP Security & Firewall.
- Vous pouvez le faire en allant dans Plugins > Ajouter un nouveau dans votre tableau de bord WordPress, en recherchant le plugin et en cliquant sur Installer maintenant, puis Activer.
Étape 2 : Configurer le plugin
- Si vous utilisez Disable XML-RPC-API :
- Après avoir activé le plugin, xmlrpc.php sera automatiquement désactivé.
- Si vous utilisez All In One WP Security & Firewall :
- Allez dans WP Security > Firewall.
- Trouvez la section XML-RPC et désactivez les options XML-RPC.
Méthode 2 : Désactiver xmlrpc.php à l’aide de .htaccess (avancé)
Si vous êtes à l’aise avec l’édition du fichier .htaccess, vous pouvez bloquer l’accès à xmlrpc.php directement au niveau du serveur.
Étape 1 : Modifier le fichier .htaccess
- Accédez au répertoire racine de votre WordPress via FTP ou le gestionnaire de fichiers de votre hébergeur (souvent nommé public_html).
- Ouvrez le fichier .htaccess pour le modifier.
- Ajoutez le code suivant à la fin du fichier .htaccess :# Bloquer tous les accès à xmlrpc.php Order Allow,Deny Deny from all
- Enregistrez les modifications et téléchargez le fichier .htaccess mis à jour sur votre serveur.
Résultat :
- Ce code empêche tout accès externe à xmlrpc.php, le désactivant de fait.
Méthode 3 : Désactiver xmlrpc.php en utilisant Functions.php (code personnalisé)
Vous pouvez également désactiver XML-RPC via le fichier functions.php de votre thème.
Etape 1 : Editer le fichier functions.php
- Allez dans Apparence > Editeur de thème dans votre tableau de bord WordPress.
- Sélectionnez le fichier functions.php dans la barre latérale droite.
- Ajoutez le code suivant :// Désactivez XML-RPC add_filter(‘xmlrpc_enabled’, ‘__return_false’) ;
- Cliquez sur Mettre à jour le fichier pour enregistrer les modifications.
Résultat :
- Ce code désactive la fonctionnalité XML-RPC dans WordPress.
Méthode 4 : Utiliser les paramètres de sécurité de votre hébergeur
Certains hébergeurs proposent des options pour désactiver XML-RPC via leur panneau de contrôle :
- Connectez-vous à votre compte d’hébergement.
- Recherchez les options liées à la sécurité de WordPress ou aux paramètres de l’application.
- Si c’est le cas, désactivez l’accès à XML-RPC via le panneau de sécurité.
Comment activer xmlrpc.php dans WordPress
Si vous avez précédemment désactivé xmlrpc.php et que vous devez le réactiver, inversez simplement les étapes utilisées pour le désactiver :
- Si vous avez utilisé un plugin comme Disable XML-RPC-API, désactivez ou désinstallez le plugin.
- Si vous avez ajouté du code à .htaccess ou functions.php, supprimez le code et enregistrez les modifications.
- Si vous avez désactivé XML-RPC via votre hébergeur, utilisez le panneau de contrôle de l’hébergement pour réactiver l’accès à XML-RPC.
Résumé
xmlrpc.php dans WordPress fournit des capacités d’accès à distance, permettant à des applications et des services d’interagir avec votre site web. Bien que cette fonctionnalité puisse être utile, elle présente également des risques de sécurité tels que les attaques par force brute et les attaques DDoS. Par conséquent, de nombreux propriétaires de sites web choisissent de désactiver xmlrpc.php s’ils n’ont pas besoin de ses fonctionnalités.
Pour désactiver xmlrpc.php, vous pouvez utiliser des plugins, ajouter un code personnalisé dans .htaccess ou functions.php, ou utiliser les paramètres de votre hébergeur. Si vous devez réactiver xmlrpc.php, il vous suffit d’inverser les étapes de sa désactivation. Comprendre quand et comment activer ou désactiver cette fonctionnalité peut vous aider à sécuriser votre site web WordPress tout en conservant les fonctionnalités dont vous avez besoin.