wordpress-pixabay



De acuerdo a un comunicado de la empresa de seguridad Sucuri, en los últimos días miles y miles de sitios con instalaciones WordPress están sufriendo ataques de amplificación de fuerza bruta a través del fichero XML-RPC.

XML-RPC es un protocolo de llamada a procedimientos remotos que utiliza XML, (lenguaje de marcas para almacenar y transportar datos) y para transmisión de mensajes usa el protocolo HTTP.

En este ataque los hackers se están aprovechando de system.multicall, que es uno de los métodos de XML-RPC que permite ejecutar múltiples comandos a través de una sola solicitud HTTP.  En este caso los atacantes están probando cientos de contraseñas dentro de una sola solicitud HTTP.

Este tipo de ataques es mucho más efectivo que otros ataques de fuerza bruta y además a veces es difícil de detectar.

Cómo evitar este ataque

La forma de detener estos ataques por completo es bloquear el acceso a XML-RPC, pero el problema es que de esta manera perjudican el accionar de algunos plugins que hacen uso de este protocolo.  Uno de los plugins que lo utiliza es Jetpack de Automattic.

Si no utilizan Jetpack y pueden prescindir de algún otro plugin que utiliza XML-RPC, entonces ese es el método más efectivo y lo pueden hacer agregando el siguiente código al fichero .htaccess que se encuentra en el directorio público donde tienen instalado WordPress,

<Files xmlrpc.php>
order deny,allow
deny from all
</Files>

Otra forma de desactivar por completo XML-RPC es vía el fichero wp-config.php.  Para hacerlo de esta forma incluyen la siguiente línea de código debajo de la última sentencia ABSPATH,

add_filter('xmlrpc_enabled', '__return_false');

Ahora con solo desactivar el método system.multicall de XML-RPC también los protegerá de estos ataque de amplificación de fuerza bruta y les permitirá seguir usando los plugins, incluido Jetpack.  La forma de hacerlo, junto con el  bloqueo de un par de métodos más que no influyen demasiado en el accionar de este protocolo, es incluir el siguiente código en el fichero functions.php del tema que están utilizando,

function mmx_remove_xmlrpc_methods( $methods ) {
unset( $methods['system.multicall'] );
unset( $methods['system.listMethods'] );
unset( $methods['system.getCapabilities'] );
return $methods;
}
add_filter( 'xmlrpc_methods', 'mmx_remove_xmlrpc_methods');

Recuerden que antes de modificar algo, siempre deben de hacer un respaldo de seguridad de los ficheros que van a modificar y para estar más seguros, nunca viene mal un respaldo de toda la instalación de WordPress.