Martes, 24 de Octubre de 2017: Siempre hay que decir que si

Querido diario..

Hace muchos años, en los tiempos en que existía el RTM Security Team, hice una sección; que si no mal recuerdo se llamaba “vPasswordList”, era un formulario donde invitaba a la gente a meter su password, se almacenaba en un TXT y ese TXT era descargable. Antes de que te quejes, en ese entonces no existían los leaks masivos que hay ahora, de hecho lo más “leak” creo que había sido el que generó rockyou.txt

Obvio muchos se quejaron porque decían que iba a hacer una relación de varias cosas para determinar de quién había sido el password, así que no sirvió de mucho mi idea de hacer un diccionario. Y ayer me acordé por esto:

Bueno… dejando de lado las comicidades del día. Un día, cuando yo aun era un consultor respetable, gran profesionista con mucho futuro, me mandaron a revisar la seguridad de una aplicación; pero cuando llegué no era una aplicación propiamente dicho… bueno si, porque ¿quién sabe que es una aplicación y que no es?, a lo que me refiero es que yo para ese entonces lo único que había revisado eran portales y bancas en línea; de pronto llegué y lo que vi fue el software que había desarrollado una empresa para controlar los tokens de autenticación y la administración (de forma muy básica) de varios tipos de biométricos.

Apenas vi la situación y dije #estacab%&/(esepe&/( e inmediatamente, como hace todo buen consultor, llame a mi gerente.

Pero mi gerente… ¡ah! si tuviese que definir la palabra jefe, diría que es él. Es el mejor jefe que he tenido, le vamos a llamar “El ingeniero”. El ingeniero era alguien de esas personas que ya ha pasado por mucho, tiene mucha experiencia, todo el tiempo se la pasaba leyendo; y era un experto en bases de datos, principalmente Oracle. Y algo que me enseño El ingeniero es a siempre decir que si, un verdadero consultor jamás duda.

Así que bueno, cuando vi mi aplicación que no era aplicación corrí como consultor senior asustado a decirle:

- Bueno
- ¡Ingeniero!, tenemos un problema
- ¿Qué pasó ingeniero?, ¿cómo esta?, ¿ya desayunó?, tomese un cafecito hombre, no hay problemas

Otra de las grandes virtudes de El ingeniero es su capacidad para conservar la calma, creo que eso también le aprendí. ¿Has visto el meme ese del perrito que esta en llamas y dice “I’m fine”, bueno, al Ingeniero lo llegué a ver en medio de unas vías sin poder arrancar el coche y decir “Oiga… jajaja… esta cosa no arranca ingeniero, nos van a aplastar hombre”.

Ya todo alterado le empecé a explicar que no entendía nada de como hacer la revisión de la aplicación, que tenía todo el día sin siquiera poder identificar una interfaz, que la aplicación no hacia nada y que estaba en un rincón llorando… pero el Ingeniero me dijo, una frase que siempre recuerdo cuando esty en crisis:

- Ingeniero, pues si todas las aplicaciones son lo mismo: autenticación, autorización, manejo de sesiones... ¿qué no maneja sesiones? pues no revise sesiones, que no tiene interfaz, pues no haga validación de entradas.. nada más lo que hay ingeniero
- Pero es que ese es el problema, no hace nada, ¡nada más autentica!
- Pues si nada más autentica, pues revise pura autenticación ingeniero

Para el Ingeniero la vida siempre era fácil y nosotros nos complicábamos todo, así que supongo que mucho de mi estilo actual de “gestión de proyectos” se lo aprendí a él. (Cabe señalar que pasé dos meses haciendo reversing a los drivers y firmware de los biométricos, lo cual.. creo que no venía en OWASP, ni era parte de la autenticación, pero psss.. el Ingeniero).

Por cierto… no tiene mucho que lo vi, hace como un mes viaje al Distrito Federal y aproveché para verlo a él y a otros amigos de mi vida normal. Pero bueno, sigamos…

El punto es que gracias a él aprendí que los consultores de seguridad son machos, que jamás dicen que no ¡ahhhh! y otra de las frases épicas del Ingeniero:

- Ingeniero, soluciones no preguntas ingeniero, soluciones.

Aprendí a que mi único objetivo en la vida es resolver situaciones complejas, con el menor esfuerzo posible y siempre cumpliendo con los objetivos. Deminios, querido diario… creo que fui entregado para ser un bug bounty hunter, desde antes de que lo fuese D:

El punto es… y a todo lo que va esto es… en dos semanas salgo para Colombia, a una de las mejores misiones de mi vida… pasara 12 kilogramos de cocaína haciendo no sé para evadir todos los controles de seguridad. ¿Cómo se hace eso?, pues bueno…. no tengo la menor idea.

Además de llevar a las Gemelas (mis dos pistolas de oro), aquí se necesita ser inteligente, no podemos andar dando balazos por todos lados. No sé a que me voy a enfrentar, sólo una vez he hackeado un aeropuerto y tiene mucho tiempo y fue para entrar al sistema corporativo del grupo empresarial al que le pertenecía, acá es diferente, hay que hacer cosas que no entiendo como hacerlas y no se que puedo esperar. La otra es que yo encuentro fallos en aplicaciones, la infraestructura no es lo mío, tiene mucho tiempo que no hago un pentest y estoy algo oxidado, así que llevaré algunas herramientas de uso general.

Primero que nada hay que contemplar de que me voy a enfrentar a quién sabe qué, así que lo primero será hacer un reconocimiento. Para ello se puede hacer primero un reconocimiento externo en el que tendré que hacer uso de búsquedas en fuentes abiertas, para eso a mi me gusta mucho Maltego; después de eso habrá que realizar una exploración lo cual yo para eso principalmente uso IP Network Browser, Nmap y Sonar; después de eso primero hay que buscar errores de configuraciones, errores de explotación inmediata y un análisis de vulnerabilidades sobre objetivos especificos que nos parezcan interesantes; yo para eso uso Nessus, DameWare, Burp Suite, Metasploit.. y finalmente atacar, que para eso Metasploit va también bien.

Ahora, todo esto hay que guardarlo en cierta parte.. no está demás llevar todo cifrado en un contenedor de VeraCrypt en un disco duro, con la máquina base completamente limpia y todo en máquinas virtuales. Yo sigo prefiriendo MS Windows para trabajar, pero obvio siempre hay que llevar Kali, por cualquier cosa.

Para la virtualización yo uso VMWare Fusion; pero el Workstation funcionará bien para los que su máquina base sea MS Windows o Linux; yo uso Apple para todo.

En cuanto a servicios, yo recomiendo instalar LAMP o XAMP, porque a veces es necesario pasar algún archivo dentro de la red para hacer movimientos laterales, también es posible usar para eso Netcat; pero hay que llevar de todo.

La primera vez que ataqué un aeropuerto fue por wireless, de hecho fue por error; así que olvidar llevar una antena; yo recomendaría mucho una Wifi Pineapple, ¡diablos!, las mías las tienen Janey y Beto… bueno, espero que no haya que atacar nada wireless.

Creo que con estas cosas básicas y muy generales estaré listo para trabajar en El Dorado.