Wordpress - PHPMyAdmin

Vulnerabilidad en xmlrpc.php de WordPress

En los últimos meses he identificado casi un centenar de intentos de acceso no autorizado a mi blog (que está soportado en WordPress). Afortunadamente, gracias a las medidas de seguridad que he implementado, las solicitudes solo han sido eso: intentos.

Revisando a detalle el registro, he descubierto que los ataques están dirigidos al archivo xmlrpc.php, que se ubica en el directorio principal de WordPress. ¿Por qué? Miremos.

¿Cuál es la función del archivo xmlrpc.php?

En palabras sencillas, la tecnología XML-RPC permite que un sistema comparta datos con otro, utilizando HTTP como medio de transporte y XML como lenguaje de codificación.

La idea, para el caso de WordPress, es que los usuarios autores pudieran conectarse al blog desde aplicativos para móviles; permitir los trackbacks y pingbacks, y algunas funciones propias de la extensión «Jetpack».

Esta opción tecnológica tuvo auge en la década de 1990, cuando la velocidad de conexión entre cliente y servidor era lenta. Con XML-RPC, el usuario tenía la opción de producir el contenido en un gestor fuera de línea y enviarlo cuando estuviese listo. Esto garantizaba la disponibilidad e integridad de los datos.

Sin embargo, el panorama de hoy es diferente: las conexión son de alta velocidad y estabilidad. Además, existen otros protocolos que permiten la conexión entre dispositivos y sistemas de información. Por cierto, WordPress está trabajando en una API que mejorará esta característica.

¿Dónde está el error del XML-RPC?

La debilidad de esta tecnología se ubica en dos lugares.

La primera está relacionada con la «fuerza bruta». Así, un ciberdelincuente puede utilizar el archivo xmlrpc.php como una «puerta de acceso» para ingresar al sistema. A través scripts, es posible generar miles de usuarios y contraseñas, en un intento por dar con el acceso.

Lo anterior se facilita cuando el nombre de usuario del superadministrador es «admin«, «administrator«, «administrador» o similar. Ahí ya está un 50% de las credenciales logradas.

En «Consejos para Joomla y otros CMS» explico cómo cambiar el nombre de usuario de WordPress.

La segunda debilidad está en los ataques de Denegación Distribuida de Servicio – DDoS. Este tipo de acción consiste en enviar varias solicitudes al sitio web, con el propósito de saturar su capacidad y provocar una falla.

¿Necesitas asesoría en comunicación digital?

Diseña y optimiza tus proyectos en comunicación digital, entregando una mejor experiencia a tus usuarios y potenciando el valor de tu marca.
Conversemos

¿Cómo deshabilitar el archivo xmlrpc.php?

Hay dos caminos. Uno es a través de extensiones y otro es modificar el archivo .htaccess.

Las extensiones disponibles son:

Existen otros plugins que realizan acciones similares. Algunos con mayor restricción, otros con algunas posibilidades de conexión y configuración. La elección dependerá de cada sitio web.

Y la segunda opción, que es más estricta, se realiza directamente en servidor (sea desde cPanel o una conexión FTP).

Aquí se busca bloquear cualquier solicitud entrante desde xmlrpc.php e impedir su paso al sistema WordPress. Es una opción segura, pero que -de implementarse- requiere un seguimiento al sitio web para verificar la disponibilidad de todos los servicios.

Lo que se debe hacer es ubicar el archivo .htaccess en el directorio principal y anexar la siguiente línea de código:

# Block WordPress xmlrpc.php requests
<files xmlrpc.php>
order deny,allow
deny from all
allow from xxx.xxx.xxx.xxx
</files>

En la quinta línea, allow from xxx.xxx.xxx.xxx puede escribirse una dirección IP a la que se permita el acceso vía XML-RPC. En caso que no exista, debe eliminarse.

A modo de cierre

La tecnología XML-RPC fue necesaria en su momento. Sin embargo, con el paso del tiempo, la misma evidenció sus debilidades y ahora es preciso hacerla a un lado.

Afortunadamente, para el caso de WordPress, se está trabajando en una API que mejorará la sincronización entre dispositivos y el core, lo que ampliará las posibilidades, tanto para autores como para las extensiones.

Por lo pronto, recomiendo deshabilitar el archivo xmlrpc.php, sea con un plugin o directamente en el .htaccess, haciendo claridad en identificar cómo funciona el sitio en adelante, pues es posible que algunos servicios presenten inconvenientes.

¿Tienes una pregunta sobre el artículo? Cuéntame en los comentarios. Además, si quieres que escriba sobre algún tema, anótalo a continuación para agregarlo a la agenda de contenidos.

Logo NequiTu aporte permite crear contenidos. Envía un aporte Nequi

Logo PayPalHay más posibilidades. Apoya el blog desde PayPal.me

Logo YouTube¡Vamos por los 10.000 suscriptores en YouTube! Suscríbete

Por:
Juan Carlos Morales S.
Comunicador y educador
YouTube | LinkedIn | Instagram | Twitter

Licencia Creative Commons Vulnerabilidad en xmlrpc.php de WordPress por juancadotcom se distribuye bajo una Licencia Creative Commons Atribución-CompartirIgual 4.0 Internacional. Basada en una obra en https://e-lexia.com/blog.

Deja una respuesta

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

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.