Testez vos compétences sur tous nos services d'hébergement et bénéficiez de 15% de réduction!

Utilisez le code à la caisse :

Skills
10.10.2024

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 pourriez vouloir 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égrer des services tiers qui utilisent XML-RPC pour le transfert de données.

Pourquoi désactiver xmlrpc.php ?

xmlrpc.php peut poser des risques de 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 :

  1. 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.
  2. Attaques DDoS
    • xmlrpc.php peut être utilisé dans des 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.
  3. Exploitation des pingbacks
    • Des acteurs malveillants peuvent utiliser la fonction de pingback de xmlrpc.php pour amplifier les attaques DDoS ou générer de grands volumes de spam.

Quand activer xmlrpc.php ?

  • Vous devriez activer xmlrpc.php 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 en utilisant .htaccess (Avancé)

Si vous êtes à l’aise pour éditer le fichier .htaccess, vous pouvez bloquer l’accès à xmlrpc.php directement au niveau du serveur

Étape 1 : Modifier le fichier .htaccess

  1. Accédez au répertoire racine de WordPress via FTP ou le gestionnaire de fichiers de votre hébergeur (souvent nommé public_html).
  2. Ouvrez le fichier .htaccess pour le modifier.
  3. Ajoutez le code suivant à la fin du fichier .htaccess
    # Bloquer tout accès à xmlrpc.php <Fichiers xmlrpc.php> Ordre Allow,Deny Deny from all </Files>
  4. 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 à l’aide de Functions.php (code personnalisé)

Vous pouvez également désactiver XML-RPC via le fichier functions.php de votre thème

Étape 1 : Modifier le fichier functions.php

  1. Allez dans Apparence > Editeur de thème dans votre tableau de bord WordPress.
  2. Sélectionnez le fichier functions.php dans la barre latérale droite.
  3. Ajoutez le code suivant
    // Désactivez XML-RPC add_filter(‘xmlrpc_enabled’, ‘__return_false’) ;
  4. Cliquez sur Mettre à jour le fichier pour enregistrer les modifications.

Résultat :

  • Ce code désactivera 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é

Dans WordPress, le fichier xmlrpc.php permet l’accès à distance et l’interaction entre votre site web et des applications ou services externes. Cela peut être pratique pour des fonctions telles que la publication d’applications mobiles ou la connexion d’outils tiers. Cependant, comme il crée un point d’entrée supplémentaire dans votre site, il devient souvent la cible de tentatives de force brute, de spam et même d’attaques DDoS. Pour minimiser ces risques, de nombreux propriétaires de sites web choisissent de désactiver xmlrpc.php s’ils n’utilisent pas activement ses fonctions. Cette désactivation peut être réalisée par différentes méthodes, telles que l’installation d’un plugin de sécurité dédié, l’ajout de règles au fichier .htaccess ou la modification du fichier functions.php de votre thème. Chaque approche vous permet de contrôler si l’accès à distance est autorisé et contribue à renforcer la sécurité globale de votre site web. Par exemple, en ajoutant une simple ligne comme deny from all dans une directive .htaccess ciblant xmlrpc.php, vous pouvez instantanément bloquer l’accès externe à ce fichier. Si, à un moment donné, vous avez besoin d’une publication à distance ou d’une intégration d’application, le changement peut facilement être annulé. En comprenant quand activer ou désactiver xmlrpc.php, vous vous assurez que votre site WordPress reste sécurisé sans sacrifier les fonctionnalités dont vous avez réellement besoin.

Testez vos compétences sur tous nos services d'hébergement et bénéficiez de 15% de réduction!

Utilisez le code à la caisse :

Skills