Deshabilita xmlrpc.php para evitar ataques

4 de agosto, 2020 @ 08:58 — 0 comentariosDescargar PDF

Explicado de forma simple, el archivo XMLRPC sirve para que una aplicación externa se pueda comunicar con nuestro WordPress, por ejemplo una de estas aplicaciones puede ser cualquier app móvil que tenga conexión con la administración de WordPress.

Mientras que XMLRPC este activo, los atacantes pueden analizar el sitio web y comprobar que el servicio es accesible, por lo que pueden realizar ataques como ataques de fuerza bruta y denegación de servicio mediante Pingback.

Antes de desactivar parcial o completamente XMLRPC, asegurate de que los plugins y las aplicaciones que utilices no necesiten el uso del protocolo.

1 - Bloquear el fichero xmlrpc.php

xmlrpc.php está habilitado por defecto en WordPress desde la versión 3.5 y es recomendable bloquear el acceso por completo al api para conseguir reducir ataques y uso de cpu y memoria del sitio.

Para bloquear la lectura del fichero xmlrpc.php añade estas líneas al fichero .htaccess:

# bloquear xmlrpc.php
<Files xmlrpc.php>
	Order Deny,Allow
	Deny from all
</Files>

Para probar los cambios realizados, hay una herramienta muy interesante para verificar el funcionamiento de esta tecnologia, tan solo tendremos que poner la dirección de nuestra página web y hacer click en check.

XML-RPC Validation Service

2 - Bloquear el método multicall.php

Con este método no bloquearemos el archivo xmlrpc.php por completo, sino que solo bloquearemos los métodos que presentan más riesgo para la seguridad, de este modo mantendremos funcionalidades interesantes, como los pingback y los trackback.

Para bloquearlos, añade estas líneas al fichero functions.php en el tema activo.

function disable_xmlrpc_danger_methods($methods) {
	unset($methods[
		'system.multicall', 
		'system.listMethods', 
		'system.getCapabilities',
		'pingback.extensions.getPingbacks',
		'pingback.ping', 
		]);
	return $methods;
}
add_filter('xmlrpc_methods', 'disable_xmlrpc_danger_methods');

Si tenemos una web con WordPress instalado, aunque sea una web pequeña y poco visitada, no debemos pensar que no será el objetivo de un ataque, de modo que debemos protegernos siempre que podamos.

WordPress es un software excelente y que permite aplicar actualizaciones de forma muy sencilla e incluso automática, pero también es vulnerable a ataques de terceros. Por eso es muy importe tener WordPress siempre actualizado, tanto el core de WordPress como todo tema y plugin que tengamos instalado.