Qué es Xmlrpc.php en WordPress y Por qué Debería Desactivarlo

WordPress siempre ha tenido características incorporadas que le permiten interactuar de forma remota con su sitio. Acéptalo, a veces necesitarás acceder a tu sitio web y tu computadora no estará en ningún lugar cercano. Durante mucho tiempo, la solución fue un archivo llamado xmlrpc.php. Pero en los últimos años, el archivo se ha convertido más en una plaga que en una solución.

A continuación nos sumergimos en lo que xmlrpc.php en realidad lo es y por qué se creó. También describimos los problemas de seguridad comunes que causa y cómo parchearlos en su propio sitio de WordPress.

¡Lleve su sitio de WordPress al siguiente nivel y obtenga una solución de alojamiento de WordPress segura con Hostinger hoy mismo!

Empezar Aquí

¿Qué Es Xmlrpc.php?

XML-RPC es una característica de WordPress que permite la transmisión de datos, con HTTP actuando como mecanismo de transporte y XML como mecanismo de codificación. Dado que WordPress no es un sistema cerrado y ocasionalmente necesita comunicarse con otros sistemas, se buscó esto para manejar ese trabajo.

Por ejemplo, supongamos que desea publicar en su sitio desde su dispositivo móvil, ya que su computadora no estaba cerca. Puede utilizar la función de acceso remoto habilitada por xmlrpc.php para hacer precisamente eso.

Las características principales de xmlrpc.php habilitado le permitía conectarse a su sitio a través de un teléfono inteligente, implementando trackbacks y pingbacks de otros sitios, y algunas funciones asociadas con el complemento Jetpack.

Por Qué Fue Xmlrpc.php Creado y Cómo se Usó?

La implementación de XML-RPC se remonta a los primeros días de WordPress, antes de que se convirtiera en WordPress.

En los primeros días de Internet, cuando las conexiones eran increíblemente lentas, el proceso de escribir y publicar en la web era mucho más difícil y consumía mucho tiempo. En lugar de escribir dentro del propio navegador, la mayoría de las personas escribían sin conexión, luego copiaban y pegaban su contenido en la web. Sin embargo, este proceso estaba lejos de ser ideal.

La solución (en ese momento), era crear un cliente de blogs sin conexión, donde pudiera componer su contenido, luego conectarse a su blog para publicarlo. Esta conexión se realizó a través de XML-RPC. Con el marco básico de XML-RPC en su lugar, las primeras aplicaciones usaban esta misma conexión para permitir a las personas iniciar sesión en sus sitios de WordPress desde otros dispositivos.

XML-RPC Hoy en día

En 2008, con la versión 2.6 de WordPress, había una opción para habilitar o deshabilitar XML-RPC. Sin embargo, con el lanzamiento de la aplicación WordPress para iPhone, la compatibilidad con XML-RPC estaba habilitada de forma predeterminada y no había opción para desactivar la configuración. Esto se ha mantenido fiel hasta el día de hoy.

Sin embargo, la funcionalidad de este archivo ha disminuido considerablemente con el tiempo, y el tamaño total del archivo ha disminuido de 83 kb a 3 kb, por lo que no desempeña un papel tan grande como solía hacerlo.

El futuro de XML-RPC

Con la nueva API de WordPress, podemos esperar que XML-RPC se elimine por completo. Hoy en día, esta nueva API todavía está en fase de prueba y solo se puede habilitar mediante el uso de un complemento.

Sin embargo, puede esperar que la API se codifique directamente en el núcleo de WordPress en el futuro, lo que eliminará principalmente la necesidad de xmlrpc.archivo php en conjunto.

La nueva API no es perfecta, pero proporciona una solución más robusta y segura al problema de xmlrpc.dirigido a php.

Por Qué Debe Deshabilitar Xmlrpc.php

Los mayores problemas con XML-RPC son las preocupaciones de seguridad que surgen. Los problemas no son con XML-RPC directamente, sino con cómo se puede usar el archivo para habilitar un ataque de fuerza bruta en su sitio.

Claro, puedes protegerte con contraseñas increíblemente seguras y complementos de seguridad de WordPress. Pero, el mejor modo de protección es simplemente desactivarlo.

Hay dos debilidades principales en XML-RPC que se han explotado en el pasado.

El primero es usar ataques de fuerza bruta para obtener acceso a su sitio. Un atacante intentará acceder a su sitio usando xmlrpc.php usando varias combinaciones de nombre de usuario y contraseña. Pueden usar eficazmente un solo comando para probar cientos de contraseñas diferentes. Esto les permite eludir las herramientas de seguridad que normalmente detectan y bloquean los ataques de fuerza bruta.

El segundo fue desconectar sitios a través de un ataque DDoS. Los hackers usarían la función pingback en WordPress para enviar pingbacks a miles de sitios instantáneamente. Esta característica en xmlrpc.php proporciona a los hackers un suministro casi infinito de direcciones IP para distribuir un ataque DDoS.

Para comprobar si XML-RPC se está ejecutando en su sitio, puede ejecutarlo a través de una herramienta llamada Validador XML-RPC. Ejecute su sitio a través de la herramienta, y si recibe un mensaje de error, significa que no tiene habilitado XML-RPC.

Si recibe un mensaje de éxito, puede detener xmlrpc.php con uno de los dos enfoques a continuación.

Método 1: Deshabilitar Xmlrpc.php Con complementos

Deshabilitar XML-RPC en su sitio de WordPress no podría ser más fácil.

Simplemente vaya a la sección «Agregar nuevos complementos» desde su panel de control de WordPress. Busque Deshabilitar XML-RPC e instale el complemento que se parece a la imagen de abajo:

Active el complemento y estará listo. Este complemento insertará automáticamente el código necesario para desactivar XML-RPC.

Sin embargo, tenga en cuenta que algunos complementos existentes pueden utilizar partes de XML-RPC, por lo que deshabilitarlo por completo podría causar un conflicto de complementos o que ciertos elementos de su sitio ya no funcionen.

Si desea desactivar solo ciertos elementos de XML-RPC, pero aún así permitir que ciertos complementos y funciones funcionen, use los siguientes complementos:

  • Detener el ataque XML-RPC. Este complemento detendrá todos los ataques XML-RPC, pero seguirá permitiendo que complementos como Jetpack y otras herramientas y complementos automáticos conserven el acceso al xmlrpc.archivo php.
  • Controlar la publicación XML-RPC. Esto le permite conservar el control y el uso sobre la opción de publicación remota que ofrece xmlrpc.php.

Método 2: Deshabilitar Xmlrpc.php Manualmente

Si no desea utilizar un complemento y prefiere hacerlo manualmente, siga este enfoque. Detendrá todos los xmlrpc entrantes.php solicita antes de que se pase a WordPress.

Abre tu .archivo htaccess. Es posible que tenga que activar la opción ‘mostrar archivos ocultos’ en el administrador de archivos o en su cliente FTP para localizar este archivo.

Dentro de su .htaccess, pegue el código siguiente:

# Block WordPress xmlrpc.php requests<Files xmlrpc.php>order deny,allowdeny from allallow from xxx.xxx.xxx.xxx</Files>

Nota: el Cambio de xxx.xxx.xxx.xxx a la dirección IP que desea permitir el acceso xmlrpc.php o eliminar esta línea por completo.

Pensamientos finales

En general, XML-RPC fue una solución sólida para algunos de los problemas que se produjeron debido a la publicación remota en su sitio de WordPress. Sin embargo, con esta característica llegaron algunos agujeros de seguridad que terminaron siendo bastante dañinos para algunos propietarios de sitios de WordPress.

Para garantizar que su sitio permanezca seguro, es una buena idea deshabilitar xmlrpc.php completamente. A menos que necesite algunas de las funciones necesarias para la publicación remota y el complemento Jetpack. Luego, debe usar los complementos de solución alternativa que permiten estas características, al mismo tiempo que parchea los agujeros de seguridad.

Con el tiempo, podemos esperar que las características de XML-RPC se integren en la nueva API de WordPress, que mantendrá el acceso remoto y similares, sin sacrificar la seguridad. Pero, mientras tanto, es una buena idea protegerse de los posibles agujeros de seguridad XML-RPC.

Deja una respuesta

Tu dirección de correo electrónico no será publicada.