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.
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.
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.
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.
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.
Dex2Jar: Es una herramienta gratuita para convertir el le.dex utilizado en aplicaciones de Android a formato Java file.class
Dx: es una herramienta contenida en el Android SDK que se puede utilizar para convertir Java bytecode y JAR en file.dex (Dalvik bytecode).
Apktool: Es una herramienta gratuita con un montón de características. En particular, permite desmontar y volver a montar aplicaciones a archivos .apk.
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.
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.
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.
Es un conocido experto en seguridad móvil y análisis de malware. Estudió Ciencias de la Computación en la NYU y comenzó a trabajar como analista de seguridad cibernética en 2003. Trabaja activamente como experto en antimalware. También trabajó para empresas de seguridad como Kaspersky Lab. Su trabajo diario incluye investigar sobre nuevos incidentes de malware y ciberseguridad. También tiene un profundo nivel de conocimiento en seguridad móvil y vulnerabilidades móviles.
Envía tips de noticias a info@noticiasseguridad.com o www.instagram.com/iicsorg/
También puedes encontrarnos en Telegram www.t.me/noticiasciberseguridad