OS X Auditor: Herramienta de análisis forense para Mac

apple-bajo-lupaOS X Auditor es una herramienta gratuita de análisis forense para Mac OS X. Está escrita en Python y parsea/hashea los siguientes elementos de un sistema en ejecución o una copia que quieras analizar:

  • Las extensiones del kernel
  • Los agentes del sistema y demonios
  • Agentes y demonios de terceros
  • Los viejos y obsoletos system y los elementos de inicio de terceros
  • Agentes de usuario
  • Archivos descargados de los usuarios
  • Las aplicaciones instaladas

Y luego extrae:

  • Archivos en cuarentena de los usuarios
  • Historial de los usuarios de Safari, descargas, topsites, bases de datos HTML5 y localstore
  • Cookies de Firefox, descargas, formhistory, permisos, lugares e inicios de sesión
  • Historial de los usuarios de Chrome y archivos de historial, cookies, datos de acceso, sitios más visitados, datos de webs, bases de datos HTML 5 y el almacenamiento local
  • Cuentas sociales y de correo electrónico de los usuarios
  • Los puntos de acceso WiFi señala a los que el sistema auditado se ha conectado(y trata de geolocalizarlos)

También busca palabras clave sospechosas en el archivo .plist.

Puede verificar la reputación de cada archivo en:

  • MHR Team Cymru
  • VirusTotal
  • Malware.lu
  • …su propia base de datos local

Por último, los resultados pueden ser:

  • Representados como un archivo de log txt sencillo (para que puedas hacer cat-pipe-grep en ellos … o simplemente grep )
  • Representados como un archivo de log HTML
  • Enviados a un servidor Syslog

Uso:

Link: https://github.com/jipegit/OSXAuditor

Pentesting: Fingerprinting para detectar SO

OS Fingerprinting es el proceso de recopilación de información que permite identificar el sistema operativo en el ordenador que se tiene por objetivo. El OS Fingerprinting activo se basa en el hecho de que cada sistema operativo responde de forma diferente a una gran variedad de paquetes malformados. De esta manera, utilizando herramientas que permitan comparar las respuestas con una base de datos con referencias conocidas, es posible identificar cuál es el sistema operativo. Nmap es una herramienta ampliamente utilizada para llevar acabo OS Fingerprinting activo.

A diferencia del activo, el OS Fingerprinting pasivo no se realiza directamente sobre el sistema operativo objetivo. Este método consiste en el análisis de los paquetes que envía el propio sistema objetivo a través de técnicas de sniffing. De esta forma, es posible comparar esos paquetes con una base de datos donde se tenga referencias de los distintos paquetes de los diferentes sistemas operativos y, por lo tanto, es posible identificarlos.

Tanto el OS Fingerprinting activo como el pasivo poseen diferentes cosas a favor y en contra. En el caso del activo, es mucho más directo y confiable, ya que la interacción se realiza directamente sobre el sistema operativo objetivo. Sin embargo este tipo de interacción origina tráfico de red sobre el objetivo, por lo que es posible que se generen sospechas. Caso contrario, el OS Fingerprinting pasivo es más silencioso en el sentido que no genera tráfico de red, sino que solo intercepta aquellos paquetes en la red del sistema objetivo. Sin embargo, este método puede ser más complejo a la hora de obtener un conjunto de paquetes que permitan realizar la distinción del sistema operativo con certeza.

A modo de ejemplo, se puede utilizar Nmap para realizar un OS Fingerprinting activo utilizando la la opción “–O” que permite habilitar la detección del sistema operativo. En la siguiente imagen puede visualizarse la detección:

Captura de pantalla de 2014-10-22 23-00-05

En el caso de OS Fingerprinting pasivo, se utilizó la herramienta P0f, la cual permite identificar el sistema operativo de los equipos de la red donde se está realizando el sniffing. Analizando el tráfico generado por el sistema objetivo y a partir de comparaciones, es posible determinar, en el mejor de los casos, la versión exacta del sistema operativo o la familia a la que pertenece. En la siguiente captura puede visualizarse que tipo de sistema operativo detectó a partir del propio tráfico generado por el sistema objetivo:

Captura de pantalla de 2014-10-22 23-04-49

Captura de pantalla de 2014-10-22 23-05-41

Para poder lograr este tipo de información, se debe envenenar la red para lograr interceptar todo el tráfico y así poder analizar los paquetes enviados desde el sistema objetivo.

Desde el punto de vista de un pentester (persona que realiza el Penetration Test), el método de OS Fingerprinting pasivo es una buena técnica para obtener información relevante sin atentar contra el sigilo en el análisis. La mayor ventaja que tiene este método es que es posible utilizarlo a pesar de que los sistemas objetivos cuenten con Firewalls, sistemas IDS/IPS u otros sistemas de protección de red. Asimismo, el OS Fingerprinting pasivo no dejará rastros en los logs del sistema objetivo. Sin embargo en la mayoría de los casos el OS Fingerprinting activo será más preciso a la hora de identificar el sistema operativo debido a que es un método más invasivo y directo.