Base de conocimientos · Scripts y programas

Seguridad en WordPress: cómo prevenir ataques de fuerza bruta en el inicio de sesión de administración

Última actualización: 2020-04-05

¿Por qué WordPress es un objetivo de ataques?

WordPress es una de las soluciones para sitios web más utilizadas en internet en la actualidad. Por ello, con mucha frecuencia es también objetivo de actividad maliciosa. Recientemente se ha observado una tendencia al aumento de los ataques de fuerza bruta cuyo fin es obtener acceso a WordPress como usuario con nivel de administrador. Esto se debe en parte a la naturaleza de WordPress y a cómo ha evolucionado hasta convertirse en la solución web que es hoy. WordPress fue diseñado originalmente como un software sencillo para blogs. Sin embargo, a menudo se utiliza para muchos otros fines, como comercio electrónico, foros, diarios personales, etc. Esto hace que estos sitios web sean objetivos más valiosos. Los atacantes suelen querer interrumpir este tráfico o bien obtener de algún modo información de estos sitios web.

¿Qué es un ataque de fuerza bruta?

Uno de los métodos para obtener información, principalmente las credenciales de INICIO DE SESIÓN, es el llamado ataque de FUERZA BRUTA. Básicamente, como su nombre indica, el atacante no oculta su acción y el ataque carece de eficiencia. Podría decirse que es como emplear el «método de la escopeta». Simplemente consiste en lanzar solicitudes al servidor en busca de un único dato: las credenciales de acceso correctas de su sitio WordPress. Los atacantes suelen infectar otros sistemas informáticos y luego configurarlos para que intenten iniciar sesión como administrador de WordPress. La ilustración siguiente muestra gráficamente cómo el tráfico del ataque puede proceder de muchas ubicaciones y mezclarse con el tráfico normal del sitio web. El ataque también puede provenir de una sola ubicación, pero el método para intentar descifrar el acceso es el mismo: se realiza una búsqueda secuencial de sus credenciales. Los ataques de fuerza bruta también pueden aumentar el consumo de recursos del sitio web. Por lo tanto, no solo intentan vulnerar su seguridad, sino que además incrementan el uso de recursos cuando se producen múltiples intentos de acceso a WordPress.

--Ataque de fuerza bruta


Cómo prevenir los ataques de fuerza bruta contra WordPress

Dado que los usuarios ya no utilizan WordPress simplemente como una solución para blogs, los propietarios de los sitios WordPress no ponen tanto énfasis en la gestión de usuarios. Esto también puede ser un factor que contribuya al problema. Los administradores de sitios WordPress deben cambiar sus contraseñas con regularidad y revisar sus listas de usuarios para asegurarse de que no se haya añadido a nadie que no deba figurar en ellas, especialmente usuarios con nivel de administrador. Además, existen sitios WordPress que no exigen que las personas se registren para publicar comentarios o realizar otras acciones en el sitio web. Para evitar el acceso no autorizado, le recomendamos lo siguiente:



  • Bloquee el acceso a WP-LOGIN.PHP mediante el archivo HTACCESS exigiendo una contraseña adicional
  • Bloquee el acceso a WP-LOGIN.PHP mediante el archivo HTACCESS permitiendo únicamente una dirección IP específica o un rango de direcciones IP
  • Busque un plugin que impida el acceso a la pantalla de inicio de sesión después de un determinado número de intentos. A continuación, el plugin debe aplicar un intervalo de inaccesibilidad antes de permitir el siguiente intento de inicio de sesión.

Se recomiendan los dos primeros métodos que utilizan .htaccess, ya que ayudan a evitar un uso excesivo de recursos.
Con el plugin no existe garantía de ello, a menos que pueda limitar el acceso sin importar cuántos intentos de inicio de sesión se realicen. A continuación se muestran ejemplos de código para el archivo .htaccess correspondientes a las soluciones enumeradas anteriormente

Método con .HTACCESS para denegar el inicio de sesión de usuarios mediante una contraseña adicional para acceder a wp-login:
Nota: el siguiente código debe colocarse en el archivo .htaccess ubicado en el directorio donde haya instalado WordPress



<FilesMatch "\.wp-login.php$">
AuthName "WordPress"
AuthType Basic
AuthUserFile /home/username/.htpasswd
Require valid-user
</FilesMatch>


Método con .HTACCESS para denegar el inicio de sesión de usuarios mediante una dirección IP específica o un rango de direcciones IP:
Nota: el siguiente código debe estar en el archivo .htaccess ubicado en la carpeta WP-ADMIN. Si no encuentra ninguno, cree un archivo de texto en blanco, asígnele el nombre .htaccess y guárdelo en la carpeta wp-admin


AuthUserFile /dev/null
AuthGroupFile /dev/null
AuthName "Admin Access Only"
AuthType Basic
<LIMIT GET>
order deny,allow
deny from all
# lista blanca de la dirección IP del administrador 1
allow from xx.xx.xx.xxx
# lista blanca de la dirección IP del administrador 2
allow from xx.xx.xx.xxx
</LIMIT>

← Todos los artículos de base de conocimientos

Tell us what you need

Compare available plans or describe your workload so we can discuss a suitable starting point.