¿Romper WPA/WPA2 con GPUs? ¡Chorradas!

Se ha publicado recientemente que la empresa Elcomsoft ha desarrollado una nueva tecnología que permite utilizar la GPU de la tarjeta gráfica Nvidia para romper el cifrado de WPA/WPA2 hasta 100 veces más rápido que utilizando un PC normal [engadget, ItWire, securityandthe.net]. Aunque no dudo en absoluto que dicho anuncio sea cierto, permitidme una sarcástica carcajada para lo que es un phising comercial en toda regla, y veamos por qué.

Dado que la longitud mínima de una PSK de WPA o WPA2 es de 8 caracteres y el alfabeto manejado es de [A-Za-z0-9Sym32], tenemos (29+29+10+32)8 = 10.000.000.000.000.000 posibles palabras del lenguaje, que son… bastantes. Teniendo en cuenta que, siendo benévolo, los procesadores actuales mas potentes (utilizando el algoritmo de Aircrack) pueden a lo sumo barrer 400 palabras por segundo, y multiplicando por el incremento de la capacidad de procesamiento de la tarjeta Nvidia tenemos un total de 40.000 palabras del lenguaje por segundo.

Echando cálculos, y si no me equivoco, se tardarían 7.927 años en barrer todas las posibles cadenas, y eso suponiendo que has acertado con el ESSID (ya que la cadena de cifrado depende de él) y que la PSK es ¡sólo de 8 caracteres!, cuando la longitud de la cadena en WPA puede ser mayor de 60 caracteres. Teniendo en cuenta además que cada incremento de la longitud en 1 caracter multiplica por un factor de 100 el tiempo necesario, pueden hacerse una idea de la magnitud temporal si tomamos 12 caracteres en lugar de 8.

Así que este producto esta bien, sí, pero esta muy muy lejos de lo que anuncian, y es más un reclamo comercial que otra cosa. He visto varios anuncios de este tipo con gente que vende colecciones de DVD’s con tablas precomputadas, que aseguran que rompen todos las claves WPA. Chorradas; el verdadero problema de seguridad de WPA son los usuarios y solo será vulnerable cuando se rompa el cifrado (RC4/AES).

Para acabar, si les gusta el tema de aparatillos hardware que permiten incrementar la potencia de cálculo, Picocomputing contruye mediante ASICs y FPGAs dipositivos que pueden llegar a barrer 1000 palabras por segundo. Aunque vistos los cálculos previos, no se hagan ilusiones…

Actualización 20/10, 13:15h (N.d.E.): El autor, Roberto Amado, ha publicado una segunda entrada rebatiendo algunos comentarios.

Actualización 20/10, 11:45h (N.d.E.): Mientras espero la contestación de Roberto Amado a los comentarios realizados, tanto aquí como en menéame.net, hay varios aspectos que es necesario comentar.

El primero es que aunque quizá el término “phising comercial” esté algo cogido por los pelos, decir que “WPA/WPA2 protected networks are not immune against distributed attacks performed with GPU-accelerated algorithms“, como Elcomsoft hace en su nota de prensa, es cuanto menos amarillista; sólo hay que echar un vistazo a Google para ver hasta qué punto ha calado el mensaje. La seguridad de WPA2 sigue siendo igual de robusta hoy que antes del anuncio de Elcomsoft, siempre y cuando, como es habitual, la contraseña tenga una longitud mínima y sus correspondientes reglas de complejidad.

En segundo lugar, aunque no se menciona el uso de una única GPU, utilizar 5, 10, 100 o 1000 no resulta un factor decisivo comparado con el incremento temporal que tienen dos o tres caracteres adicionales; descontando por supuesto que no todo el mundo dispone de tal cantidad de dispositivos.

En tercer lugar, comparar la seguridad de WEP con WPA/WPA2 carece totalmente de sentido, y no hay mucho más que decir al respecto.

En cuarto lugar, para la velocidad de crackeo por fuerza bruta es necesario el uso de tablas precomputadas, que pueden incrementar la velocidad hasta cerca de 40,000 passwords por segundo; no obstante, dichas tablas, aparte de tener que calcularlas, dependen del SSID de la red, por lo que en muchas ocasiones resultan de escasa utilidad. Al respecto, alguno parece haber asumido que el crackeo se hace haciendo pruebas con la Wifi, cuando en el artículo jamás se menciona ese punto. Otra persona dice que los ataques de fuerza bruta no se usan desde hace 20 años, pero me abstendré de contestar a dicha afirmación.

Para acabar, resulta más bien decepcionante (aunque previsible, por otro lado) que en lugar de aportar argumentos convincentes, algunas personas (no todas, afortunadamente) se limiten a insultar o a rebatir el artículo con afirmaciones vacías. En breve espero tener una respuesta de Roberto con todos los detalles. Hasta entonces, espero que apliquemos, antes de soltar los dedos, esa cautela que tanto se pide.

Comments

  1. Creo que te equivocas, en mi portatil, el incremento han sido de unas 5000 – 1000 tests por segundo, a 50 millones, y hay graficas que hacen 600 millones por segundo, con una gt260, imaginate poner 2 gt280 de los 1000 millones no baja.
    Por otro lado, estas asumiendo que la gente que pone WPA usa contraseñas largas y complejas, cuando si TU pones la contraseña, podras algo facil de recordar y relativamente corto.
    Por ultimo, esto lo que hace es buscar colisiones, sobre un hash, con lo cual, las opciones serian mas de 1 entre [(29+29+10+32)8 = 10.000.000.000.000.000 ]

    Alegres saludos

  2. solo planteo una cuestion… la situacion citada… no seria el caso peor de las posibilidades?? es decir… en un caso mejor, la situacion seria que la primera posibilidad fuese la acertada, entonces hay que encontrar un caso medio. por lo que creo que tienes que recalcular tus datos.

  3. Y todos esos millones de intentos por segundo… ¿se van a poder mandar vía WiFi al AP para ir probando uno tras otro?

    Digo yo que, al menos, entre intento e intento irán unos ms de demora…

  4. estoy de acuerdo con bocachancla. devuelvanme mis 3 minutos.

  5. Mira que se pueden decir chorradas por minuto sin ayuda de GPU ni nada.
    Muchachos, cuando estudieis un poquito más podreis daros cuenta de las tonterias que habeis dicho.
    Lo primero, Roberto, deja de pensar en ataques de fuerza bruta que ya no se usan desde hace 20 años y lo que tu planteas es simplemente “hala ahi va eso y si acierto pues bien y si no a seguir probando”.
    Y tu Basda ¿para que narices te hace falta enviar via wifi nada al AP?, ¿no tendras un poquito de trafico capturado y probarás a descifrarlo localmente? Te recuerdo que la RAM es muy rapida.
    Por si de verdad quereis saber algo: http://www.antsight.com/zsl/rainbowcrack/

  6. El caso es que el software lo que vende es recuperación de contraseñas distribuida y según la noticia original llega a mil millones de contraseñas probadas por segundo, lo cual dejaría la cifra de años en tan solo 0,31. Si bien es cierto que solamente con tu GPU no vas a hacer nada y que nuestras redes domésticas siguen estando a salvo con WPA.

    Saludos.

  7. Vaya chorrada de post. Acaso crees que las GPUs se usan para romper la clave por fuerza bruta haciendo pruebas por la wifi??? Que chorrada!!!

    La clave se rompe localmente por lo tanto cuantas mas GPUs en paralelo, mejor.

    Roberto Amado: dedícate a otra cosa que esto de la seguridad está claro que no es lo tuyo.

  8. Ademas… has usado la palabra Phising en un contexto que no tiene nada q ver.

    Phishing es la técnica usada para obtener claves haciendo creer al usuario que está en una web auténtica cuando en realidad está en una falsa.

    En serio… dedicate a otra cosa en vez de confundir a la gente.

  9. Por desgracia, aunque no estoy de acuerdo en las maneras de los que han escrito los comentarios, sí estoy de acuerdo en el mensaje: ignoras muchos detalles y aplicas datos falsos. La empresa en ningún momento menciona que utilicen una única GPU, tu ratio CPU:GPU es erróneo y además, como comenta superuser, utilizas la palabra phising de una manera totalmente equivocada que llevará a confusión a los que no sepan qué significa la palabra.

    Una pena que ésto haya llegao a portada de Meneame :-/

  10. “Elcomsoft hace en su nota de prensa, es cuanto menos amarillista; sólo hay que echar un vistazo a Google para ver hasta qué punto ha calado el mensaje”

    Igual de amarillista que vosotros tirando por tierra trabajo de otros
    La diferencia que ellos tienen un software bastante avanzado en conceptos e implementacion y vosotros con cuatro cuentecillas y una base falsa los tirais por tierra sin parpadear y llamandolo chorradas, el amigo Roberto no merece ni ser contra argumentado.

  11. Nadie ha dicho que el software no sea avanzado, ni que pueda suponer una ventaja en el crackeo de claves WPA2 sencillas. Pero ir más allá y decir que WPA2 está vendido, como parece que es la idea que se ha extendido, es del todo fantasioso.

    Por mi parte, y tras la contestación de Roberto, doy esta discusión por cerrada, agradeciendo a todos sus puntos de vista y opiniones.

  12. “Nadie ha dicho que el software no sea avanzado”… venga hombre… lo habeis llamado chorradas, rehacer el articulo desde cero y con una base solida

  13. Anónimo, no pretendo entrar en una discusión interminable, pero pienso que el título deja bien a las claras que la chorrada es transmitir el mensaje de que es posible romper WPA/WPA2 (en un tiempo razonable) con GPUs. En cualquier caso, por supuesto eres libre de opinar, y te agradezco los comentarios, pero dado que creo que no vamos a llegar a ningún sitio, es mejor que lo dejemos aquí.

  14. La verdad es que, independientemente de la noticia, cuyo contenido o conclusiones podemos discutir todo lo que querais, son vergonzosas las descalificaciones que se han hecho contra mi compañero.

    De los comentarios que se han hecho, algunos tienen algo de sentido y los valoramos mucho, son dudas razonables a la información que hemos aportado en este post, otros son cuestiones que sin ser correctas simplementen plantean una pregunta que siempre que publicamos este tipo de posts estamos encantados de contestar, y el tercer tipo, sin duda el que más se ha dado en este post, son comentarios que en muchos casos denotan la falta de conocimiento de la persona que lo escribe sobre la tecnología de la que estamos hablando, y que además de eso se permiten el lujo de poner en duda la profesionalidad de un gran profesional como es Roberto Amado, que es especialista en este tipo de tecnologías.

    Para mi todos los que han contestado de forma tan ligera y ofensiva ya han demostrado lo buenos profesionales que son (si es que son profesionales), independientemente de lo que hayan dicho, que como ya he comentado en muchas ocasiones ha carecido de sentido.

  15. Yo lo que tengo claro es que la mayoria de la gente pone nombres como “conexioncasa” o el nombre del perro asi que este software si que puede ayudar. Lo que está claro es que no hay que decir que WPA-PSK se ha ido al carajo porque eso no es verdad. Salu2.

  16. Más bien tu post son chorradas, y lo único que demuestra es tu falta de conocimientos de seguridad real en cómputo. La realidad es que los usuarios en su mayoría usan contraseñas de 6 a 8 caracteres con números y minúsculas. Si leyeras los análisis estadísticos sobre contraseñas, sabrías que además normalmente usan números al final de la contraseña y las contraseñas meramente numéricas son en su mayoría fechas. Por ello aunque teóricamente se necesiten calcular todas las posibles contraseñas, en la realidad programas como John The Ripper pueden reventar contraseñas de hasta 7 caracteres, aunque sea por la debilidad de las contraseñas del usuario.

    Estoy de acuerdo que la propaganda es engañosa estrictamente hablando, pero en términos prácticos es la realidad. He reventado contraseñas de 6 caracteres en MD5 y muchas contraseñas windows (LM) con 7 caracteres en menos de 6 horas, aún con contraseñas que utilizan caracteres especiales, numeros y letras. La probabilidad de atinarle a una contraseña utilizando métodos estadísticos y probabilísticos es casi de un 90% me atrevería a decir. John the Ripper tiene unas muy buenas heurísticas para reventar contraseñas y están disponibles para que todo el mundo las consulte.

  17. Damián, conocemos perfectamente las contraseñas que ponen los usuarios y las técnicas que usa John de Ripper para obtener variaciones de cada una de las palabras de un diccionario, incluso hemos usado estas habilitades de John the Ripper para exportar el diccionario que genera y aplicarlo a otros programas de crackeo y así aprovecharnos de la potencia que tiene.

    Vuelvo a remitir a las palabras de Bruce Schneier: “las contraseñas débiles siguen siendo débiles y las fuertes siguen siendo fuertes”. Esto es, el que le pone a su Wifi con WPA la contraseña “paquito21” no tiene que preocuparse por esta nueva técnica, sencillamente ya estaba expuesto antes, y el que usa “df.4/daOs3mDif+21J32iiGas+” puede seguir estando muy tranquilo.

    Mi compañero Roberto Amado realizó un estudio en nuestra propia ciudad sobre seguridad Wi-Fi (te recomiendo que te lo leas, está en el siguiente post) en el que generó un diccionario enorme que tenía en cuenta todas estas “probabilidades estadísticas” que comentas, y en un tiempo razonable sacó la gran mayoría de contraseñas, sin necesidad de GPU ni nada de eso, por lo que volvemos a la frase anterior de Schneier; si tienes una mala contraseña te la van a romper más rápido, pero te la hubieran roto igual con algo más de tiempo, y si tienes una buena contraseña va a ser muy díficil que te la rompan.

    Por último, me gustaría haber hecho una referencia al documento oficial del 802.11i, pero por no perder más tiempo con este tema dejaré una referencia a la Wikipedia, que sin ser tan fiable si que me confirma algo de lo que estaba practicamente seguro (yo no soy un experto en tecnología Wi-Fi): aunque los usuarios usen contraseñas de 6 caracteres con números y minúsculas (o 4, o 2, o ninguna si su administrador les deja, yo he visto de todo), el cifado WPA exige una passphrase de entre 8 y 63 caracteres o 64 digitos hexadecimales, por lo que un usuario no puede poner 6 caracteres en su clave WPA (a no ser que la propia implementación del punto de acceso permita hacerlo y lo complete con espacios o alguna barbaridad de esas, pero no conozco ningún caso).

    Además, también te puedo decir que el crackeo de NTLM y de WPA no es comparable debido a la complejidad del algoritmo utilizado (esta extrapolación es un error frecuente en varios comentarios); el crackeo de NTLM es muy rápido, muchísimo, debido a lo rápido de calcular para los sistemas modernos los hashes que emplea, mientras que WPA usa algoritmos que para cada prueba requieren mucho más coste computacional, por lo que evidentemente no se pueden calcular tantas claves por segundo.

    Te invito a hacer la prueba, usa la misma contraseña, una de esas contraseñas de usuario que dices, tanto para un Windows como para un WPA, y captura por un lado el Hash y por el otro el Handshake. Utilizando exactamente el mismo diccionario o la misma sucesión de pruebas si usas fuerza bruta, pon a crackear en el mismo sistema completamente ocioso primero el NTLM (según tú te constará unos días) y luego WPA, y compruebas si te ha llevado el mismo tiempo, o cuántas órdenes de magnitud más te ha llevado crackear la misma contraseña en WPA.

    Por favor, para este y sucesivos posts, rogaría que planteáseis vuestros comentarios de forma educada y sin faltar al respecto, y más aún si vais a comparar el crackeo de un hash MD5, que es un sencillo cálculo de una función de hash con un cifrado WPA, que entre otras cosas hace un montón (no voy a mirar la cantidad exacta, no merece la pena) de “rounds” de hashes SHA cada uno de los cuales más complejo de calcular que un MD5, por lo que probablemente estemos hablando de 2 o 3 ordenes de magnitud más complejos.

  18. Damián, me dedico al mundo de la consultoría y te aseguro que estoy muy acostumbrado a ver usuarios que comparten contraseñas, usuarios cuya contraseña es la misma que el identificador, su nombre o similares, entre muchas otras cosas; de eso hay ya unas cuantas entradas en el blog, como puedes comprobar tú mismo. Esta entrada no tiene intención de analizar cuál es la seguridad de las contraseñas de los usuarios, sino echar un poco de luz al anuncio de Elcomsoft sobre la fortaleza de WPA/WPA2, aspectos que como estarás de acuerdo, no tienen nada que ver.

  19. Hola está interesante esta conversación sobre el Software de Elcomsoft, pues yo por curiosidad me bajé la versión trial de Distributed Password Recovery y comento mis impresiones.

    Bien lo instalo y tal, me dice que sólo puedo usar 20 Pcs distribuidos (como si los tuviera). Abro el programa, primera ojeada al interfaz principal del servidor y parece simple, una parte para poner una lista de “trabajos” programados y otra que detecta los Pcs con el cliente (Distributed Agent) instalado. Después miro a ver donde se puede añadir un “trabajo” para sacar una clave wpa, es un menú simple le dices el archivo que quieres atacar con el programa; elijo el fichero de captura con el Handshake y me dice que no lo puede usar para ninguno de sus ataques, es decir, que no sabe lo que es. Miro la ayuda pongo “wpa” y me sale que necesita un programa (Proactive System Password Recovery) de la misma compañia que saca el hash de la clave wpa, así que busco un poco en internet y me bajo su versión trial, lo instalo, encuentro la parte de wifi y no veo ninguna opción de sacar el hash de un fichero de captura con un Handshake y me doy cuenta que sólo tiene un botón, le doy y me “lee el fichero de Windows” dónde contiene las claves de las redes inalámbricas que tengo configuradas o me he conectado alguna vez, allí saca los hashes y essids y los guarda en un archivo que guarda la informacion de la siguiente forma:
    hash:ssid:iterations:[password]: (password siempre va vacío)
    Y me pregunto ¿Quién quiere atacar una wpa donde ya sabes la clave, porque la tienes configurada? Alguién que quiera saber la clave del wifi de su Pc de la empresa y que pueda instalar el (PSPR). Tanto programa distribuido y usando GPUs super way para luego no poder usarlo para otros intereses.
    Luego pensé que puede que exista la forma de calcular el Hash através de un Hanshake pero puede que sea una barbaridad lo que acabo de decir.

    P.D el proyecto ese de fin de carrera sobre seguridad wifi es la caña estoy aprendiendo mucho.
    P.D2 tengo 16 años.

  20. Buena aportación al post Mateo, me alegro de que te este sirviendo el proyecto.

    Un saludo.

  21. mi conclucion es que es de maciado complicado para entra en una res ponerlo mas facil no todos savemosde tanto lio

  22. Definitivamente, ¿alguien sabe cómo piratear una red WPA?
    Gracias

  23. PALLASOS PORQUE BORRAIS LO QUE YO HE ESCRITO!!

  24. Por la forma de hacer la petición y la petición en sí.

  25. Yo les recomiendo este otro sitio que me funciono mejor en 2 contraseñas que buscaba http://md5.unidadlocal.com
    espero les ayude como a mi

  26. Pagar que es lo que teneis que hacer , y dejar de robar a los demas

  27. panda de idiotas en vez de intentar poner un grano de arena para la investigaciones del crackeo wpa vosotros tirais la montaña asi van las cosas

  28. la fuerza bruta es tonteria aunque pudieras probar 1 billón de claves por segundo no darias con la clave tiene que ser con diccionarios y tener suerte y mucha paciencia o romper el algoritmo rc4 pero eso todavia no se puede, bueno si pudieras probar 1 billon por segundo si clave es de 8,9,10,11 o 12 digitos la sacarias pero si es de 30 como mi router no y si es de 63 olvidate.

  29. Madre mía!. Cómo habla la gente sin saber.
    Incluso había uno que decía que las claves se tenían que enviar por Wifi.

    Vamos a ver:
    Se capturan datos con programas tipo airodump o airopeek.
    para ello hace falta que haya tráfico, lógicamente.
    Y luego se le pasa a esa captura “localmente” un crackeador de WPA, preferiblemente que use la GPU.
    Lo mejor es alimentarlo con combinaciones de diccionarios modificadas con programas como John the Ripper.
    Está claro que muchas claves no se van a obtener pero muchas otras sí.
    Y si usamos Rainbow tables mucho mejor.

  30. Eu ja testei essa técnica(gpu crack) e posso dizer que não vale a pena em caso de ataques de força bruta, é utlizado para fazer ataques com dicionário. Mesmo utilizando 5 Ati ou Amd R9290X conseguirias 500.000 passwords por segundo, mas mesmo assim demoravas muitos anos para descobrir uma password com 10 caracteres, com um ataque de força bruta