17 de abril de 2019

Wi-Fi. Detectan fallos en el nuevo estándar WPA3 que le hacen vulnerable a ataques por diccionario, filtrado de contraseña y denegación de servicio.

Desde la presentación del protocolo WPA3 como sucesor del inseguro WPA2, hace apenas un año, el equipo de Dragonblood ya ha encontrado varios errores en el nuevo protocolo que permiten recuperar información encriptada, como la clave de red, contraseñas o chats, entre otros.
El equipo explica incluso cómo las vulnerabilidades van más allá de factores criptológicos, siendo posible, entre otras cosas, suplantar a un usuario legítimo y acceder a su red inalámbrica sin la necesidad de conocer su contraseña.
En la publicación de Dragonblood, equipo que colabora con la Wifi Alliance y la CERT/CC, notificando a los proveedores que emplean la tecnología asociada a WPA3, se describen, fundamentalmente, dos categorías bajo las cuales encuadrar las vulnerabilidades detectadas. En primer lugar, ataques por degradación (downgrade) consistentes en el uso forzado de configuraciones de compatibilidad con sistemas anteriores que prescindan de las mejoras introducidas por las nuevas versiones. En segundo lugar, ataques side-channel que se aprovechan de fugas de información para recuperar la contraseña que está siendo utilizada por la red.
En el caso de los ataques por downgrade, permiten a un atacante forzar a un cliente a utilizar el tradicional sistema de autenticación WPA de 4 vías, que lleva, consecuentemente, a los ataques por fuerza bruta ya conocidos contra dicho sistema de autenticación. Adicionalmente, el handshake propio del protocolo WPA3, conocido como Dragonfly, también es susceptible de un ataque por downgrade, obligando al cliente a utilizar una curva elíptica más débil de la que corresponde al protocolo.
En cuanto a los ataques side-channel, se ataca directamente al handshake del WPA3, aprovechando el método de codificación utilizado para la contraseña. A su vez, se distinguen ataques side-channel basados en caché, que explotan el algoritmo implicado en la generación por hash-to-curve y ataques side-channel basados en el timing, que explotan el algoritmo hash-to-group.
La información que se puede extraer mediante estos ataques, pueden derivar en un ataque exitoso por particionado de contraseñas, que se asemeja a un ataque por diccionario. Según los investigadores que publican el artículo, se trata de un ataque de poco coste económico y temporal, especificando que unos 40 handshake bastarían para romper una contraseña en minúsculas de 8 caracteres.
Ataques por degradación conducentes a ataques por diccionario.
En aras de habilitar una implementación gradual de este nuevo protocolo WPA3, es posible la habilitación de un modo operativo denominado “transicional” que ofrece soporte simultáneo para WPA3 y WPA2. Desafortunadamente, esta configuración es vulnerable a los ataques por degradación mencionados. Particularmente, las pruebas han demostrado que la instalación de un AP falso configurado con WPA2 y el tradicional handshake de 4 vías, fuerza la autenticación del cliente víctima en él, antes de cualquier detección de downgrade, consiguiendo suficiente información de la red como para llevar a cabo un ataque por diccionario exitoso.
Según los investigadores, este ataque puede tener éxito incluso si el cliente ya se encuentra debidamente autenticado en la “versión legítima” de la red que mantiene el protocolo WPA3. Esto quiere decir que si un AP falso con WPA2 es detectado, el cliente víctima tratará de conectarse igualmente, lo que, nuevamente, permite ataques por diccionario.
Ataques side-channel basados en caché
El algoritmo de codificación de contraseñas utilizado por Dragonfly hace uso de ramificaciones condicionales en su código. En el caso de que un atacante pudiera descubrir el ramal lógico que intervino en la generación del código, ello podría llevar a averiguar si la contraseña se encuentra en una determinada iteración del algoritmo de generación de contraseñas. La vulnerabilidad ha sido referenciada bajo CVE-2019-9494.
Ataques side-channel basados en timing
El algoritmo de codificación de contraseñas hace uso de un número variable de iteraciones para codificar la contraseña. El número concreto de estas iteraciones depende de la dirección MAC del punto de acceso (AP) y de la dirección MAC del cliente. Un atacante puede realizar un ataque por timing remoto contra el algoritmo de codificación de contraseñas para determinar el número de iteraciones utilizadas. La información recuperada puede ser útil para la realización de un ataque por particionado a la contraseña, que es similar a un ataque por diccionario.
Ataques por denegación de servicio
Adicionalmente, es posible, mediante el spoofing de multiples direcciones MAC, la saturación con peticiones al punto de acceso que haga uso de WPA3 hasta provocar una denegación de servicio.
Más información:
Fuente: Hispasec.com