La autenticación multifactor (MFA) no resuelve la amenaza de apropiación de cuentas. Añade obstáculos, sí, pero atacantes decididos han descubierto formas ingeniosas de eludir todos los factores de autenticación disponibles. En lugar de resolver la autenticación, deberíamos pensar en la MFA como una forma de ampliar la superficie de ataque: cada factor introduce un nuevo sistema de dependencias, nuevas fuentes de errores y vulnerabilidades y nuevas oportunidades para la ingeniería social. Lamentablemente, muchas organizaciones de seguridad ven a MFA como antes veíamos el perímetro de la red, como un baluarte que resuelve una amplia gama de ataques. La falacia del perímetro seguro, expuesta por los defensores de la seguridad de confianza cero , permitía a los atacantes explotar vulnerabilidades dentro de las redes para moverse lateralmente y escalar privilegios. Del mismo modo, la falacia que MFA resuelve para la apropiación de cuentas impide que las organizaciones de seguridad reconozcan las debilidades de MFA y las muchas vulnerabilidades restantes del sistema que exponen las cuentas de los usuarios a la apropiación criminal. Al observar cómo los atacantes eluden la MFA, este documento técnico demuestra que la MFA hace que otras medidas de seguridad sean aún más importantes, a saber, la mitigación de bots, las protecciones de la cadena de suministro de JavaScript y el monitoreo del riesgo contextual, técnicas que refuerzan las ventajas de seguridad de la MFA al tiempo que reducen la fricción que impone a los usuarios.
A pesar de sus debilidades, la MFA llegó para quedarse y por una buena razón: la autenticación basada únicamente en contraseña ha fallado claramente.
Nosotros, los humanos, simplemente no podemos recordar largas cadenas aleatorias de caracteres. Como resultado, tomamos atajos: elegimos contraseñas fáciles de recordar y predecibles, reutilizamos contraseñas en diferentes aplicações y garabateamos contraseñas en notas adhesivas. Si bien las empresas mitigan este riesgo al imponer requisitos de longitud y complejidad de las contraseñas, la memoria humana tiene límites; incluso frente a requisitos de complejidad, encontramos formas de ser predecibles: poner en mayúscula solo la primera letra, insertar caracteres especiales en lugar de caracteres alfanuméricos de aspecto similar ($ por S), agregar dígitos que se puedan adivinar, como 123, al final de una contraseña. (Véase los resultados de la investigación sobre la previsibilidad de las contraseñas ).
Los humanos también compartimos defectos que nos hacen vulnerables a la ingeniería social. Entregamos nuestras contraseñas cuando los atacantes juegan con nuestra confianza, nuestro deseo de conformarnos, nuestro respeto por la autoridad y nuestra voluntad de ayudar. Resulta que a veces la gente te da sus contraseñas si se las pides, algo que puedes disfrutar viendo en este divertido vídeo de Jimmy Kimmel Live .
Dadas estas debilidades de la autenticación basada en contraseña, las agencias gubernamentales y las asociaciones industriales están impulsando la adopción de MFA. En mayo de 2021, el presidente Biden emitió una orden ejecutiva que exige a las agencias federales adoptar la MFA en un plazo de 180 días, y la Agencia de Seguridad de Infraestructura y Ciberseguridad (CISA) está promoviendo la MFA para las empresas privadas. El Consejo de Normas de Seguridad de la Industria de Tarjetas de Pago exige mediante su Estándar de seguridad de datos v4.0 que las organizaciones implementen MFA para todo acceso a los datos del titular de la tarjeta de crédito antes del 31 de marzo de 2025.
Dado que las claras ventajas de la MFA sobre la autenticación basada únicamente en contraseña impulsan su adopción, los profesionales de seguridad deben prestar cada vez más atención a las desventajas de la MFA, a cómo amplía la superficie de ataque y crea nuevas vulnerabilidades que permiten a los atacantes eludir los controles de autenticación.
MFA se define como la aplicação de dos o más factores en el proceso de autenticación. Por factor entendemos una forma de demostrar que eres quien dices ser a través de:
Hay innumerables formas de implementar MFA y muchas de ellas abren nuevas superficies de ataque o dejan las aplicações expuestas a las mismas vulnerabilidades que caracterizan la autenticación basada únicamente en contraseña.
Hay innumerables formas de implementar MFA y muchas de ellas abren nuevas superficies de ataque o dejan las aplicações expuestas a las mismas vulnerabilidades que caracterizan la autenticación basada únicamente en contraseña.
La implementación más extendida de MFA utiliza SMS para enviar a los usuarios una contraseña de un solo uso (OTP), que en principio prueba la posesión de un teléfono inteligente. Generalmente, un usuario iniciará el inicio de sesión con un nombre de usuario y una contraseña, lo que activará la aplicación para enviar el mensaje de texto. Luego, el usuario ve el OTP y lo ingresa en la aplicación, completando la autenticación y generando un token de sesión que será válido por una duración determinada.
La implementación del factor de posesión a través de SMS no logra cerrar varias vulnerabilidades clave. Debido a que el usuario ingresa el OTP y la contraseña en la aplicação y la aplicação envía el OTP de regreso al servidor a través del mismo canal de comunicación utilizado por la aplicação, un atacante que haya comprometido la aplicação, el dispositivo o la red podrá acceder a la contraseña, el OTP y el token de sesión.
Los atacantes utilizan muchas técnicas bien establecidas y aún prevalecientes para tomar el control de los dispositivos infectándolos con malware, lo que da como resultado un ataque "man-in-the-browser" (MitB). La ejecución de código en el navegador permite a los atacantes obtener la contraseña y el OTP que pueden autenticar en nombre del usuario. Alternativamente, el atacante puede permitir que se complete la autenticación y luego robar el identificador de sesión, que podría usarse para eludir la autenticación y acceder a la cuenta de un usuario. (Para conocer las tendencias recientes en malware que infecta puntos finales, consulte el informe de F5 Labs sobre BlackGuard Infostealer ).
Al infectar una aplicação, los atacantes pueden apoderarse de las cuentas de los usuarios en masa. Además de comprometer la infraestructura de una empresa a través de malware, los delincuentes pueden obtener acceso a los datos de las aplicação al comprometer cualquiera de las bibliotecas de código que componen la aplicação, una táctica conocida como ataque del lado de la oferta.
En un ataque a la cadena de suministro de software, el atacante generalmente apunta a un proveedor externo confiable o un repositorio de código abierto que proporciona componentes de software (bibliotecas, marcos, servicios) a la organización objetivo. El atacante inyecta malware en el componente que luego se integra en la aplicação. Este ataque puede ser efectivo porque no todos los proveedores y equipos de código abierto tienen las habilidades y los recursos necesarios para implementar prácticas de codificación segura.
Las aplicações web y móviles son particularmente vulnerables a los ataques a la cadena de suministro porque generalmente incluyen docenas de scripts de terceros, muchos de ellos agregados a las páginas de forma dinámica mediante administradores de etiquetas. Estos scripts, que cambian con frecuencia y sin previo aviso, no pasan por los controles de seguridad de código de una organización. Si un atacante puede comprometer cualquiera de estos scripts, obtiene control total de una aplicação, lo que significa que puede leer la entrada del usuario, acceder a datos en la memoria del navegador o secuestrar el recorrido del usuario para dirigirlo a una aplicación maliciosa sin previo aviso.
Estos ataques a la cadena de suministro , como Magecart, han provocado violaciones de seguridad de cientos de miles de credenciales. Al igual que los ataques MitB, estos ataques a la cadena de suministro funcionan contra cualquier solución MFA en la que el token que demuestra la posesión se ingresa en la aplicação, lo que es típico de la mayoría de las implementaciones que utilizan OTP. Dado que el código malicioso lee la entrada del usuario, podría robar tanto la contraseña estática como el OTP, así como cualquier otra información personal o financiera recopilada por la aplicação.
Debido a que con la autenticación basada en SMS la contraseña, el OTP y el token de sesión viajan a través de la misma conexión de red, esta forma de MFA sigue siendo vulnerable a ataques del tipo "man-in-the-middle" (MitM) que utilizan vectores de ataque típicos como envenenamiento de DNS, envenenamiento de ARP y puntos de acceso inalámbricos fraudulentos.
Uno de los ataques más comunes y exitosos contra la MFA basada en SMS utiliza ingeniería social para establecer un ataque MitM a través de servidores proxy de phishing en tiempo real (RTPP).
En este ataque, el estafador utiliza correos electrónicos de phishing para engañar a un usuario para que visite un sitio controlado por el atacante, donde el usuario ingresa debidamente sus credenciales. Hasta ahora, esta táctica es idéntica a un ataque de phishing para el robo de credenciales, pero para evitar la MFA se requiere un paso adicional. Cuando el usuario ingresa su nombre de usuario y contraseña en la aplicación, el atacante reenvía esas credenciales a la aplicação de destino, que luego emite una segunda solicitud de factor al usuario. Es muy probable que el usuario apruebe la solicitud porque cree que se está autenticando en una aplicação confiable; el usuario hace clic en el botón de aprobación o introduce el token en la aplicación. En cualquier caso, el atacante obtiene acceso a la aplicação. (Para ver una demostración del ataque, vea este vídeo de Kevin Mitnick).
Con la automatización y la propensión de los usuarios a caer en estafas de phishing, los ataques RTPP pueden tener éxito a gran escala. (Para obtener más datos sobre el crecimiento de los servidores proxy de phishing en tiempo real, consulte el Informe sobre phishing y fraude de F5 Labs ).
Además de no poder cerrar muchas de las vulnerabilidades existentes de la autenticación basada únicamente en contraseña, el uso de SMS como segundo factor expone una aplicação a vectores de ataque adicionales.
Quizás el ataque más obvio contra la autenticación basada en posesión es el robo de un dispositivo físico. Un delincuente que roba un teléfono podría obtener acceso a una OTP que se muestra en una notificación, incluso con el teléfono bloqueado. Muchas víctimas de robo de teléfonos han perdido los fondos de sus cuentas bancarias.
Los delincuentes no necesitan la posesión física real de un teléfono para obtener acceso a las OTP enviadas por mensaje de texto. El intercambio de SIM , también conocido como secuestro de SIM o portabilidad de SIM, permite a los atacantes eludir la autenticación basada en SMS, que es la forma más popular de MFA utilizada en aplicaciones orientadas al cliente. En un ataque de intercambio de SIM, el estafador explota la capacidad de los proveedores de servicios de telecomunicaciones de transferir un número de teléfono a otro dispositivo, una característica que resulta beneficiosa cuando se pierde o se roba un teléfono.
El estafador comienza recopilando información personal de la víctima a través de investigación en línea, phishing o ingeniería social. Con esta información, el atacante convence a la compañía telefónica para que transfiera el número de teléfono de la víctima a la SIM del estafador. O bien, el atacante podría entrar en la cuenta del usuario con el proveedor de servicios utilizando credential stuffing, adivinación por fuerza bruta o un ataque de diccionario.
Al controlar el servicio telefónico de la víctima, el estafador recibirá todos los SMS y llamadas de voz destinados a ella. Esto permite al estafador interceptar cualquier token de seguridad enviado vía mensaje de texto.
Los dispositivos de token de hardware son dispositivos especializados, normalmente bastante pequeños, que muestran un OTP, que el usuario escribe en una aplicação para su autenticación. Estos dispositivos proporcionan un medio para demostrar posesión sin requerir comunicación de la aplicação al usuario, lo que elimina una de las principales vulnerabilidades de la autenticación basada en SMS.
En lugar de confiar en enviar la OTP al usuario para cada inicio de sesión, el dispositivo genera un flujo de OTP basado en un valor inicial y un algoritmo. El valor de la semilla en sí se comparte entre el dispositivo y el servicio de autenticación durante la configuración. El valor de la semilla se aumenta con un contador que se incrementa con un evento, como una solicitud de inicio de sesión, o una duración de tiempo como 60 segundos . A estos los llamamos respectivamente OTP basada en eventos (EOTP) y OTP basada en tiempo (TOTP). EOTP y TOTP son ambos tipos de OTP basado en hash (HOTP) porque el contador y la semilla juntos se pasan a una función hash que genera una cadena de dígitos aparentemente aleatoria, que, cuando se implementa correctamente, no revela un patrón predecible.
Al evitar la necesidad de enviar el OTP mediante texto, los tokens de hardware hacen imposible capturar el OTP antes de que llegue al usuario a través de medios como el intercambio de SIM. Sin embargo, debido a que el usuario debe ingresar el OTP en la aplicación, que transporta el OTP al servicio de autenticación utilizando el mismo canal de comunicación que la contraseña, la mayoría de las otras vulnerabilidades de la autenticación basada en SMS permanecen. El atacante puede obtener acceso a la contraseña y al OTP comprometiendo el punto final, la red o la aplicação de las mismas formas que lo haría con los OTP enviados por mensaje de texto.
El ataque más común contra la autenticación basada en SMS, los proxies de phishing en tiempo real, funciona igual de bien con los OTP generados en dispositivos de hardware, ya que se engaña al usuario para que escriba el OTP en un sitio falso independientemente de si el OTP aparece en un teléfono o en un dispositivo especializado.
Si bien los dispositivos de hardware eliminan la posibilidad de que los atacantes capturen el OTP en tránsito hacia el usuario, los dispositivos dependen de valores de semilla que pueden verse comprometidos. Los atacantes pueden acceder al valor de la semilla obteniendo acceso físico a los dispositivos (ver la mención de un ataque de microscopio electrónico en 12+ formas de hackear MFA ), comprometiendo la base de datos utilizada por el servicio de autenticación o interceptando el proceso de configuración en el que se acuerda el valor de la semilla entre el dispositivo y el servicio de autenticación.
Las aplicaciones de autenticación pueden funcionar de forma muy similar a los tokens de hardware, generando un flujo de OTP basado en una semilla y un algoritmo iniciales, lo que evita la necesidad de comunicar la semilla a través de un canal vulnerable, pero también pueden ir un paso más allá al utilizar un canal alternativo para comunicar la OTP. En este escenario, luego de la verificación exitosa de un nombre de usuario y una contraseña, el servicio de autenticación envía una notificación push a la aplicación de autenticación, que solicita al usuario que apruebe la solicitud. Tras la aprobación, la aplicación de autenticación envía el OTP directamente al servicio de autenticación sin necesidad de que el usuario lo escriba en la aplicação. La comunicación entre la aplicación de autenticación y el servicio de autenticación se realiza a través de una conexión distinta.
El uso de un canal de comunicación alternativo significa que un atacante no puede acceder al OTP comprometiendo la aplicação, ya que el OTP nunca se ingresa en la aplicação. También es más difícil obtener la contraseña y el OTP al comprometer la conexión de red porque la contraseña y el OTP se envían a través de canales seguros distintos. Sin embargo, comprometer el punto final podría permitir que un atacante acceda tanto a la contraseña como al OTP si la aplicação en sí y la aplicación de autenticación se ejecutan en el mismo dispositivo. (Consulte el informe de F5 Labs sobre malware que compromete Google Authenticator).
Lamentablemente, las aplicaciones de autenticación no impiden el uso de servidores proxy de phishing en tiempo real. El usuario todavía es engañado para que ingrese su nombre de usuario y contraseña en un sitio falso a través de un mensaje de texto de phishing. Al ingresar sus credenciales, la aplicação enviará una solicitud a la aplicación de autenticación. Dado que el usuario cree que está iniciando sesión en una aplicação confiable, es probable que apruebe la solicitud, lo que completa la autenticación. Aunque el atacante nunca ve el OTP, el proxy del atacante ahora tendrá control sobre una sesión autenticada, lo que le dará al atacante acceso a la cuenta del usuario. (Para obtener más información sobre RTPP y la autenticación de notificaciones push, consulte este artículo sobre plataformas de phishing en Hacker News).
Además, la facilidad de uso de las aplicaciones de autenticación ha creado otro medio por el cual los atacantes pueden vencer la MFA a través de la ingeniería social. En los ataques de bombardeo MFA o ataques de fatiga MFA, el atacante engaña al objetivo para que le dé su código de autenticación enviándole múltiples solicitudes fraudulentas de código. El atacante generalmente utiliza herramientas automatizadas para generar una gran cantidad de solicitudes, abrumando a la víctima con una cantidad excesiva de notificaciones o mensajes pidiéndole que ingrese su código de autenticación.
Si bien el bombardeo de MFA puede engañar a un usuario para que ingrese un OTP desde un mensaje SMS o un dispositivo de hardware, es particularmente efectivo contra aplicaciones de autenticación porque el usuario puede detener fácilmente el flujo de solicitudes con solo presionar un botón.
Hay incluso más formas de implementar la autenticación biométrica que la autenticación basada en posesión. No sólo existen numerosos métodos para activar la solicitud de autenticación y comunicar esos datos al servicio de autenticación, sino que también existen muchas formas de biometría, desde huellas dactilares hasta escaneos de iris. El hardware necesario para realizar el escaneo puede estar incorporado al dispositivo que ejecuta la aplicação, como una cámara con lector de huellas dactilares en una computadora portátil, o requerir hardware separado. El lector biométrico puede ser controlado por el sistema operativo o una aplicação especializada. Dadas estas variaciones en la implementación, es difícil modelar cada vulnerabilidad. Sin embargo, es importante darse cuenta de que, a pesar de la reputación de la autenticación biométrica de ofrecer una mayor seguridad, todavía existen vulnerabilidades muy claras en la autenticación biométrica.
De hecho, uno de los métodos más populares para eludir el factor de posesión, los servidores proxy de phishing en tiempo real, también se pueden utilizar para eludir la biometría. Una vez que el usuario inicia sesión en una aplicação controlada por un atacante, pensando que es una aplicação confiable, esa aplicação utilizará las credenciales para iniciar sesión en la aplicação en nombre del usuario, lo que activará la solicitud de autenticación biométrica. Mientras el usuario crea que se está autenticando en la aplicação real, es probable que proceda con la autenticación biométrica, dándole al atacante acceso a la cuenta. (El estándar FIDO2 WebAuthn , creado por el W3C, incluye protección contra phishing, aunque todavía no ha sido ampliamente adoptado por las aplicações web.)
La posibilidad de anular la autenticación biométrica comprometiendo el punto final, la aplicação o la red depende de la implementación específica. En la medida en que el sistema de autenticación biométrica se ejecuta en el mismo dispositivo que la aplicação, comprometer el punto final podría romper la autenticación. En la medida en que la aplicação gestiona el proceso de autenticación biométrica, comprometer la aplicación podría romper la autenticación. Y en la medida en que la autenticación biométrica se envía a través del mismo canal de comunicación utilizado por la aplicação, comprometer la red puede romper la autenticación. En resumen, la autenticación biométrica requiere un modelado de amenazas detallado específico para la implementación.
La autenticación biométrica abre una clara vulnerabilidad a la copia y la suplantación de identidad. Considere las huellas dactilares. Los dejamos por todos lados, en casi todas las superficies lisas que tocamos. Los dejamos en los pomos de las puertas, en los restaurantes, en la basura. Recoger huellas dactilares de estas superficies es trivial; todos lo hemos visto innumerables veces en los dramas policiales. Replicar huellas dactilares es igualmente trivial utilizando cualquier cosa, desde una impresora 3D hasta ositos de goma .
En el caso de otras formas de biometría, existe una competencia en curso entre los investigadores de seguridad que revelan cómo se puede falsificar la biometría y los proveedores que desarrollan tecnología anti-falsificación. Las máscaras 3D han engañado a los lectores faciales en los aeropuertos, aunque estas máscaras pueden detectarse mediante controles de vida y otros métodos. Asimismo, los atacantes han utilizado grabaciones de voz con síntesis de voz deepfake para eludir los sistemas de reconocimiento de voz, aunque es posible detectar estas falsificaciones a través de las sutiles distorsiones añadidas por los dispositivos de grabación. Incluso las imágenes del iris pueden reproducirse y falsificarse utilizando lentes de contacto cosméticos o un ojo artificial, aunque varias técnicas anti-falsificación (incluidas distinciones de iluminación entre tejido humano y materiales sintéticos) pueden detectar la falsificación. En resumen, la seguridad de los lectores biométricos dependerá del estado actual de la tecnología contra la suplantación de identidad y la prevención de la misma.
Incluso si viviéramos vidas de ermitaños y evitáramos tocar físicamente las superficies, los atacantes podrían robar nuestros datos biométricos. Mediante malware, ingeniería social y explotación de vulnerabilidades sin parchear, los atacantes han robado miles de millones de nombres de usuario y contraseñas. Si los atacantes pueden violar las bases de datos que almacenan nuestras contraseñas, con seguridad violarán las bases de datos que almacenan nuestros datos biométricos. Y una vez que una sola violación expone nuestros datos biométricos, puede que no sea seguro usarlos para autenticación, dependiendo de si se puede detectar su falsificación.
Lo que agrava el riesgo de seguridad que supone la copia y la suplantación es el hecho de que no podemos cambiar fácilmente las características que miden los datos biométricos. Cuando un atacante roba una contraseña, podemos cambiarla. Si un atacante roba un dispositivo OPT o un teléfono celular, podemos reemplazarlo y restablecer la semilla. Sin embargo, si un atacante obtiene acceso a nuestra huella dactilar, huella de la palma, imagen facial o cualquier otra característica biológica y aprende cómo falsificarlas de manera efectiva, no podremos cambiar esas características físicas sin sufrir un dolor significativo.
Si bien la MFA es una mejora con respecto a la autenticación de un solo factor basada en contraseña, aún es vulnerable, al menos en las formas de implementación actualmente populares. Así que, en lugar de pensar en la MFA como el final del recorrido de seguridad, piense en ella como un nuevo comienzo. Las mejores prácticas de seguridad de las aplicaciones siguen siendo tan relevantes como siempre, incluido el modelado de amenazas, las revisiones de código, el escaneo de vulnerabilidades, las pruebas de penetración y el trabajo en equipo rojo. En el modelado de amenazas, observe cada aspecto del proceso de autenticación y gestión de sesiones, teniendo en cuenta los numerosos puntos de ataque, desde el almacén de identidades hasta la seguridad de datos. Los ciberataques probablemente se dirigirán al eslabón más débil. En particular, las vulnerabilidades de MFA apuntan a algunas áreas clave de preocupación que requieren más atención: mitigación de la automatización, protección contra ataques a la cadena de suministro de JavaScript y consideración del contexto de riesgo.
Los delincuentes dependen de los bots para escalar varios ataques clave a MFA, incluidos el credential stuffing, los servidores proxy de phishing en tiempo real y el bombardeo de MFA, lo que significa que mitigar los bots es clave para proteger todas las formas de MFA.
En los ataques de credential stuffing , según la definición de OWASP , los delincuentes obtienen credenciales robadas de infracciones anteriores, generalmente a través de compras en la red oscura, y prueban esas credenciales comparándolas con los inicios de sesión de otras aplicações. Debido a que miles de millones de credenciales han sido expuestas a través de violaciones, los delincuentes maximizan sus ganancias automatizando las pruebas con bots para poder probar cantidades masivas de credenciales. La Oficina Federal de Investigaciones , la Comisión de Bolsa y Valores y el Fiscal General de Nueva York han emitido advertencias sobre los riesgos financieros del credential stuffing, y la Asamblea Global de Privacidad , una asociación de más de 130 agencias reguladoras, declaró que el credential stuffing es una amenaza global a la privacidad.
Prevenir el credential stuffing es tan importante para la MFA como para la autenticación basada solo en contraseña. El objetivo principal de MFA es el uso de más de un factor, pero si no logras proteger el primer factor, entonces te quedas con un solo factor. Una vez que un atacante descubre la contraseña de un usuario, la autenticación de dos factores se convierte en autenticación de un solo factor y se pierde la defensa en profundidad.
Además, mitigar los bots es fundamental porque los delincuentes los utilizan para atacar más que solo contraseñas. De hecho, los bots son una herramienta clave para lanzar ataques de phishing en tiempo real exitosos, que son los mecanismos más comunes para derrotar a MFA. Siempre que un usuario es víctima de un correo electrónico de phishing que lo induce a ingresar sus credenciales en un sitio falso, el atacante deberá reenviar esas credenciales a la aplicação de destino para generar la solicitud de MFA, ya sea que esa solicitud involucre SMS, una aplicación de autenticación o biometría sofisticada. Para reenviar la solicitud rápidamente y a gran escala, el delincuente necesitará automatizar el proceso, lo que significa que la solicitud se reenviará a la aplicação desde un bot. (Para obtener una descripción general de los servicios que utilizan bots para evitar OTP, consulte la publicación de Krebs on Security El auge de los bots de intercepción de contraseñas de un solo uso). Esto significa que al evitar que bots no deseados envíen credenciales, una organización puede debilitar la eficacia de los servidores proxy de phishing en tiempo real y proteger de forma más eficaz los factores de autenticación de posesión e inherencia.
Otra forma obvia en que los delincuentes usan bots para atacar a MFA es a través del bombardeo de MFA. En este contexto, el bombardeo implica generar solicitudes de inicio de sesión en grandes volúmenes para desencadenar tantas solicitudes de autenticación que el usuario cumplirá por error o simplemente para detener la molestia. Para generar una cantidad suficientemente grande de solicitudes para muchos usuarios para que el ataque sea rentable, el delincuente necesitará automatizar, lo que nuevamente significa que las solicitudes de inicio de sesión que lleguen a su sitio serán creadas por bots.
Como ilustran estos ejemplos, casi cualquier ataque contra MFA dependerá de bots para tener éxito a gran escala, lo que significa que las organizaciones que implementan MFA deben tomar en serio la mitigación de bots.
Lamentablemente, muchas organizaciones no aprecian la sofisticación de los bots y la determinación de los delincuentes de reequiparlos con gran frecuencia para evitar la detección. En cambio, muchas empresas dependen de técnicas de mitigación de bots que ya no funcionan, como CAPTCHA, listas de direcciones IP denegadas y huellas dactilares de encabezados HTTP.
CAPTCHA no hace mucho por la protección contra bots más allá de molestar a los clientes reales, ya que los bots pueden evitar estos acertijos utilizando servicios de resolución de CAPTCHA de bajo costo que se basan en el aprendizaje automático y en granjas de clics. Simplemente haga una búsqueda en Internet sobre servicios de resolución de CAPTCHA y encontrará al menos una docena que compiten en precio y velocidad. Para obtener una buena información sobre estos servicios, consulte el artículo de Dan Woods, director de inteligencia de F5, titulado I Was a Human CAPTCHA Solver . Aún más interesante, ChatGPT logró eludir el CAPTCHA mediante ingeniería social para que una persona lo resolviera en su nombre.
Para las organizaciones que dependen de listas de denegación de IP basadas en WAF para mitigar los bots, la tarea es igualmente abrumadora. Hay servicios disponibles que ofrecen a los creadores de bots decenas de millones de direcciones IP residenciales destinadas a eludir la detección de bots. Estos servicios se anuncian como proxies residenciales rotativos; el bot envía solicitudes HTTP al proxy, de forma similar a como muchos navegadores corporativos envían solicitudes a través de proxies de reenvío, y el servicio rota continuamente la dirección IP pública utilizada para enviar la solicitud al sitio web o la API. Anteriormente, los bots solían usar proxies de centros de datos, a menudo de servicios en la nube, que son bien conocidos y fáciles de identificar. Sin embargo, estos nuevos servicios de proxy utilizan direcciones IP residenciales de la misma área geográfica que sus clientes. Debido a que cada dirección IP podría representar simultáneamente un bot o un cliente válido debido al NAT de los proveedores de servicios de Internet (ISP), no es posible bloquear todas estas direcciones IP sin rechazar a sus clientes reales. (Para investigar cómo estos servicios obtienen estas direcciones IP, consulte el documento Su teléfono es mi proxy ).
Intentar detectar bots basándose en las diferencias en el orden de los encabezados tampoco funciona ya porque los bots han descubierto el truco. De hecho, varios proyectos de código abierto, incluidos stealth-puppeteer y undetected-chromedriver , hacen el trabajo de corregir el orden de los encabezados, lo que hace que sea fácil evitar las detecciones al usar estos populares marcos de automatización.
Hoy en día, la detección de bots avanzados requiere una recopilación de señales avanzada, monitoreo 24/7, aprendizaje automático y una reacción rápida a la reestructuración de los bots. Sin una solución de gestión de bots dedicada, una defensa que detecte y reaccione rápidamente a la reestructuración, los bots permitirán a los delincuentes escalar de manera efectiva los ataques contra MFA.
Casi cualquier forma de MFA imaginable fallará si se compromete la aplicação . Si el atacante inserta código en una aplicação, se acabó el juego. El atacante puede capturar credenciales y otras entradas de MFA, apoderarse de sesiones robando identificadores de sesión o extraer datos directamente de la aplicação. Debido a que las aplicações web modernas generalmente están compuestas por más de 20 archivos JavaScript , en su mayoría de terceros y no revisados por el equipo de seguridad de aplicação de la organización, el riesgo de que la aplicação se vea comprometida a través de ataques a la cadena de suministro de JavaScript es mayor de lo que a menudo se cree.
Los protocolos de seguridad del lado del cliente existentes son demasiado estáticos para defender las aplicaciones web dinámicas actuales. La Política de seguridad de contenido (CSP) restringe las acciones de los scripts de maneras que podrían prevenir ataques a la cadena de suministro de JavaScript, pero la CSP podría fácilmente dañar la funcionalidad de un sitio si un proveedor externo actualiza un script dinámicamente en formas contrarias a las restricciones de la CSP. Si bien es posible que desees que un script falle si infringe una política de seguridad, esa falla en producción podría afectar dramáticamente a los clientes. (Ver ¿Por qué está fallando la CSP? ) Sub-resource Integrity (SRI), otro protocolo de web security , es aún menos factible para el contenido dinámico de terceros ya que requiere actualizar las etiquetas de script con el valor hash cada vez que cambia un script, lo que no es posible si los cambios ocurren sin previo aviso. De hecho, SRI está destinado a evitar el tipo de actualizaciones de scripts de las que dependen la mayoría de las aplicações modernas.
Sin controles claros para eliminar las vulnerabilidades de la cadena de suministro de JavaScript, las organizaciones necesitan ser creativas para encontrar medios para al menos monitorear el riesgo. Las organizaciones pueden documentar mejor los scripts en su sitio y clasificarlos por riesgo según la fuente y la frecuencia del cambio. Los scripts agregados a través de administradores de etiquetas deben someterse a revisiones periódicas para evaluar el riesgo. Se pueden obtener herramientas de monitoreo que rastrean el comportamiento de los scripts utilizando monitoreo sintético, CSP en modo de informe o agentes basados en JavaScript que se ejecutan en el navegador.
Debido a que los scripts de terceros cambian con tanta frecuencia y sin posibilidad de revisión de seguridad, es importante que las organizaciones monitoreen continuamente sus aplicações para detectar comportamientos sospechosos, como scripts que leen datos confidenciales y los filtran a dominios no confiables. Sin esta supervisión de los ataques a la cadena de suministro de JavaScript, ninguna forma de MFA mantendrá a los usuarios seguros.
El objetivo de MFA debería ser mejorar la seguridad en lugar de cargar a los clientes con un teatro de seguridad inútil. Al adaptar los requisitos de inicio de sesión al riesgo contextual, las organizaciones pueden evitar castigar continuamente a valiosos clientes recurrentes con requisitos de MFA y, en cambio, facilitar su experiencia con sesiones de usuario extendidas, dándoles la bienvenida con una experiencia personalizada y sin esfuerzo, como la TSA agiliza el proceso para viajeros confiables con TSA PreCheck.
El riesgo contextual tiene muchas dimensiones:
Si el usuario tiene un historial comprobado de buen comportamiento y accede a un sitio desde el mismo lugar, el mismo dispositivo, la misma hora del día, con un comportamiento similar, utilizando su funcionalidad habitual, es posible que ni siquiera sea necesario exigirle que inicie sesión; en su lugar, se debe realizar una autenticación silenciosa continua para extender la sesión para conveniencia del usuario. Si el contexto se desvía de lo normal, lo que indica un mayor riesgo, tiene la posibilidad de agregar políticas adaptativas a su aplicação para aumentar las demandas de seguridad en pasos medidos: requerir un inicio de sesión con contraseña, requerir 2FA, marcar una cuenta para revisión, alertar al usuario por SMS o correo electrónico sobre el inicio de sesión o bloquear la cuenta para obligar al usuario a contactar al soporte.
Con demasiada frecuencia, la duración de la sesión es un período determinado independientemente del riesgo contextual, lo que permite que cualquier persona con un token de sesión continúe accediendo a los datos para los que está autorizado, ignorando el riesgo de session hijacking. Un enfoque más seguro es seguir los principios de confianza cero: asumir las infracciones y monitorearlas continuamente. Si el contexto cambia dentro de una sesión, finalice la sesión antes y requiera autenticación adicional, cuyo rigor dependerá de cuánto haya cambiado el contexto y de la sensibilidad de los datos.
En consonancia con el cliché de que la seguridad es un viaje, MFA ha creado varias bifurcaciones en el camino, proporcionando opciones adicionales que, cuando se implementan correctamente, mejoran la seguridad de maneras significativas. Sin embargo, ninguna forma de MFA, no importa cuántos factores contenga, lo bien implementada que esté o lo costosa que sea, nos permite saltear el viaje para llegar al destino. Seguramente veremos más proclamaciones sobre la muerte de las contraseñas y más publicidad acerca de que las nuevas técnicas de MFA harán que la autenticación sea segura de una vez por todas, pero seguirán existiendo formas para que atacantes decididos eviten las nuevas tecnologías.
En su camino hacia una mejor protección de aplicações críticas, usted cuenta con un socio en F5. Los servicios de nube distribuida de F5 incluyen Bot Defense para la mitigación de bots, Client-Side Defense para monitorear ataques a la cadena de suministro de JavaScript y Authentication Intelligence para reconocer a los usuarios que regresan y cuantificar el riesgo contextual. Con el soporte de F5, puede garantizar la seguridad de MFA y al mismo tiempo optimizar la experiencia del cliente. Obtenga más información sobre F5 Distributed Cloud Services y regístrese para hablar con nuestro equipo.
La comunidad de F5 para foros de discusión y artículos de expertos.