Herramientas para analizar APK (app Android)

APK son las siglas de Android Aplication Package. Este tipo de archivo contiene el programa o aplicación que queremos instalar de la misma manera que también el instalador. Por tanto diremos que se trata de un archivo instalable concebido para Android.

Para analizar una aplicación, lo primero es conseguir el archivo .APK (Android) o .IPA (iOS). Para descargar el .APK de la PlayStore se puede utilizar el servicio de APKPure. Solo se debe pasar la URL oficial de la PlayStore. Esta herramienta no hace ningún cambio a la aplicación descargada por lo que hasta la fecha es un servicio confiable.

Este repositorio GIT tiene un listado actualizado de herramientas para analizar aplicaciones de Android (APK), al igual que Android Arsenal.

Online Tools

  • Mobile Security Framework (MobSF): Es LA herramienta, la que recomiendo abiertamente para el análisis dinámico y estático de apps, independiente de la plataforma (Android o iOS), si vas a realizar el análisis de aplicaciones móviles habitualmente esta herramienta no puede faltar en tu arsenal.
  • Quick Android Review Kit o QARK: Es un framework de análisis automatizado de aplicaciones android que tiene poco tiempo de vida, esta enfocado al análisis de aplicaciones android y cuenta con muy buenas funcionalidades.
  • SandDroid (informe de ejemplo): Es una de las mejores herramientas online que podemos tener para el análisis automático de aplicaciones android, realiza análisis dinámico y estático, además de darnos un puntaje de riesgo basado en la información que logra recolectar.
  • Reverse.it (informe de ejemplo): Es una herramienta que también permite el análisis dinámico y estático de aplicaciones android de forma automatizada, es una especialmente útil cuando buscamos comportamientos anómalos dentro de las aplicaciones móviles.
  • Dexter: Para un análisis más detallado podemos usar (previo registro gratuito) esta herramienta, enfocada en el análisis de software que nos permite de forma colaborativa visualizar el funcionamiento de la aplicación con un potente buscador que nos ayudará a encontrar fácilmente funciones interesantes en las cuales centrar nuestra atención.
  • JavaDecompilers: Es una herramienta online que nos permite decompilar aplicaciones online abriendo la posibilidad de examinar su código fuente desde un simple navegador, si con Dexter encontraste funciones interesantes que analizar, con javadecompilers puedes examinar sus entrañas para ver su funcionamiento a nivel de código.

Análisis Estático

Análisis Dinamico

  • Android DBI frameowork
  • Androl4b– A Virtual Machine For Assessing Android applications, Reverse Engineering and Malware Analysis
  • Android Malware Analysis Toolkit: (linux distro) Earlier it use to be an online analyzer
  • Mobile-Security-Framework MobSF: Mobile Security Framework is an intelligent, all-in-one open source mobile application (Android/iOS) automated pen-testing framework capable of performing static, dynamic analysis and web API testing.
  • AppUse – custom build for pentesting
  • Cobradroid – custom image for malware analysis
  • ViaLab Community Edition
  • Droidbox
  • Mercury
  • Drozer
  • Xposed: equivalent of doing Stub based code injection but without any modifications to the binary
  • Inspeckage: Android Package Inspector: dynamic analysis with api hooks, start unexported activities and more. (Xposed Module)
  • Android Hooker: Dynamic Java code instrumentation (requires the Substrate Framework)
  • ProbeDroid: Dynamic Java code instrumentation
  • Android Tamer: Virtual / Live Platform for Android Security Professionals
  • DECAF: Dynamic Executable Code Analysis Framework based on QEMU (DroidScope is now an extension to DECAF)
  • CuckooDroid: Android extension for Cuckoo sandbox
  • Mem: Memory analysis of Android (root required)
  • Crowdroid: unable to find the actual tool
  • AuditdAndroid: android port of auditd, not under active development anymore
  • Android Security Evaluation Framework: not under active development anymore
  • Android Reverse Engineering: ARE (android reverse engineering) not under active development anymore
  • Aurasium: Practical security policy enforcement for Android apps via bytecode rewriting and in-place reference monitor.
  • Android Linux Kernel modules
  • Appie: Appie is a software package that has been pre-configured to function as an Android Pentesting Environment.It is completely portable and can be carried on USB stick or smartphone.This is a one stop answer for all the tools needed in Android Application Security Assessment and an awesome alternative to existing virtual machines.
  • StaDynA: a system supporting security app analysis in the presence of dynamic code update features (dynamic class loading and reflection). This tool combines static and dynamic analysis of Android applications in order to reveal the hidden/updated behavior and extend static analysis results with this information.
  • DroidAnalytics: incomplete
  • Vezir Project: Virtual Machine for Mobile Application Pentesting and Mobile Malware Analysis
  • MARA: Mobile Application Reverse engineering and Analysis Framework
  • NowSecure Lab Automated: Enterprise tool for mobile app security testing both Android and iOS mobile apps. Lab Automated features dynamic and static analysis on real devices in the cloud to return results in minutes.
  • Taintdroid: requires AOSP compilation

Tools

  • AFLogical: Android forensics tool developed by viaForensics
  • Amandroid: Is a static analysis framework for Android apps
  • Android backup extractor: Android backup extractor
  • Android Loadable Kernel Modules
  • Android SDK
  • Android4me: J2ME port of Google’s Android
  • Android-forensics: Open source Android Forensics app and framework
  • Android-random: Collection of extended examples for Android developers
  • Androwarn: Is a tool whose main aim is to detect and warn the user about potential malicious behaviours developped by an Android application
  • ApkAnalyser: Static, virtual analysis tool
  • Apk-extractor: Android Application (.apk) file extractor and Parser for Android Binary XML
  • Apkinspector: Powerful GUI tool for analysts to analyze the Android applications
  • Apk-recovery: Recover main resources from your .apk file
  • Audit tools
  • bunq fuzzer: Program for testing a mobile app by sending it semi-random inputs
  • Canhazaxs: A tool for enumerating the access to entries in the file system of an Android device
  • ConDroid: Symbolic/concolic execution of Android apps
  • DDMS: Dalvik Debug Monitor Server
  • Decaf-platform: DECAF Binary Analysis Platform
  • Device Monitor: Graphical user interface for several Android application debugging and analysis tools
  • Dexinfo: A very rudimentary Android DEX file parser
  • Dexter: Static android application analysis tool
  • Dexterity: Dex manipulation library
  • Dextools: Miscellaenous DEX (Dalvik Executable) tools
  • DidFail: Uses static analysis to detect potential leaks of sensitive information within a set of Android apps
  • Drozer: Comprehensive security audit and attack framework for Android
  • FindBugs: Find Bugs in Java Programs
  • Find Security Bugs: The FindBugs plugin for security audits of Java web applications.
  • FlowDroid: Is a context-, flow-, field-, object-sensitive and lifecycle-aware static taint analysis tool for Android applications
  • Heimdall: Cross-platform open-source tool suite used to flash firmware (aka ROMs) onto Samsung mobile devices
  • Hidex: Demo application where a method named thisishidden() in class MrHyde is hidden from disassemblers but no called by the app
  • Hooker: Automated Dynamic Analysis of Android Applications
  • Maldrolyzer: Simple framework to extract “actionable” data from Android malware (C&Cs, phone numbers etc.)
  • mbfuzzer (Mobile Application Fuzzer via SSL MITM): Mobile Application Fuzzer via SSL MITM
  • PScout: Analyzing the Android Permission Specification
  • Scalpel: A surgical debugging tool to uncover the layers under your app
  • SPARTA: Is building a toolset to verify the security of mobile phone applications
  • Apk Sign: Sign.jar automatically signs an apk with the Android test certificate.
  • SIIS Tools: This page contains a list of software tools created by the SIIS lab
  • Smali: An assembler/disassembler for Android’s dex format
  • Smali-CFGs: Smali Control Flow Graph’s
  • SmaliEx: A wrapper to get dex from oat
  • SmaliSCA: Static Code Analysis for Smali files
  • Soot: Java Optimization Framework
  • STAMP: STatic Analysis of Mobile Programs
  • Systrace: Analyze the performance capturing and displaying execution times of your applications and other Android system processes
  • TaintDroid: Tracking how apps use sensitive information required
  • Traceview: Graphical viewer for execution logs saved by your application
  • Undx: Bytecode translator
  • XML-apk-parser: Print AndroidManifest.xml directly from apk file

Análisis de Vulnerabilidades

  • AndroBugs Framework: Is an efficient Android vulnerability scanner that helps developers or hackers find potential security vulnerabilities in Android applications. No need to install on Windows.
  • Devknox: Autocorrect security issues as you write code
  • JAADAS: Joint Advanced Defect assEsment for android applications
  • Nogotofail
  • QARK: Quick Android Review Kit – This tool is designed to look for several security related Android application vulnerabilities, either in source code or packaged APKs.
  • Quixxi: Free automated vulnerability test.
  • SUPER Android Analyzer: Secure, Unified, Powerful and Extensible Rust Android Analyzer

Crawlers

Fuzzing

Unpackers / Deobfuscators

  • Android Unpacker: Android Unpacker presented at Defcon 22 – Android Hacker Protection Level 0
  • Dehoser: Unpacker for the HoseDex2Jar APK Protection which packs the original file inside the dex header
  • Kisskiss: Unpacker for various Android packers/protectors
  • Simplify: Generic Android Deobfuscator
  • ClassNameDeobfuscator: Simple script to parse through the .smali files produced by apktool and extract the .source annotation lines.

Packers / Obfuscators

  • Allatori
  • APKfuscator: A generic DEX file obfuscator and munger
  • APKProtect
  • Bangcle
  • DexGuard: Optimizer and obfuscator for Android
  • HoseDex2Jar: Adds some instructions to the classes.dex file that Dex2Jar can not process
  • ProGuard: Shrinks, optimizes, and obfuscates the code by removing unused code and renaming classes, fields, and methods with semantically obscure names

Reverse Engineering

Network

Toolkits

Frameworks

Sandboxes


Origen de los datos / cita

https://www.hacking.land/2017/03/herramientas-para-analizar-apk-app.html


 

Borrar un disco con partición tipo GPT

La manera de quitar la partición GPT a través de DOS.  Una vez realizado esto, se puede entrar en «herramientas administrativas», ver y formatear el disco con toda normalidad.  Los pasos a seguir para borrar la partición GPT han sido:

  1. Ir a la línea de comandos de DOS (haga clic en “Menú Inicio”, luego “Run”, escriba “cmd” en la caja de texto, y pulsa “OK”)
  2. Escriba “DiskPart” en la línea de comandos.
  3. Escriba “List Disk” lista en línea de comando para mostrar todos los discos en esta máquina.
  4. Use “Select” para establecer el foco en la partición especificada, por ejemplo, “select disk 1″.
  5. Utilice el comando “limpio” o “CLEAN”  para eliminar disco GPT del disco .
  6. Volver a la Administración de discos, se puede ver el disco bajo “Not Initialize”.
  7. Haga clic en Información de disco, seleccione “Iniciar Disco”.
  8. Proceda a formatear el disco duro.

 

Enlaces a recursos gratuitos de evaluación de riesgos

Enlaces a recursos gratuitos de evaluación de riesgos

𝟭. 𝗜𝗦𝗢 𝟮𝟳𝟬𝟬𝟱

(https://lnkd.in/gMKsx-uj)

La norma ISO sobre evaluación de riesgos de seguridad. El apéndice incluye una lista de cosas que debe preguntar a la dirección, así como una lista de amenazas, vulnerabilidades y vectores de ataque.

𝟮. 𝗡𝗜𝗦𝗧 𝟴𝟬𝟬-𝟯𝟬

(https://lnkd.in/gWTm3mxG)

La norma federal para la evaluación de riesgos a la que casi todo el mundo hace referencia. Se trata de un pensamiento fundamental que todo el mundo debería comprender.

𝟯. 𝗖𝗜𝗦 𝗥𝗔𝗠 – 𝗥𝗶𝘀𝗸 𝗔𝘀𝘀𝗲𝘀𝘀𝗺𝗲𝗻𝘁 𝗠𝗲𝘁𝗵𝗼𝗱

(https://lnkd.in/grxJE3vw)

Me encanta el CIS. Todo lo que hacen me parece práctico y práctico. También incluyen plantillas que puedes coger y utilizar de inmediato.

𝟰. 𝗙𝗮𝗶𝗿 𝗜𝗻𝘀𝘁𝗶𝘁𝘂𝘁𝗲

(https://lnkd.in/g8AwNaCK)

He oído hablar muy bien de FAIR a otros responsables de seguridad en los que confío. Es muy recomendable, sobre todo si buscas orientación sobre cómo cuantificar el riesgo.

𝟱. 𝗛𝗜𝗣𝗔𝗔 𝗥𝗶𝘀𝗸 𝗔𝗻𝗮𝗹𝘆𝘀𝗶𝘀

(https://lnkd.in/gxfN7-rc)

Si se le exige el cumplimiento de la HIPAA, esta es una lectura obligatoria. También es ideal para herramientas y plantillas.

𝟲. 𝗜𝗦𝗔𝗖𝗔 𝗚𝘂𝗶𝗱𝗮𝗻𝗰𝗲 𝗼𝗻 𝗥𝗶𝘀𝗸 𝗔𝘀𝘀𝗲𝘀𝘀𝗺𝗲𝗻𝘁𝘀

(https://lnkd.in/g5kMF2mE)

ISACA ofrece toneladas de guías sobre evaluaciones de riesgo escritas por profesionales de toda la industria.

𝟳. 𝗣𝗖𝗜 𝗗𝗦𝗦 𝗚𝘂𝗶𝗱𝗮𝗻𝗰𝗲 𝗼𝗻 𝗥𝗶𝘀𝗸 𝗔𝘀𝘀𝗲𝘀𝘀𝗺𝗲𝗻𝘁

(https://lnkd.in/gYnqBERW)

La PCI es una norma de cumplimiento tan importante que he tenido que incluir su perspectiva en la lista. Esperamos que la versión 4.0, recientemente lanzada, agite mucho las cosas.

𝟴. 𝗛𝗲𝗮𝗹𝘁𝗵 𝗜𝗧 𝗦𝗲𝗰𝘂𝗿𝗶𝘁𝘆 𝗥𝗶𝘀𝗸 𝗔𝘀𝘀𝗲𝘀𝘀𝗺𝗲𝗻𝘁 𝗧𝗼𝗼𝗹

(https://lnkd.in/g5eSnvuH) F

Herramientas y plantillas gratuitas directamente del Gobierno.

9. 𝗖𝗹𝗼𝘂𝗱 𝗦𝗲𝗰𝘂𝗿𝗶𝘁𝘆 𝗔𝗹𝗹𝗶𝗮𝗻𝗰𝗲 𝗢𝗰𝘁𝗮𝗴𝗼𝗻 𝗠𝗼𝗱𝗲𝗹

(https://lnkd.in/gRSxDKHp)

Si estás en la nube, esto debería ser lectura obligatoria.

𝟭𝟬. 𝗔𝗪𝗦, 𝗚𝗖𝗣, 𝗔𝘇𝘂𝗿𝗲 𝗚𝘂𝗶𝗱𝗮𝗻𝗰𝗲 𝗼𝗻 𝗥𝗶𝘀𝗸 𝗔𝘀𝘀𝗲𝘀𝘀𝗺𝗲𝗻𝘁𝘀

AWS – https://lnkd.in/gf5RDv2i

GCP – https://lnkd.in/ggcVJz56

Azure – https://lnkd.in/gv73Uz9F

𝟭𝟭. 𝗣𝗵𝗮𝗹𝗮𝗻𝘅 𝗚𝗥𝗖 𝗥𝗶𝘀𝗸 𝗥𝗲𝗴𝗶𝘀𝘁𝗲𝗿

(https://lnkd.in/gfywxZab)

Puede inscribirse y utilizar este registro de riesgos de forma gratuita. Puntuación de riesgos, seguimiento de riesgos, excelentes cuadros de mando y mucho más.

La familia de normas ISO 27000

ISO 27000

La Organización Internacional de Estandarización (ISO) recoge un extenso número de normas dentro de la familia de ISO 27000.

Cada norma tiene reservado una número dentro de una serie que van desde 27000 hasta 27019 y de 27030 a 27044. Vamos a realizar un repaso por todas las normas de la serie:

Esta estandarización contiene las definiciones y los términos que se utilizarán durante toda la serie 27000. Para aplicar cualquier normativa necesita conocer un vocabulario perfectamente definido, por lo que así evitaremos cualquier mala interpretación de conceptos técnicos y gestión. Esta norma es gratuita a diferencia de las demás de la serie de normas que sí que suponen un coste para su implementación.

ISO 27001

La última versión de esta norma fue publicada en el año 2013. Es la norma principal de toda la serie ya que incluye todos los requisitos del Sistema de Gestión de Seguridad de la Información en las organizaciones. La ISO 27001 sustituye a la BS 7799-2 estableciendo unas condiciones de adaptación para aquellas empresas que se encuentren certificadas bajo esta última. En el Anexo A se enumeran los objetivos de control y los análisis que desarrolla la norma ISO27001 para que se puedan seleccionar las empresas durante el progreso de sus Sistemas de Gestión de Seguridad de la Información. La empresa podrá argumentar el hecho de no aplicar los controles que no se encuentren implementados ya que no es obligatorio.

ISO 27002

Es un manual de buenas prácticas en la que se describen los objetivos de control y las evaluaciones recomendables en cuanto a la seguridad de la información. Esta norma no es certificable. En ella podemos encontrar 39 objetivos de control y 133 controles agrupados en 11 dominios diferentes. Como se ha mencionado anteriormente, la norma ISO 27001 incluye un anexo que resume todos los controles que podemos encontrar en la norma ISO 27002.

ISO 27003

Es un manual para implementar un Sistema de Gestión de Seguridad de la Información y además, nos da la información necesaria para la utilización del ciclo PHVA (viene de las siglas Planificar, Hacer, Verificar y Actuar, en inglés “Plan, Do, Check, Act”) y todos los requerimientos de sus diferentes fases. El origen de esta norma se encuentra en el Anexo B de la norma BS7799-2 y  en la serie de documentos publicados a lo largo de diferentes años con recomendaciones y guía de implementación.

ISO 27004

En este estándar se especifican las técnicas de medida y las métricas que son aplicables a la determinación de la eficacia de un Sistema de Gestión de Seguridad de la Información y los controles relacionados. Las métricas se utilizan para la medición de los componentes de las fases “implementar y utilizar” del ciclo deming.

ISO 27005

Esta normativa establece las diferentes directrices para la gestión de los Riesgos en la Seguridad de la Información. Se trata de una norma de apoyo a los conceptos generales que vienen especificados en la ISO 27001 y se encuentra diseñada para ayudar a aplicar, de una forma satisfactoria, la seguridad de la información basada en un enfoque de gestión de riesgos. Para comprender a la perfección esta norma es necesario conocer todos los conceptos, modelos, procesos y términos descritos en la norma ISO-27001 e ISO 27002. Dicha norma se puede aplicar a todo tipo de organizaciones que tienen la intención de  gestionar todos los riesgos que se puedan dar en la empresa en temas de seguridad de la información.

ISO 27006

Este estándar específica todos los requisitos para lograr la acreditación de las entidades de auditoría y certificación de Sistema de Gestión de Seguridad de la Información. ISO 27006 se trata de una versión revisada de la EA-7/03 (requisitos para la acreditación de entidades) que añade a la ISO/IEC 17021 (requisitos para entidades de auditoría y certificación de Sistemas de Gestión), los requisitos específicos de la ISO 27001 y los del Sistema de Gestión de Seguridad de la Información. Asimismo, esta norma ayuda a interpretar todos los criterios de acreditación de ISO/IEC 17021 cuando se aplican en organismos de certificación de la norma ISO 27001, pero no se trata de una norma de acreditación por sí misma.

ISO 27007

Es  un manual de auditoría de un Sistema de Gestión de Seguridad de la Información. Es un estándar Internacional el cual ha sido creado para proporcionar un modelo para establecer, implementar, operar, monitorear, revisar, mantener y mejorar un Sistema de Gestión de Seguridad de la Información (SGSI).

ISO 27011

Es una guía de gestión de seguridad de la información específica para telecomunicaciones Ha sido elaborada conjuntamente con la Unión Internacional de Telecomunicaciones (ITU).

ISO 27031

Es una guía de continuidad de negocio basada en las tecnologías de la información y las comunicaciones. Explica los principios y conceptos de la tecnología de información y comunicación (TIC), la preparación para que continúe el negocio, y la descripción de los procesos y métodos necesarios para señalar e identificar todos los aspectos que sirvan para mejorar la preparación de las TIC de una empresa con la finalidad de garantizar la continuidad del negocio.

ISO 27032

Es un texto relativo a la ciber-seguridad. Se trata de un estándar que garantiza directrices de seguridad que desde la organización ISO han asegurado que “proporcionará una colaboración general entre las múltiples partes interesadas para reducir riesgos en Internet”. Más concretamente, ISO/IEC 27032 proporciona un marco seguro para el intercambio de información, el manejo de incidentes y la coordinación para hacer más seguros los procesos.

ISO 27033

Es una norma derivada de la norma de seguridad ISO/IEC 18028 de la red. Esta norma da una visión general de seguridad de la red y de los conceptos asociados. Explica las definiciones relacionadas y aporta orientación de la gestión de la seguridad de la red.

Consiste en 7 partes:

  • Gestión de seguridad de redes
  • Arquitectura de seguridad de redes
  • Marcos de redes de referencia
  • Aseguramiento de las comunicaciones entre redes mediante gateways
  • Acceso remoto
  • Salvaguardia de comunicaciones en redes mediante VPNs
  • Diseño e implementación de seguridad en redes.

ISO 37034

Es una guía de seguridad en aplicaciones.

ISO 27799

Se trata de un estándar de Gestión de Seguridad de la Información dentro del sector sanitario aplicado a la norma ISO 17799 (actual ISO 27002). Dicha norma no es desarrollada por el subcomité JTC1/SC27 sino que la lleva a cabo el comité técnico TC 215. Esta normativa define las directrices necesarias para apoyar la interpretación y la aplicación en la salud informática de la norma ISO 27002 y es un complemento a dicha norma. Esta especifica un conjunto detallado de controles y directrices de buenas prácticas para la gestión de la seguridad de la información por las empresas del sector sanitario.