La primera charla que tuve el gusto de ver en esta ekoparty 2017 arrancó tempranito a la mañana, y la sala de conferencias ya estaba llena. Durante esta presentación titulada "Bypass Android Hack", Marcelo Romero, perito informático forense y, según se define, un apasionado de la informática, nos presentó un proyecto de su autoría que permite acceder directamente a la memoria de dispositivos móviles evadiendo bloqueos, incluso si el teléfono está roto y ni siquiera enciende.
Marcelo comenzó su presentación recordando un caso muy famoso ocurrido en 2015 en la ciudad de San Bernardino, California. A fines de ese año se produjo un tiroteo que terminó con la vida de 14 personas e hirió a más de 20. El caso fue caratulado como ataque terrorista, y los autores fueron apresados.
Pero, ¿qué tiene que ver este caso con la seguridad informática? Esa fue la pregunta que nos hicimos todos en la sala.
Es que, luego de apresar a los autores de la masacre, el FBI logró obtener el dispositivo iPhone de uno de los terroristas. El problema es que el dispositivo estaba bloqueado y la empresa Apple se negaba a desbloquearlo, por más que el FBI insistía.
Comenzó entonces una batalla por lograr vulnerar la seguridad de uno de los dispositivos más seguros que existen. Luego de varios meses, y tras pagar alrededor de 1 millón de dólares, el FBI logró que un grupo de ingenieros desbloqueara el equipo y le entregue toda la información dentro de la memoria del mismo. Para lograrlo, se utilizó un equipo de la empresa Cellebrite, diseñado para hacer análisis forense en diferentes dispositivos y, entre ellos, poder acceder físicamente a la memoria del teléfono.
Con esta introducción, Marcelo planteó la primera pregunta que, en ese momento, se le vino a la mente: ¿es posible replicar este tipo de tecnología en Latinoamérica? ¿Se podría implementar algo similar para el análisis forense de dispositivos móviles? Con su curiosidad natural y algunas herramientas caseras, Marcelo se dispuso a buscarle respuesta a estas preguntas.
Cómo acceder a la información de la memoria
El primer paso fue pensar de qué manera podía vulnerar el dispositivo para tener acceso a la información alojada en la memoria. Lo primero que pensó fue en atacar el sistema operativo, pero esto definitivamente no era una opción, ya que para poder “jailbreakear” el teléfono, este tenía que estar previamente desbloqueado y no era el caso.
Lo segundo fue pensar en los puertos JTAG que tienen algunos dispositivos, y a partir de los cuales suelen desbloquearse. Pero al no ser algo estándar ni presente en muchos celulares, tampoco era una buena opción.
Sin embargo, la batalla no estaba perdida, ya que existen empresas que se encargan de testear que las diferentes partes electrónicas de los dispositivos funcionen correctamente. Para estas pruebas se utilizan dispositivos electrónicos que se conectan directamente a las placas y utilizan diferentes puntos electrónicos para enviar y recibir información. Si estas herramientas interactúan directamente con la memoria del teléfono, entonces es el camino para lograr obtener el acceso.
Con esta introducción, Marcelo puso manos a la obra y nos mostró cómo comenzó a fabricar estas herramientas con componentes que podía conseguir desde su casa.
El primer paso fue entender el funcionamiento de las placas de los celulares y encontrar un patrón físico para saber, más allá del modelo que se analice, cuáles eran los puntos electrónicos a los que se debía conectar.
Imagen: Esquema de la placa de un celular
Los componentes amarillos son los que conectan los puntos exteriores con el interior de la memoria, es decir que interactuando con estos puntos se llega en realidad a interactuar directamente con la memoria del teléfono. El siguiente paso, entonces, es conectarse con estos puntos.
Entendiendo este funcionamiento, Marcelo comenzó a aplicar la técnica que luego definió como “acupuntura a dispositivos móviles”. El objetivo era conectar y manipular estos puntos de interconexión entre la placa exterior y la memoria interior del dispositivo. Para esto comenzó utilizando alfileres y una serie de cables y pinzas para lograr mayor precisión.
El trabajo no fue sencillo, y menos aún sin conocimientos específicos de electrónica y a “prueba y error”. Sin embargo, luego de unos 20 dispositivos quemados y arruinados, por fin logró dar con los puntos correctos.
El siguiente paso fue encontrar la forma de conectar estos puntos a la computadora para poder intentar leer la memoria. Es decir, buscar un adaptador entre las agujas y cables y el lector de memoria de las notebooks convencionales. Para esto, Marcelo utilizó, nada más ni nada menos, que un adaptador de memoria microSD a SD. Es que, en realidad, lo que buscaba era poder montar una memoria y eso es justamente lo que hacen estos adaptadores.
Ahora sí, con todas las partes ensambladas y las agujas haciendo contacto con la placa, es momento de conectar el adaptador a la computadora, y entonces…
¡Misión cumplida! La memoria es finalmente montada y reconocida por el equipo. Pero, ¿por qué no reconoce el formato?, preguntó uno de los asistentes. Es que, según explicó Marcelo, la memoria tiene el formato del dispositivo Android, ya que es leída como si estuviera directamente conectada al teléfono, en crudo.
Como el formato de Android es diferente al de Windows, este sistema operativo no es capaz de leerla directamente e indica que no tiene formato. Por lo tanto, para leer correctamente el contenido de la memoria es necesario montarla en un emulador de Android o utilizar un software de análisis forense.
Sin embargo, esto no es todo, ya que en la mayoría de los casos de análisis forense los dispositivos recuperados suelen estar rotos o quemados, por lo que las placas internas tienen cortes y fallas que hacen que se corte el circuito. Es por esto que Marcelo fue un paso más allá en la investigación y nos mostró cómo luego logró utilizar esta misma técnica, pero para conectarse, con mucho pulso y paciencia, directamente a los pines de la memoria interna.
Nuevamente, siempre con la premisa de utilizar elementos al alcance de cualquier entusisasta, Marcelo utilizó los cables de cobre de unos auriculares para lograr soldarlos a los pines de la memoria, de menos de 1 milímetro de diámetro. Luego, utilizando el mismo adaptador, logró montar la memoria extraída en la computadora y obtener, mediante un software de análisis forense, toda la información del dispositivo.
Esta charla, a mi gusto muy inspiradora, comenzó a partir de una herramienta por la que el FBI pagó casi 1 millón de dólares, y finalizó con una investigación y mucho empeño para construir la misma herramienta con elementos que están al alcance de cualquier entusiasta.
“Si quieres resultados distintos, no hagas siempre lo mismo”. Con esta frase finalizó Marcelo su presentación, dejando a muchos en el público con muchas ganas de abrir el costurero de la abuela.
Créditos imagen de portada: Allmy/Shutterstock.com