Ataques de fuerza bruta y cómo detenerlos

Resumen

Las fallas de identificación y autenticación son uno de los riesgos más explotados en aplicaciones web modernas. Aquí aprenderás cómo se comprometen las credenciales, qué controles aplicar como desarrollador o equipo de ciberseguridad, y cómo mitigar ataques de fuerza bruta usando estrategias de blue team.

¿Qué son las fallas de identificación y autenticación?

Este riesgo del OWASP Top 10 ocurre cuando una aplicación no valida correctamente quién accede ni protege el proceso de autenticación. Toda app necesita autenticar usuarios y asignarles un rol; si ese flujo es débil, un atacante puede suplantar identidades y escalar privilegios.

Un caso típico es permitir contraseñas débiles. Cuando diseñas un formulario de registro, evita aceptar combinaciones como admin-admin, solo minúsculas, solo números o el clásico 12345. Los arquitectos y equipos de desarrollo son responsables de bloquear estas contraseñas desde la lógica de la aplicación.

¿Qué es una contraseña débil? Es aquella que un atacante puede adivinar fácilmente con diccionarios o automatización: secuencias numéricas, nombres completos, datos personales o palabras comunes sin combinación de caracteres.

¿Cómo proteger las credenciales si ya fueron comprometidas?

Hoy puedes validar en servicios web públicos si tu correo o número móvil aparece en bases de datos filtradas que circulan en la dark web o deep web. Si detectas que tus credenciales fueron expuestas, actúa de inmediato.

El primer control es habilitar el múltiple factor de autenticación (MFA) en esa cuenta. A nivel de desarrollo, integra mecanismos que vayan más allá de la contraseña tradicional:

  • Anti-bots o captchas para frenar automatización.
  • Passkey para autenticación basada en dispositivos hardware.
  • Passwordless o flujos similares sin contraseña.

Un ejemplo concreto [02:08]: el servicio DocuSign permite activar passkey con un token desde un dispositivo hardware, eliminando la dependencia exclusiva de la contraseña.

¿Qué son las campañas de quick password checks?

Consisten en usar diccionarios de contraseñas dentro de tu organización para evaluar la fortaleza de las claves activas en sistemas internos. Si detectas que un usuario tiene como password 123456, debes forzar el cambio inmediato. Este tipo de auditoría también construye cultura en ciberseguridad.

¿Cómo funcionan los diccionarios propios por empresa?

Las cuentas de usuario contienen datos de profile: ID, fecha de cumpleaños, identificación personal. El encargado de ciberseguridad puede tomar esa información, armar un diccionario personalizado y lanzar un ataque controlado para verificar si algún usuario está usando su propio ID como contraseña. Si lo encuentra, ese hallazgo exige acción inmediata.

¿Cómo mitigar ataques de fuerza bruta con rate limit?

El rate limit en intentos de login pone un techo a la automatización que usan los ciberdelincuentes. Ellos lanzan scripts invasivos con cientos o miles de peticiones por minuto; al limitar esa frecuencia, neutralizas el ataque.

¿Qué es un ataque de diccionario? Es una técnica donde el atacante prueba miles de contraseñas comunes contra un usuario hasta encontrar una válida. Se ejecuta con herramientas automatizadas como Burp Suite Intruder.

¿Cómo se ve un ataque de diccionario en Burp Suite?

En la práctica [03:43], se intercepta el request del login con Burp Suite, se envía a la utilidad Intruder, se define la variable de la contraseña como payload y se carga un diccionario. Tras varias peticiones recurrentes, la herramienta identifica una respuesta positiva: la contraseña del usuario admin queda expuesta.

Esto demuestra que la aplicación es vulnerable a peticiones recurrentes sin control alguno. El siguiente paso es aplicar contramedidas desde el código.

¿Cómo aplicar controles de blue team en el código?

Las estrategias de blue team son los controles defensivos que neutralizan el ataque. En el ejemplo [05:24], a partir de la línea siete del código de la aplicación vulnerable se definen parámetros para restringir peticiones recurrentes al endpoint de login.

Al ejecutar de nuevo el ataque desde Burp Suite, a partir de la quinta petición ya no hay respuesta del servidor: el ataque queda suspendido. Con pocas líneas de código, el riesgo está controlado.

Conceptos y habilidades clave del ejercicio

Para cerrar el recorrido, vale la pena ubicar los términos técnicos que aparecieron y entender por qué cada uno suma a la defensa.

  • OWASP Top 10 [00:00]: ranking de los riesgos más críticos en aplicaciones web; Identification and Authentication Failures es uno de ellos.
  • MFA o múltiple factor de autenticación [01:39]: capa adicional que combina algo que sabes con algo que tienes.
  • Passkey y passwordless [01:55]: autenticación moderna basada en criptografía de dispositivo, sin contraseña tradicional.
  • Diccionarios propios [02:46]: listas personalizadas con datos de la empresa para auditar contraseñas internas.
  • Rate limit [03:18]: límite de peticiones por unidad de tiempo en endpoints sensibles.
  • Burp Suite Intruder [04:13]: módulo que automatiza ataques de payload sobre variables específicas de un request.
  • Blue team [05:08]: equipo o estrategia defensiva enfocada en detectar y mitigar ataques.

¿Ya implementaste alguno de estos controles en tus aplicaciones? Cuéntame en los comentarios qué estrategia te ha funcionado mejor para frenar ataques de fuerza bruta.