DAWF: DragonJAR Automatic Windows Forensic es una herramienta de las llamadas de «botón gordo» para el análisis forense de sistemas Windows. Es decir, es una aplicación portable (no requiere instalación previa) que se ejecuta en un sistema y extrae toda la información posible del sistema. Otra herramienta similar a ésta que analicé recientemente es WIN-UFO (mi review aquí).
DAWF se puede ejecutar desde una ventana de comandos (bien) o desde una sencilla ventana de Windows que muestra una barra de progreso para «amenizar» la espera. DAWF se puede lanzar en modo «vivo» y en modo «muerto». En modo «vivo» obtenemos un volcado del estado actual de la memoria y un informe sobre el sistema (sistema, usuarios, periféricos instalados, software instalado, conexiones en curso, etc.); en modo «muerto» la información extraída es mucho más exhaustiva, incluyendo historial de navegadores, caché, contraseñas de diferentes aplicaciones, etc.
Para mi prueba he utilizado como evidencia un portátil que utilizo para el trabajo administrativo (redactar informes, llevar contabilidad, ofertas, etc.) y que tiene instaladas las aplicaciones típicas que tendría un usuario normal (Microsoft Office, Navegadores Web, Skype, Spotify, etc.). Se trata de un portátil con Windows 10 (64 bits), Intel Core I7 y 16GB de RAM por lo que presuponía que no iba a tener problemas de rendimiento. La prueba se ha completado a la perfección. Al lanzar el programa (desde un disco USB 3.0 externo) ha tardado en reaccionar y parecía que se había quedado bloqueado. El problema, seguramente, ha sido el tiempo necesario para volcar los 16 GB de memoria RAM en un disco externo USB. Una vez más la paciencia es una gran virtud que tiene su recompensa.
DAWF en modo «/vivo»
Este modo es perfecto para el trabajo de campo. Realiza dos operaciones básicas que, seguramente, resolverían el 80% de los casos de forense en Windows:
- Guarda una copia de la imagen de la memoria RAM en ejecución. Utiliza, para ello, DumpIt que es una herramienta de prestigio. Personalmente, prefiero Belkasoft RamCapturer (http://www.javiertobal.com/belkasoft-ramcapturer/) pero DumpIt, lanzado desde DAWF ha cumplido perfectamente. En las primeras pruebas que realicé con DAWF no pude analizar el contenido del volcado de memoria con Volatility, que es la herramienta que uso normalmente. Sí comprobé que el volcado se había realizado correctametne utilizando herramientas más sencillas: «strings» y un editor hexadecimal (HxD). Repasando el problema, localicé un artículo que me guió en la configuración de Volatility 2.5 para el perfil de Windows 10 (Win10x64) y que, sinceramente, me arregló el día (http://www.brimorlabsblog.com/2014/08/analysis-of-windows-8-memory-dump-with.html). Ya puedo confirmar que el volcado de memoria funciona a la perfección.
- Genera un informe, por defecto en HTML, con la información principal del sistema: software instalado, usuarios, configuración de red, conexiones, dispositivos, servicios, programas en ejecución, etc.
Además de estas dos funciones de «adquisición de evidencias (memoria y sistema)», DAWF genera un registro de las acciones realizadas y calcula los HASH (MD5, SHA1, CRC32, SHA2 -256, 512 y 384-) de todos los ficheros generados. Algo perfecto para incluir directamente en nuestro informe pericial.
DAWF en modo «/muerto»
En este modo se extrae, además de la información del sistema que extrae en modo «vivo», un montón más de información de todo tipo: información de navegadores Web (caché, cookies, favoritos, historial, etc.), actividad del equipo, actividad en redes sociales y clientes de mensajería (Skype, por ejemplo), algunas contraseñas almacenadas en el equipo (por ejemplo la contraseña de los puntos de acceso WI-FI que estén configurados), etc.
Este modo es, además, personalizable para adaptarlo a nuestras necesidades o gustos. Para personalizarlo hay que editar unos ficheros de texto que están en un subdirectorio de la propia herramienta (por supuesto, DAWF funciona de forma totalmente portable y no necesita instalar nada en el equipo a analizar).
Este modo es muy práctico cuando tenemos que realizar un análisis en detalle de un sistema y, sinceramente, no tenemos muy claro lo que se va buscando. Si el perito tiene claro lo que necesita de un sistema (una entrada en un registro, unas credenciales concretas de un programa concreto, el contenido del historial de un navegador, etc.) es mejor hacer una imagen del disco duro de la máquina e ir directamente a por el objetivo.
Algunos defectos y futuras mejoras
Durante las pruebas he encontrado algunos problemas o funciones que me gustaría que estuviesen implementadas de otra manera. A saber:
- Las opciones de configuración podrían estar mejor documentadas. Por ejemplo, es posible generar todas las salidas en formato texto, en lugar de usar el HTML por defecto, pero esta opción no está documentada.
- Las conexiones aparecen ordenadas por dirección local y puerto. Me parece más práctico ordenarlas por dirección IP del host destino.
- En «vivo» me gustaría que aparecieran la lista de dispositivos USB que se han conectado alguna vez al equipo. Esta información sí aparece en el análisis exhaustivo (modo «muerto»).
- No extrae las contraseñas almacenadas en los navegadores. Esta función es muy útil para el análisis de información almacenada en la nube. WIN-UFO, por ejemplo, extrae las contraseñas de la mayoría de navegadores.
- En las conexiones WI-FI, DAWF muestra las diferentes conexiones, la hora de conexión, el SSID, etc. Por desgracia, no muestra la dirección MAC del punto de acceso. Esta información es muy útil, por ejemplo, para construir un mapa con las localizaciones donde ha estado el equipo conectado.
Salvando estos problemillas, DAWF me ha parecido una herramienta interesantísima y, personalmente, ya la he añadido a mi caja de herramientas para análisis forense en Windows.