jueves, 22 de octubre de 2020

Crackers no son galletas... tampoco maleantes... cracking con Aws Gpu as a services

 Estimados amigos de Inseguros !!!

Si has vivido el comienzo de internet hará ya más de 20 años, inevitablemente habrás vivido el comienzo del hacking... van de la mano.

La cultura hackers apareció en los medios, prensa, televisión, cine... de una manera poco documentada como suele pasar. Ya conoces las películas legendarias... No sé por qué se asociaba el movimiento hacker con el punk... el cyberpunk!!! como si los expertos del momento pasaran los días en discotecas tomando drogas... que no digo que no...pero al final no eran como en las películas.

Una de las cosas que solían aparecer eran los "diccionarios" la jerga... en la que se definía que era un hacker, un lammer, un cracker... siendo este último término asociado a "hackers malos". Bueno, al final esto era una paja mental del periodista de turno. Un cracker tampoco son galletas... en este caso lo oriento al concepto de crackear, crackear un hash o una contraseña, averiguar su contenido en formato legible...

Podría ser crackear un programa... pero no es el caso...

Pudimos ver en otro artículo del blog como crackear hashes NTLM con la potencia de las máquinas virtuales en Azure y las GPU ( tarjetas gráficas). Usando herramientas como jhon the ripper o hashcat.

En esta ocasión vamos a ver algo similar, pero mucho más "as a services". Más sencillo. En este caso es un software denominado NPK (sodio, fósforo y potasio) que los amantes al cultivo de la yerba conocerán muy bien. Se trata de un software que empleando las capacidades serverless de Amazon, los S3, las sondas lambda, y la potencia de Terraform, conseguir desplegar dinámicamente instancias Amazon diseñadas con gran cantidad de recursos, incluidas potentes GPU, para optimizar el proceso de cracking. Todo esto mediante un frontend muy intuitivo y sencillo, aunque tengo que decir algo crispante.

Vamos a verlo para que imagineis lo sencillo de usar.




Eliges el tipo de hash, el tipo de instancia que quieres usar, subes el fichero, eliges el diccionario o las máscara de hashcat y te da una estimación de coste máximo para la previsión que tiene, en base a los requisitos. (la sonda lambda está constantemente monitoreando el coste).

Y al final si todo ha ido bien, tenemos nuestros hash descifrado o desencriptado xD.

Si bien el manual en el github es "claro", yo he perdido mucho tiempo en ponerlo a rodar por algunas cosas mías, por ejemplo, la edad, mi IQ, mi afición a no estar solo haciendo una cosa, etc xD pero básicamente tienes que llevar algunas precauciones. Cuando crees el profile del aws client. usa el nombre NPK o Terraform no sabrá donde buscar las credenciales. Usa Terraform v11 normal o dockerizado pero no me funciono ni 11,noseque ni 12.

Revisa los límites que tienes paras las instancias y si es necesario, abre un ticket para poder ampliarlo. En muchos tipos de instancias hay un límite por defecto para cuestiones de escalado y demás.

Un proyecto muy interesante que le cuesta un poco de afinar, tiene falta de documentación, logs, pero me gusta mucho el concepto de levantar las instancias dinámicamente.

Espero que te guste, gracias por leerme !!!