06 mayo 2015

get-mobility-info: Recopilando información útil sobre un Mac OS X




Si la semana pasada hablábamos sobre OSQuery como una excelente solución que nos podía ayudar en el trabajo de un análisis forense sobre sistemas operativos Linux y Mac OS X, hoy me gustaría hacerlo sobre la información que nos puede otorgar get-mobility-info.

Se trata de un script en BASH, que se encuentra en /System/Library/Frameworks/SystemConfiguration.framework/Resources/get-mobility-info.

Aunque se puede ejecutar de manera directa, es normalmente llamado desde /usr/bin/btmmdiagnose, otro script en BASH que se encuentra en /usr/bin/, y ambos vienen de forma nativa con Mac OS X desde la versión 10.9, por lo que no implica la instalación de nada nuevo, como sucedía con OSQuery.

btmmdiagnose está pensada para enviar a Apple un tarball que contendrá logs y ficheros de texto de la configuración de un sistema operativo Mac OS X concreto.  De hecho, las siglas BTTM se refieren al programa Back to My Mac, requerido por Apple para dar soporte cuando cuando un usuario se queje de algún problema.

En el caso concreto de get-mobility-info, su ejecución es sumamente sencilla:




Se generará un fichero tar.gz con el formato mobility-info-fecha.hora.tar.gz

Si descomprimimos el fichero nos encontraremos con un montón de información que este script ha recopilado por nosotros, y que podremos analizar con total tranquilidad en otra máquina en busca de la causa del problema, analizar la actividad de los usuarios del sistema o de algún proceso malicioso que esté ejecutándose. 

Recordemos que en Mac, por supuesto, también hay malware, del que deberíamos estar lo más protegidos posible, así como unas cuantas opciones de configuración de sistema operativo que no vienen por defecto habilitadas, pero que nos pueden evitar unos cuantos dolores de cabeza.

Entre los ficheros generados por otros helpers a los que llama get-mobility-info y/o consolidados de sistema, bajo estas líneas os dejo un pantallazo con la lista completa, aunque me parecen de especial relevancia el fichero ps, syslog, lsof, dmesg, appfirewall.log, pf, DiagnosticMessages, kextstat (que indica qué kernel extensions tiene cargadas en memoria el equipo), preferences.plist (con opciones de configuración de la herramienta de Preferencias de sistema), etc,…