Herramientas para ocultar Malware de Android y evitar la detección del antivirus

Share this…

En este artículos vamos a hablar de herramientas que ayudan a ocultar las aplicaciones o Android malware con el propósito de hacer difícil su ingeniería inversa. De esta manera las posibilidades para copiar una aplicación o Android malware caen drásticamente. Según expertos de seguridad de aplicaciones de una empresa de pentesting (IICS), hay una gran cantidad de herramientas la ocultación, más o menos conocidas y algunas de ellas son:

 

Pro-guard: Se trata de una herramienta de ocultación incluida en el Android SDK, la cual es capaz de cambiar el nombre de clases, métodos y variables.

 

Pro-guard
Pro-guard

 

DexGuard: La versión comercial mejorada de Proguard. Esta herramienta es capaz de poner en práctica la técnica de encriptado de textos y cambiar el nombre de las clases y los métodos con los símbolos non ASCII.

DexGuard
DexGuard

 

Bangcle: Es un servicio online que permite poner en práctica algunas estrategias de ocultación con el objetivo de evitar la clonación de las aplicaciones, pero, al mismo tiempo, hay rumores de que atribuye a la ocultación, de algunos malware como Zeus y SMS Sender.

 

Bangcle
Bangcle

 

Allatori Java Obfuscator: Es una segunda generación de herramientas de ocultación de Java capaces de implementar varias técnicas de ocultación con el propósito de proteger la propiedad intelectual. De hecho debido a la aplicación de esta herramienta, hace muy difícil la ingeniería inversa del código.

 

 Allatori Java Obfuscator

Allatori Java Obfuscator

 

Zipfile Python library: El formato zip es el estándar más difundido para la compresión. Esta biblioteca ofrece servicios a la lista como, extracción, lectura, crear y añadir archivos zip.

Zipfile Python library
Zipfile Python library

 

Dex2Jar: Es una herramienta gratuita para convertir el le.dex utilizado en aplicaciones de Android a formato Java file.class

 

Dex2Jar
Dex2Jar

 

 Dx: es una herramienta contenida en el Android SDK que se puede utilizar para convertir Java bytecode y JAR en file.dex (Dalvik bytecode).

 

 Dx
Dx

Apktool: Es una herramienta gratuita con un montón de características. En particular, permite desmontar y volver a montar aplicaciones a archivos .apk.

 

Apktool
Apktool

 

Jarsigner: Es una herramienta de Oracle proporcionada con el Android SDK que se puede utilizar para firmar archivos apk / JAR y verificar la integridad de los ya firmados.

 

Jarsigner
Jarsigner

 

 

Proceso de ocultación de malware (software malicioso)

Expertos de seguridad de aplicaciones de una empresa de pentesting explican que primero que nada, el Zip file library se utiliza para extraer el contenido del file.apk que queremos ocultar. Para la ocultación nosotros estamos interesados en el file.dex, que contiene el código compilado de la aplicación. A continuación, la herramienta dex2jar convierte la file.dex, extraído antes, en un archivo JAR. En este punto podemos utilizar el Allatori obfuscador en este archivo. Usando el archivo XML el usuario puede especificar cuál es la técnica o la combinación que tiene que ser aplicada en el archivo JAR. Una vez que se realiza la ocultación necesitamos convertir el archivo JAR en .dex. Para ello usamos dx. Después de haber conseguido un file.dex oculto. El archivo se inserta en el directorio en el que los archivos originales de la aplicación se descomprimen y con uso del Apktool file.apk se reconstruye. Como último paso Jarsigner firma el nuevo archivo APK. La nueva aplicación oculta se envía al programa de antivirus para recuperar el informe relacionado con los resultados del análisis.

 

image022

 

 

Aquí podemos ver que cómo usando herramientas fáciles de encontrar es posible crear una estructura automática para ocultar y probar un gran número de malware. Esta estructura se crea exclusivamente para evaluar la eficacia de las técnicas de ocultación contra herramientas de análisis estático que analizan el código de la aplicación sin ejecutarlo.

Con ayuda de expertos de seguridad de aplicaciones de una empresa de pentesting, en este artículo se han introducido técnicas de ocultación, nacidas para evitar los plagios de aplicaciones Android. En lugar de ello, en los últimos años, han jugado un papel muy importante para evitar la detección de los motores de los anti-virus. De hecho, el análisis estático es el único análisis que puede ser implementado en dispositivos móviles, debido a sus capacidades bajas de hardware mencionan expertos de empresa de pentesting. Este tipo de análisis se desmonta y descompila recursos y archivos de la aplicación para el estudio de cada componente, sin ejecutarlo. En particular, las herramientas de detección comparan archivos hashes (firmas) de la aplicación analizada a una base de datos de muestras de maliciosos conocidos. También inspeccionan los componentes de la aplicación para encontrar firmas de código malicioso. Para las herramientas de análisis estático es muy difícil comparar la ocultación de aplicación / código con las muestras en su base de datos. En el curso de seguridad móvil y seguridad de aplicaciones fácilmente se puede aprender cómo crear software malicioso (malware), con fáciles herramientas disponibles, y cómo implementar técnicas de ocultación comunes y poner a prueba su eficacia contra de antivirus.