No Code SaaS Seguridad para Apps Móviles. 

Pida Demo

[TECH] Métodos de ataque para mecanismos antitamper y sus protecciones

El post explica cómo se manipulan aplicaciones móviles (APP) y cómo se debe responder con prioridad.

 

[TECH] Métodos de ataque para mecanismos antitamper y sus protecciones

Hi, this is TEAM LIAPP.
En la publicación anterior, hablamos de la gravedad de la manipulación de APP móvil y el daño potencial al actual hacking de manipulación basado en el caso real.Este post describirá el proceso de manipulación real y los diferentes tipos de protección que se requieren con recursos limitados.

- Definiciones del término


* DATOS estaticos
Información declarada dentro de un paquete de aplicaciones o aplicaciones
ex) URL del servidor a quien conectarse, consulta DB, información almacenada como archivo en el paquete, y otra información declarada como String

* DATOS dinámicos

Información recibida a través de la comunicación con el servidor, no dentro del paquete de aplicaciones o aplicaciones
ex) Información necesaria para el comportamiento de la aplicación excepto DATA estático

Para hackear la manipulación de aplicaciones, generalmente se hace en el siguiente orden:

 
1. Puntos de hacking objetivo después de analizar el código
2. Si es necesario modificar DATA dinámico, compruebe el DATA utilizado en el método siguiente a través de la depuración APP.
3. Modificar lógica y DATA para que la lógica dirigida pueda realizar el comportamiento deseado
4. Re-Packaging para activar aplicaciones modificadas
5. Seleccione la manera de distribuir aplicaciones hackeadas y distribuirlas
 
 

Primero,
Objetivo para la lógica para hackear después del análisis del código fuente.

Si usted no es un hacker de script kiddie que simplemente utiliza herramientas para hackear (baja dificultad técnica) sin el conocimiento básico de programación o análisis de código, entonces el primer orden de hackear más es el análisis del código fuente.

Esto se aplica a todas las áreas, incluyendo PC, móvil, etc. Especialmente, Android es mucho más vulnerable que PC y iOS en términos de dificultad de análisis de código fuente, porque la aplicación consiste en JAVA ByteCode, que es relativamente fácil de analizar, en lugar de lenguaje de máquina.

Sin embargo, dado que el hacking depende de las capacidades del hacker, no es apropiado decir que iOS con código binario es absolutamente seguro para el análisis de código fuente.
Dado que la dificultad del análisis fuente del bytecode es baja, es cierto que hay más intentos de hacking para atacar Android que hay hackers tratando de atacar iOS.
(En el futuro discutiremos el código binario así como el código byte.)

 
La prioridad es analizar el código fuente para ver dónde está el punto de cambio objetivo y el valor en el que debe cambiarse.

El código fuente se analiza utilizando varias herramientas como jasmin y dex2jar.

En segundo lugar,
Para obtener los resultados de hacking que quiero, es necesario comprobar y probar qué valor o lógica debe cambiarse la lógica dirigida (ex. ¿Qué cambios deben hacerse en el valor del campo para determinar el valor que desea, o qué 'si' debe ser saltado).

Si estos valores se definen estáticamente dentro del código fuente (DATA estático), los valores pueden cambiarse refiriéndose a los DATA estáticos. Sin embargo, si estos valores son los valores recibidos a través de la comunicación con el servidor y la conexión con otros sistemas que sólo pueden ser reconocidos cuando el APP está ejecutando, tiene que pasar por registrar el valor cambiando el código fuente o recibiendo la información de las políticas de comunicación y los valores de las políticas de comunicación del servidor a través de ejecutar el APP y la depuración.

En tercer lugar,
Si la parte que debe ser modificada para hacer el valor que quiero se determina sobre la base del código que analicé y el valor cambiado también se determina a través de la depuración, la automodificación y la aplicación se pueden proceder.

Cuarto,
El reempacado se refiere al proceso de convertir un código fuente modificado de nuevo a la forma de un APP para parecer un APP normal.

En quinto,
El reempacado se refiere al proceso de convertir un código fuente modificado de nuevo a la forma de un APP para parecer un APP normal.
Como se mencionó en el post anterior, si el propósito del hacking es la información del cliente, entonces se utilizará código malicioso para cambiar la aplicación normal a una aplicación modulada que el usuario no puede ser consciente. O, si el propósito del hacking es hackear contenidos proporcionados por el proveedor de servicios (por ejemplo, uso gratuito de contenido, cambio de capacidad de carácter de juego, etc.) o distribuir la aplicación hackeada al tablero de boletines públicos, o si el nivel de servicio de la aplicación hackeada y la demanda es alto, se distribuirá a través del sitio proporcionando la aplicación por una cierta cantidad de dinero.
Actualmente, las aplicaciones de hacking pagadas están activas.


 
 
Para los proveedores de servicios, la mayor amenaza para la seguridad es el hacking que ocurre con la distribución de aplicaciones hackeadas, que es uno de los incidentes de seguridad más importantes que hay que vigilar.
 

Aunque sería genial para muchas empresas preparar e implementar todo tipo de defensas de hacking desde el principio, este es un verdadero desafío para las pequeñas y medianas empresas con innumerables limitaciones.

Así que lo que necesitamos hacer para proteger con seguridad el servicio que hemos hecho es priorizar la prevención del hacking, el más perturbador y potencialmente dañino para el servicio.

Para un ejemplo ligeramente extremo, si un genio hacker hackea por sí solo para su propia satisfacción y abusa del contenido del servicio de forma gratuita, no perjudicaría al servicio relativamente tanto como lo hace un solo usuario.
Además, estos tipos de usuarios podrán ser sancionados a través de DB o vigilancia de servicios y reglamentos legales.

Por otro lado, sin embargo, cuando las aplicaciones hackeadas se distribuyen y adquieren numerosos y no especificados usuarios, los usuarios normales se sentirían dañados o irrazonables, lo que llevará a alejarse de los usuarios. Cuanto más usuarios de aplicaciones de hacking, menos retorno a los servicios y más rápido los usuarios normales saldrán del servicio.

Por último, la seguridad no es algo que se pueda hacer con la preparación, por lo que es importante priorizar y preparar uno por uno, con el objetivo de prevenir con éxito el hackeo que eventualmente podría perjudicar nuestro servicio.

En el siguiente post, vamos a hablar sobre lo que hay que enfocarse para satisfacer tanto la disponibilidad como la seguridad de tecnologías y servicios duales que eviten la manipulación.