Análisis forense - Linux: Adquisición de datos Volátiles

Los "Datos Volátiles", son aquellos que desaparecen cuando un sistema se apaga o se reinicia, por lo que extraer la máxima información de estos datos, puesto que es muy importante a la hora de recopilar pruebas cuando un sistema ha sido comprometido. Espero que este post os sea de ayuda!

Para recojer estos datos, es muy importante que en el equipo atacado, no ejecutemos ningún comando o herramienta por peligro a que pueda haber sido troyanizada. Para ello procederemos a ejecutar los binarios compilados estáticamente directamente desde un CD-ROM.

Para empezar, utilizaremos un equipo no comprometido para el almacenamiento de las pruebas en red, esto lo haremos ejecutando el siguiente comando en el equipo:

nc -l -p 9000 > data.dat

Así, pondremos a la escucha un puerto donde le iremos enviando la información desde la máquina comprometida.

Procederemos a listar los ficheros abiertos por los procesos para así detectar algún proceso/fichero sospechoso:

/mnt/cdrom/lsof -n | /mnt/cdrom/nc -w 3 IP 9000


Listamos las conexiones establecidas por los procesos:

/mnt/cdrom/netstat -nap | /mnt/cdrom/nc -w 3 IP 9000


Además, listamos la tabla de rutas:
/mnt/cdrom/netstat -nr | /mnt/cdrom/nc -w 3 IP 9000

Es importante hacer un análisis de puertos desde una máquina externa i compararla con la salida de netstat para poder asegurarnos que no hemos perdido de vista ningún proceso escuchando en ningún puerto, para ello usaremos nmap:

nmap -sS -p 1- IP_COMPROMETIDO


Listamos los ficheros que han sido eliminados pero que aún siguen abiertos por algún proceso en ejecución, esta utilidad, la encontraremos en el conjunto de herramientas de análisis forense The Coroner's Toolkit:

/mnt/cdrom/ils -o /dev/hda1 | /mnt/cdrom/nc -w 3 IP 9000

Listamos los procesos en ejecución:

/mnt/cdrom/ps -el | /mnt/cdrom/nc -w 3 IP 9000

Si mediante la orden anterior, encontráramos algún proceso sospechoso, podríamos analizarlo con la siguiente herramienta (también disponible en The Coroner's Toolkit).

/mnt/cdrom/pcat | /mnt/cdrom/nc -w 3 IP 9000

Listaremos los usuarios conectados en el sistema:

/mnt/cdrom/who -uHl | /mnt/cdrom/nc -w 3 IP 9000


Para finalizar guardamos el proc, en el cual obtendremos información acerca de los procesos:

/mnt/cdrom/tar cf - /proc | /mnt/cdrom/nc -w 3 IP 9000

Con estos pasos, habremos recopilado mucha información acerca de la intrusión. Para hacer un análisis más exaustivo, habríamos de recopilar datos no volátiles mediante herramientas de Integridad de Ficheros, localización de ficheros borrados, tiempos MAC, etc... de los cuales hablaré en un siguiente post.


Referencias:
Know your enemy:: Honeynet Project
Posted on 12:17 a. m. by skarvin and filed under | 1 Comments »

1 comentarios:

Anónimo dijo... @ 7:40 a. m.

Hola, aun no se si sigues con el blog pero tengo una pregunta. Como creo el CD con los binarios compilados estáticamente? SALUDOS