Android Análisis Reverso - Generando cambio de color para #Twitter

El objetivo de este articulo es comprender el poder de las técnicas de #ingeniería-reversa, analizar las aplicaciones móviles desde una óptica interna y mejorar el fantástico mundo móvil. En este caso un enfoque práctico sobre #Android y como desafío tendremos, el modificar desensamblando y ensamblando la aplicación #Twitter para cambiar su tradicional color.

Veamos el paso a paso del proceso:

Identificamos la aplicación en el dispositivo y hacemos una copia de su #apk.
Fig.1
Vamos a trabajar con #Twitter como muestra Fig.2
Fig.2
Ya tenemos el resguardo del #apk, debemos pasarlo a nuestra laptop para iniciar las operaciones.
Fig.3
Como vamos a modificar el color de la barra central de #Twitter, vamos a hacer una captura para poder extraer el color exacto que nos facilitará la tarea de identificación sobre el código desensamblado.  
Fig.4
Luego pasamos el ensamblado a nuestra laptop y los trabajamos con #apktool. Desensamblamos  el #apk con el comando mostrado en la Fig.5.

Fig.5
Luego como vemos en la Fig.6 tenemos el proyecto para realizar las modificación que necesitemos. Como nuestro objetivo es cambiar el color central de la aplicación, seguramente dentro de res/values encontraremos colors.xml, tenemos muchas posibilidades de encontrar lo buscado en este archivo.
Fig.6
Abrimos colors.xml y buscamos con el color extraído de la detección que muestra la Fig.4.

Fig.7
Guardamos colors.xml y procedemos a ensamblar el código nuevamente utilizando #apktool. Fig.8
Fig.8
Luego pasamos el ensamblado generado al dispositivo. [recuerden que el ensamblado nuevo se genera en la carpeta #dist] y lo firmamos con #ZipSigner. Fig.9
Fig.9
Solo resta instalar manualmente el nuevo ensamblado firmado. [recuerden desinstalar antes la aplicación a reemplazar, para ser ordenados en el proceso]. Fig.10
Fig.10
El proceso completo se encuentra grabado en vivo en este video:



Licencia Creative Commons
Android Análisis Reverso - Generando cambio de color para #Twitter por Nicolas Bortolotti se distribuye bajo una Licencia Creative Commons Atribución-CompartirIgual 4.0 Internacional.

Comentarios

Entradas más populares de este blog

Modelando relaciones en UML, un acercamiento a las Asociaciones

Utilizando Intents implícitos para crear actividades

Secuencias…Modelado indispensable