Saltar al contenido principal
Algunas amenazas comunes de ciberseguridad incluyen:
  • Ataques de bucket brigade
  • Ataques de repetición
  • Ataques de Cross-site Request Forgery (CSRF o XSRF)
  • Ataques de fuerza bruta
  • Ataques de credential stuffing
  • Ataques de validación de listas
Auth0 ofrece funciones de protección contra ataques que pueden ayudar a proteger contra ciertos tipos de ataques.

Ataques de bucket brigade

Un tipo de amenaza es el ataque de bucket brigade, a veces llamado ataque de “man-in-the-middle”, en el que el atacante se sitúa entre dos partes. Cada parte cree que está interactuando a través de una conexión privada, pero en realidad la interacción está siendo controlada por un tercero atacante. Para que este tipo de ataque tenga éxito, el atacante debe establecer autenticación mutua entre ambas partes. Por lo general, los ataques de bucket brigade implican que el atacante use un router WiFi para interceptar la comunicación de un usuario. El usuario se conecta al router del atacante, luego visita un sitio web e inicia sesión con sus credenciales confidenciales. El atacante guarda las credenciales de inicio de sesión de ese usuario, que luego puede usar para hacerse pasar por él. Algunos ataques de bucket brigade también pueden modificar los datos transmitidos entre la aplicación y el servidor. Los ataques pueden producirse a través de software de prueba y software preinstalado en equipos nuevos, herramientas de actualización de software y otras vulnerabilidades de software. En el peor de los casos, esto podría dar lugar a la ejecución remota de código, la inserción de puertas traseras en el sistema, la instalación de malware, etc. Esto también podría comprometer otros activos de la red. Para ayudar a defenderse contra este tipo de ataque, es importante usar cifrado y autenticación robustos entre la aplicación y el servidor. Mediante el cifrado, el servidor autentica la solicitud de la aplicación presentando un certificado digital, y solo entonces puede establecerse la conexión. Por ejemplo, HTTPS usa la funcionalidad Secure Sockets Layer (SSL) del navegador para proteger el tráfico web. Para descifrar HTTPS, un atacante tendría que obtener las claves utilizadas para cifrar el tráfico de red. Con la configuración de TLS en sus servidores, sugerimos usar las recomendaciones de OpSec de Mozilla, que usan TLSv1.2. Mozilla también proporciona un Generador de configuración de SSL; para usarlo, primero elija en qué plataforma se ejecuta su servidor y luego elija la configuración más moderna en función de lo que pueda admitir su aplicación. Las configuraciones más modernas proporcionan suites de cifrado más robustas para ayudar a prevenir ataques.

Ataques de repetición

Los ataques de repetición (o reproducción) permiten a los atacantes:
  • Obtener acceso a una red y a información a la que, de otro modo, no podrían acceder fácilmente
  • Completar una transacción duplicada
Se trata de ataques al protocolo de seguridad en los que se reutilizan transmisiones de datos de un remitente distinto hacia el sistema receptor previsto. Estos ataques engañan a los participantes para que crean que la transmisión de datos se completó correctamente. Los ataques de repetición pueden evitarse mediante el uso de tokens de sesión. Sin embargo, si estas credenciales se roban del almacenamiento local (como durante un ataque XSS), hay formas de evitar que alguien conserve un token válido indefinidamente:
  • Establecer un tiempo de expiración corto para los tokens
  • Proporcionar una forma de agregar a la DenyList los tokens que se hayan usado (y posiblemente incluso a los usuarios)
  • Usar contraseñas de un solo uso
La especificación JWT proporciona el campo jti como una forma de evitar ataques de repetición. Aunque los tokens de Auth0 actualmente no devuelven jti, puedes agregar tokens a la DenyList usando jti para evitar que un token se use más veces de las especificadas. De esta forma, estás implementando algo similar a un (piensa en la firma del token como el nonce). Si se roba un token o se usa más veces de las especificadas, debe agregarse a la DenyList. Esto evita que un token válido se utilice de forma maliciosa. Una vez que el token expire, el atacante ya no podrá suplantar al usuario. También puedes evitar los ataques de repetición usando contraseñas de un solo uso. Con Auth0, puedes usar la autenticación , que se basa en códigos de un solo uso y enlaces por correo electrónico en lugar de contraseñas tradicionales. Auth0 también proporciona (MFA), que utiliza contraseñas de un solo uso como segundo factor de autenticación y que pueden enviarse mediante notificaciones push y mensajes de texto.

Cross-site Request Forgery

Un ataque de Cross-site Request Forgery (CSRF o XSRF) ocurre cuando un programa malicioso hace que el navegador web de un usuario realice una acción no deseada en un sitio de confianza en el que el usuario está autenticado en ese momento. Este tipo de ataque se dirige específicamente a solicitudes que modifican el estado para desencadenar acciones, en lugar de obtener datos de usuario, ya que el atacante no tiene forma de ver la respuesta de la solicitud falsificada. Una forma de verificar las solicitudes que se envían es utilizar el parámetro state para validar la respuesta.

Más información