miércoles, septiembre 28, 2016

Herramienta de análisis de malware automatizado de aplicaciones Android.

CuckooDroid es una extensión de Cuckoo Sandbox marco de análisis de software de código abierto para la automatización de análisis de archivos sospechosos de malware. Es un sistema automatizado, multiplataforma, para la emulación y análisis basado en la popular zona de pruebas Cuckoo y varios otros proyectos de código abierto. Proporcionando la inspección APK tanto estática como dinámica, así como evadir ciertas técnicas como: detección de entorno virtual, extracción de clave de cifrado, inspección SSL, huella de llamada de API, firmas básicas de comportamiento y muchas otras características. El marco es altamente personalizable y extensible aprovechando el poder de la gran comunidad de Cuckoo existente.

Cuckoo Sandbox es un sistema de análisis de malware de código abierto. Esta aplicación permite analizar cualquier archivo sospechoso y en cuestión de segundos, Cuckoo proporcionará resultados detallados que describen lo que resultaría cuando se ejecuta dentro de un entorno aislado.

El malware es la principal herramienta de los cibercriminales y de los principales ciberataques en organizaciones empresariales. En estos tiempos la detección y eliminación de malware no es suficiente: es de vital importancia entender: cómo funcionan, lo que harían en los sistemas cuando se despliega, comprender el contexto, las motivaciones y los objetivos del ataque. De esta manera entender los hechos y responder con mayor eficacia para protegerse en el futuro. Hay infinidad de contextos en los que se puede necesitar implementar un entorno limitado, desde el análisis de una violación interna, recolectar datos procesables y analizar posibles amenazas.

Cuckoo genera un puñado de diferentes datos brutos, que incluyen:

  • Las funciones nativas y API de Windows llamadas huellas.
  • Las copias de los archivos creados y eliminados del sistema de ficheros.
  • Volcado de la memoria del proceso seleccionado.
  • Volcado completo de memoria de la máquina de análisis.
  • Capturas de pantalla del escritorio durante la ejecución del análisis de malware.
  • Volcado de red generado por la máquina que se utiliza para el análisis.

A fin de que tales resultados sean mejor interpretados por los usuarios finales, Cuckoo es capaz de procesar y generar diferentes tipos de informes, que podrían incluir:

  • Informe JSON.
  • Informe HTML.
  • Informe MAEC.
  • Interfaz de MongoDB.
  • Interfaz HPFeeds.

Lo más interesante, es que gracias a la amplia estructura modular del Cuckoo, es posible personalizar tanto el procesamiento y la fase de presentación de informes. Cuckoo proporciona todos los requisitos para integrar fácilmente un entorno aislado con los sistemas existentes, con los datos que se deseen, de la manera que desee y con el formato que desee.

Más información y descarga de CuckooDroid:
https://github.com/idanr1986/cuckoo-droid

Más información y descarga de Cuckoo Sandbox:
http://www.cuckoosandbox.org/

Documentación de Cuckoo Sandbox:
http://docs.cuckoosandbox.org/en/latest/


Premios Bitacoras.com 2016, categoría Mejor Blog de Seguridad Informática. Vota el blog Gúru de la informática (http://www.gurudelainformatica.es/) aquí: http://bitacoras.com/premios16/votar/eea22ce67fa1b6b7fbe997e326176f42d5a71599

miércoles, septiembre 21, 2016

Herramienta de respuesta rápida a ataques centrada en análisis forense remoto de sistemas.

GRR es una herramienta de respuesta rápida a ataques centrado en análisis forense remoto de sistemas. Esta compuesta por dos partes: un agente escrito en Python (cliente) que se instala en los sistemas de destino donde se quiere realizar el análisis forense y infraestructura de servidor en Python que puede manejar y hablar con el agente.

Un agente se implementa en sistemas que se desean investigar. Una vez desplegado, cada sistema se convierte en un cliente GRR y que puede empezar a recibir mensajes desde los servidores de frontend. Cada mensaje le dice al cliente que ejecute una acción específica del cliente y devolverá los resultados. Una acción del cliente es simplemente un código conocido que el agente sabe cómo ejecutar (tales como la obtención de la lista de archivos en un directorio o la lectura de un tampón de un archivo).


Estas acciones se invocan del lado del servidor a través de lo que llamamos flujos. Un flujo es una pieza de código del lado del servidor que solicita el sistema de GRR para programar llamadas remotas a un cliente y tiene cierta lógica adicional para decidir qué hacer sobre la base de los resultados de llamada.

Este flujo se ejecuta en un cliente a petición de un usuario. Para ello, se puede utilizar la web de interfaz gráfica de usuario (GUI), que permite a un usuario GRR  iniciar flujos de clientes y revisar los resultados. O también se puede utilizar la consola basada en texto para hacer lo mismo.

Cualquier flujo que se puede ejecutar en una sola máquina también se puede ejecutar en varias. Una búsqueda permite la ejecución de un flujo en todo el conjunto de maquinas, o cualquier subconjunto de máquinas que hablan con el servidor GRR.


Características del cliente:

  • Multiplataforma, compatible entre plataformas: Linux, OS X y Windows.
  • Permite análisis de la memoria remota en vivo en sistemas: Linux, OS X y Windows a través de la la aplicación Rekall de análisis forense de memoria.
  • Realiza búsqueda y descarga de archivos y el registro de Windows.
  • Infraestructura de comunicación segura diseñada para un despliegue a través de Internet.
  • Soporte de actualización automática del cliente.
  • Seguimiento detallado de: la CPU del cliente, memoria, uso de IO...

Características del Servidor:

  • Capacidades de respuesta y manejo de la mayoría de las tareas de respuesta a incidentes y análisis forense.
  • A nivel de sistema operativo y el acceso al sistema de archivos en bruto, utilizando el SleuthKit (TSK).
  • Permite búsquedas a través de una flota de máquinas.
  • Back-end completamente escalable para manejar grandes despliegues.
  • Programación de automatizado de tareas para tareas repetitivas.
  • Diseño asíncrono que permite futura programación de tareas para los clientes, diseñados para trabajar con una gran flota de ordenadores portátiles.
  • AngularJS interfaz de usuario web y interfaz de programación de aplicaciones REST JSON.
  • Completamente programable mediante la consola IPython.
  • Las características básicas para establecer una línea del tiempo de las evidencias recogidas. 

Esta herramienta nos permite realizar un análisis forense de forma rápida y remota, cuando detectamos un ataque en nuestra organización y queremos evaluar rápidamente los daños y recoger las evidencias.

Más información y descarga de GRR:
https://github.com/google/grr


Premios Bitacoras.com 2016, categoría Mejor Blog de Seguridad Informática. Vota el blog Gúru de la informática (http://www.gurudelainformatica.es/) aquí: http://bitacoras.com/premios16/votar/eea22ce67fa1b6b7fbe997e326176f42d5a71599

miércoles, septiembre 14, 2016

Máquina virtual para la evaluación, ingeniería inversa y análisis de Malware, de aplicaciones Android.

AndroL4b es una máquina virtual orientada a los aspectos de seguridad en Android basado en ubuntu-mate, que incluye la colección de los últimos framework, tutoriales y laboratorios, de seguridad, para la ingeniería inversa y análisis de malware en aplicaciones Android.

Contiene las siguientes herramientas y laboratorios:
 
Herramientas.
 
APKStudio, es un IDE multiplataforma para la ingeniería inversa y recompilación de binarios de aplicaciones Android, dentro de una sola interfaz de usuario. Cuenta con un diseño amigable, con un editor de código que soporta el resaltado de sintaxis para Android smali y archivos de código (* .smali).

ByteCodeViewer, suite de Ingeniería inversa de aplicaciones Android, con cinco descompiladores Java diferentes, dos editores de código de bytes, un compilador de Java y plugins...


Mobile Security Framework (MobSF), es una aplicación de código abierto para móviles (Android/iOS). Un  framework capaz de realizar el análisis estático y dinámico (Sólo esta permitido el análisis estático en esta maquina virtual). Puede ser utilizado para un análisis de seguridad de aplicaciones eficaz y rápido, es compatible con los binarios (APK y IPA) y el código fuente comprimido. MobSF también puede realizar pruebas de seguridad con su Fuzzer API que puede hacer de: recopilación de información, análisis de cabeceras de seguridad, identificar vulnerabilidades específicas de la API móvil como: la XXE, FRSS, de traspaso de rutas, IDOR... y otras cuestiones lógicas relacionadas con la sesión. 

Dorzer, marco de evaluación de seguridad de aplicaciones para Android. Permite realizar búsquedas de vulnerabilidades de seguridad en aplicaciones y dispositivos, asumiendo el papel de una aplicación, permitiendo interaccionar con: la máquina virtual Dalvik, los puntos finales del IPC de otras aplicaciones y el sistema operativo subyacente. 

APKtool, es una herramienta para la ingeniería inversa de binarios de aplicaciones Android. Puede decodificar los recursos de forma casi original y reconstruirlos, después de hacer algunas modificaciones, que hace posible depurar código smali paso a paso. También hace más fácil trabajar con la aplicación debido a la estructura de archivos en proyectos y con la automatización de algunas tareas repetitivas como la construcción de apk.

AndroidStudio, IDE para el desarrollo de aplicaciones Android. Es un entorno de desarrollo integrado (IDE) para el desarrollo de aplicaciones Android, basado en IntelliJ IDEA.  Android Studio ofrece características que mejoran la productividad en la construcción de aplicaciones Android.

ClassyShark, es una herramienta para desarrolladores Android. Permite navegar de forma fiable a través de un archivo ejecutable Android y mostrar información importante como: las interfaces de clase y los miembros, el recuento de dex y dependencias. Soporta múltiples formatos incluyendo: bibliotecas (.dex, .aar, .so), ejecutables (.apk, .jar, .class) y todos los binarios XMLs Android: AndroidManifest, recursos, diseños, etc.

BurpSuite, es una plataforma integrada para la realización de pruebas de seguridad de aplicaciones web. Sus diversas herramientas funcionan perfectamente para apoyar todo el proceso de: pruebas, cartografía y análisis de la superficie de ataque de una petición inicial, a través de la búsqueda y explotación de vulnerabilidades de seguridad.

Wireshark, es el analizador de protocolos de red más importante del mundo. Permite ver lo que está ocurriendo en una red a nivel microscópico. Es el estándar de facto de la industria y las instituciones educativas.

MARA, marco de análisis de seguridad y ingeniería inversa de aplicación para móviles. Es un conjunto de herramientas comúnmente utilizadas en ingeniería inversa y análisis de aplicaciones para móviles bajo los estándares de OWASP.

FindBugs-IDEA, análisis estático de código de bytes en busca de fallos en el código Java

AndroBugs Framework, escáner de vulnerabilidades de seguridad de Android que ayuda a los desarrolladores y pentesters a encontrar posibles vulnerabilidades de seguridad en aplicaciones de Android.

Metasploit, es un proyecto de código abierto de seguridad informática que proporciona información acerca de vulnerabilidades de seguridad y ayuda en tests de penetración "Pentesting" y el desarrollo de firmas para sistemas de detección de intrusos.

Laboratorios.

DIVA Android, es una aplicación diseñada expresamente para ser insegura. El objetivo de la aplicación es enseñar a los desarrolladores profesionales, defectos que generalmente están presentes en las aplicaciones, generalmente debido a prácticas de codificación pobres o inseguras.

InsecureBankv2, ese una aplicación Android hecha para entusiastas de la seguridad informática y desarrolladores para aprender las inseguridades de aplicaciones de Android. Su componente de servidor de fondo está escrito en Python. El componente de cliente es decir, el InsecureBank.apk para Android se puede descargar junto con la fuente.

DroidBench, es un conjunto de pruebas de codigo abierto para evaluar la eficacia de las herramientas de análisis específicas para aplicaciones Android.  La suite se puede utilizar para evaluar los análisis tanto estáticos como dinámicos, pero en particular, contiene interesantes casos de prueba para problemas de análisis estático (sensibilidad de campo, la sensibilidad de objetos, ventajas y desventajas en longitudes de vía de acceso, etc.), así como modelar correctamente el ciclo de vida de una aplicación, manejo de devoluciones de llamadas asincrónicas e interaccionar con la interfaz de usuario.

GoatDroid, es un entorno de formación totalmente funcional y autónomo para educar a los desarrolladores y probadores de seguridad de Android. GoatDroid requiere dependencias mínimas y es ideal tanto para principiantes como para los usuarios más avanzados.

Sieve, un gestor de contraseñas de aplicaciones, que muestra algunas vulnerabilidades comunes de aplicaciones Android.

Más información y descarga de AndroL4b:
https://github.com/sh4hin/Androl4b