Cómo desactivar xmlrpc.php de Wordpress

Una de las vulnerabilidades más comentadas de WordPress es la que tiene que ver con el archivo xmlrpc.php. Para resumir, este archivo es el que permite la interacción entre wordpress y aplicaciones remotas. Sirve, a la práctica, para que los propietarios/editores de un sitio WordPress puedan acceder al Gestor de Contenidos y publicar nuevas entradas desde aplicaciones conectadas con WordPress.

La vulnerabilidad tiene que ver (sobre todo) con ataques de fuerza bruta. Es decir, se realizan muchas consultas simultáneas al archivo xmlrpc.php de desde distintos puntos, de modo que el servidor se vuelve inestable y cae, dejando el sitio web inoperativo. Esto es un resumen muy tosco, claro. En realidad existen muchas otras vías por las que el xmlrpc.php puede causar una vulnerabilidad en nuestro sitio web, pero no vamos a entrar en detalles.

Si no tienes intención de realizar operaciones remotas con WordPress y deseas desactivarlo, aparentemente no existe una opción que permita inhabilitar esta funcionalidad desde los menús de configuración. Pero no está todo perdido.

Método radical para desactivar el xmlrpc.php

Si revisas tu código fuente, encontrarás una línea como esta:

Para eliminar este vínculo, accede al fichero header.php y busca la siguiente línea:

Comenta la línea y la función php para que el vínculo se inhabilite

Por último, en el directorio raíz de tu instalación de WordPress, busca el fichero xmlrpc.php y cambia su nombre a algo completamente distinto. Si estás seguro de que no vas a utilizar nunca esta funcionalidad, lo puedes eliminar. Con esto bastaría para que el fichero no sea detectado por los “hackers” malintencionados.

Método suave para desactivar el xmlrpc.php

Si crees que en algún momento vas a necesitar la funcionalidad y no deseas eliminar el fichero, hay otra vía para desactivarla de forma “menos agresiva”, que consiste en denegar el acceso al fichero xmlrpc.php. Consiste en añadir las siguientes líneas al .htaccess de tu sitio web:

Existe un último método que permite el acceso parcial al archivo. Se trata de combinar la anterior directiva del .htaccess con permisos de acceso para una o varias IPs concretas. Por ejemplo:

Con esto ya tenemos las espaldas cubiertas frente a cualquier intruso malintencionado. Creo que no hace falta recordar la necesidad de realizar una copia de seguridad antes de proceder.


Puntúa este post ;)
Esto apestaBah, ni chica ni limonáPasable¡Oh! Me gusta tu rollo¡Genial! ¡Justo lo que quería! (13 Votos, puntuación media: 4,46 de 5)
Loading...

4 comentarios


  1. Muchas gracias Adrià.

    Trabajo con wordpress, estoy optimizando todo lo que puedo, y ya me tenía harto el xmlrpc.php tanto en woorank como en xenu.

    He utilizado lo que llamas método radical, sin embargo he debido completarlo con esta función:

    /*** Borrar de las cabeceras los enlaces a xmlrpc.php y wlwmanifest.xml
    ***/
    add_action(‘init’, ‘removeHeadLinks’);
    function removeHeadLinks() {
    remove_action(‘wp_head’, ‘rsd_link’);
    remove_action(‘wp_head’, ‘wlwmanifest_link’);
    }

    Un saludo y muchas gracias por todos los buenos consejos que nos dejas master.

    Responder

    1. ¡Hola!

      ¡Gracias por comentar y gracias por la aportación! La función que compartes es perfectamente válida, ¡genial!. Por si alguien la quiere implementar, añadiré: Se debe colocar en el archivo functions.php de nuestro wordpress.

      Un saludo 😉

      Responder

  2. Hola Adrià,

    Parece ser que he tenido éste tipo de problema con mi servidor. He optado por eliminarlo.

    A ver si deja de marcarme limite excedido de cpu.

    Gracias por la info 😉

    Responder

    1. Me alegra que te haya sido útil. Espero que esto te solucione el problema, aunque exceder el límite de la CPU podría ser síntoma de otros problemas. ¡Un saludo!

      Responder

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos necesarios están marcados *