jueves, 20 de junio de 2013

¿Usas tu iPhone como punto de acceso WiFi?

Investigadores de la universidad alemana de Friedrich-Alexander han descubierto como genera iOS la clave por defecto cuando se activa la conexión de red compartida.

Cuando necesitamos que nuestro terminal móvil actúe de proveedor de acceso a red creamos, mediante la opción de "Compartir Internet", un punto de acceso WiFI como el que tendríamos en casa. Si no indicamos una clave de acceso o técnicamente una PSK (Pre-shared Key) nuestro teléfono creará una por defecto para nuestra comodidad.

En iOS, cuando dicha clave es generada por el sistema esta se compone de una palabra de entre 4 y 6 caracteres seguida de una cifra de cuatro dígitos. Por ejemplo: rich3137.

Hasta aquí los investigadores encontraron una primera debilidad. La estructura de la clave de acceso generada es débil si se efectúa un ataque de fuerza bruta sobre un WPA handshake, la fase de negociación de la conexión entre cliente y punto de acceso configurado con cifrado WPA.

Si este proceso es capturado por un atacante, este podría ejercer un ataque de fuerza bruta sobre los paquetes capturados e intentar averiguar la clave de acceso o PSK de ese punto de acceso.

El problema se agrava cuando descubrieron que la palabra que va delante del grupo de cuatro dígitos no es aleatoria. Mediante el reseteo continuo del punto de acceso, los investigadores fueron anotando las palabras usadas para componer la clave de acceso y advirtieron que podrían provenir de un diccionario también usado por un videojuego denominado "Scrabble". Este diccionario contiene 52.500 entradas y fue usado con un porcentaje total de éxito para extraer la clave de acceso.

No contentos con el resultado, ya que les parecía excesiva la longitud del diccionario comparada con la frecuencia de aparición de palabras en la clave, tracearon la llamada al sistema "open()" y observaron algo realmente curioso.

Para escoger la palabra, iOS reusa el mecanismo de "sugerencia" que aparece en los cuadros de entrada de texto, el mismo que va sugiriendo palabras a medida que vamos añadiendo caracteres. A continuación se invoca un método del Framework "ProofReader" usado para la corrección ortográfica. Dicho método permite obtener una palabra inglesa de entre 4 y 6 caracteres de longitud.

Ya que obtuvieron el método con el que iOS va generando palabras usaron el mismo mecanismo en un programa aislado. Se generó una gran cantidad de palabras y observaron como estadísticamente, después de 250.000 invocaciones, el número de palabras se estabilizaba en una distribución de 1.842 palabras distintas.

Junto con esta lista de palabras y el número de cuatro cifras añadido al final consiguieron acotar el espacio de búsqueda en un número relativamente pequeño: 1.842*104. Esto supone reducir el tiempo de búsqueda a menos de 50 segundos usando una sola GPU de última generación.

Los investigadores recomiendan no usar la clave de acceso por defecto y en su lugar establecer una fuerte generada por el usuario.

Más información:

Usability vs. Security: The Everlasting Trade-Off in the Context of Apple iOS Mobile Hotspots

Mobile Hotspots



David García

No hay comentarios:

Publicar un comentario en la entrada