El viernes hablaba con un cliente contándole que WordPress es una de las soluciones más usadas para los blogs y Webs por su facilidad de uso y su buen funcionamiento. Sin embargo, esto también lo conocen los hackers….y es una de las plataformas más atacadas. Por lo tanto deberías tener tanto el WordPress como los plugins lo más actualizado posible, y si tu web tiene bastante tráfico (por lo tanto también atrae bastantes hackers) seguramente tendrás que añadir ciertas medidas extra como esta que explicamos hoy (y que nosotros usamos en un cliente hace unos meses). En unos días también os explicaremos algunos de los plugins más usados para reforzar la seguridad de tu web con WordPress, hoy nos dedicaremos a los ataques Xml-RPC, un ataque muy conocido pero que aún así seguro que a algún lector le viene bien. Es un protocolo que usan algunos servicios y que WordPress hizo bien en activar….hasta que lo usaron para atacar. La solución más sencilla es añadir a tu fichero .htaccess un código para desactivar xml-rpc. Si tu web es simple esto debería valer. Te pongo el código: <FilesMatch “^(xmlrpc\.php)”> Order Deny, Allow Deny from all </ FilesMatch> Si no os atrevéis con editar el fichero htaccess podéis añadir un plugin que lo haga por vosotros como este. El problema de este código es que podrías necesitar xmlrpc para algún servicio, ciertas cosas podrían dejar de funcionar dependiendo de la complejidad de tu web. Puedes probar estas variantes: Esta mira de dónde viene el ataque: <IfModule mod_setenvif.c> <Files xmlrpc.php> BrowserMatch “Poster” allowed BrowserMatch “WordPress” allowed BrowserMatch “Windows Live Writer” allowed BrowserMatch “wp-iphone” allowed BrowserMatch “wp-android” allowed BrowserMatch “wp-windowsphone” allowed Order Deny,Allow Deny from All Allow from env=allowed </Files> </IfModule> Si usas JetPack deberías añadir estas modificaciones. : <FilesMatch “^(xmlrpc\.php)”> Order Deny,Allow # Whitelist Jetpack/ Automattic CIDR IP Address Blocks Allow from 192.0.64.0/18 Allow from 209.15.0.0/16 Allow from 66.155.0.0/17 Deny from all </FilesMatch> Hay quien recomienda alguna IP más para Jetpack…experimentad con cuidado. Podéis añadir a este código anterior nombres de dominio también para el Allow. Un mejor código, según lo indicado en esta página, para evitar otro tipo de ataque también sería: <FilesMatch “^(xmlrpc\.php|wp-trackback\.php)”> Order Deny,Allow # Whitelist Jetpack/ Automattic CIDR IP Address Blocks Allow from 192.0.64.0/18 Allow from 209.15.0.0/16 Allow from 66.155.0.0/17 Deny from all </FilesMatch> Con esto deberías estar bastante protegido contra este ataque. Si administras tu propio servidor puedes también usar Fail2Ban, un plugin con muchas opciones al que puede que le dediquemos un artículo pronto. Una configuración para este ataque con fail2ban como solución la puedes ver aquí.