LINUX

Cómo configurar la herramienta de volatilidad para el análisis de la memoria

En el campo de la seguridad de TI, el análisis de la memoria o la memoria de acceso aleatorio (RAM) ayuda a identificar las actividades maliciosas o ilegales en el sistema. RedLine es una herramienta gratuita de análisis de memoria volátil proporcionada por Mandiant (empresa FireEye). Sin embargo, una conocida herramienta de seguridad de código abierto para el análisis de memoria volátil es la volatilidad. Admite el análisis de RAM para ambos sistemas de 32/64 bits. También admite análisis de sistemas Linux, Windows, Mac y Android. El marco de Volatility consta de herramientas de código abierto y se implementa en el lenguaje de programación Python. Se puede utilizar fácilmente en los sistemas operativos Windows y Linux. Puede analizar volcados sin procesar, volcados por caída, volcados de VMware (vmem), volcados de cajas virtuales y muchos otros. Las técnicas de extracción se realizan de forma completamente independiente del sistema que se está investigando y brindan una visibilidad completa del estado de tiempo de ejecución del sistema.

Instalación de la herramienta Volatility

La herramienta de análisis de memoria de volatilidad ya está instalada en SIFT (SANS Investigative Forensic Toolkit) y muchas otras distribuciones de seguridad de Linux.

tamizar-volatilidad

Sin embargo, la herramienta de volatilidad se puede instalar en Ubuntu 16.04 usando el siguiente comando.

apt-get install volatility

Los siguientes paquetes son dependencias de la herramienta Volatility que se instalarán automáticamente con el comando apt-get.

dwarfdump libdistorm3-3 libjansson4 libyara3 python-distorm3 python-jdcal python-openpyxl python-py python-pytest python-yara volatility volatility-tools

instalación de volatilidad

La siguiente instantánea muestra la instalación exitosa del marco de volatilidad en la plataforma Ubuntu.

trabajo de volatilidad

Análisis de volcado de memoria usando Volatility

En este artículo, se realizará un análisis forense detallado en el volcado de memoria (archivo vmem). Es común en la investigación forense que el analista encuentre varios programas maliciosos en el archivo de imagen del disco duro. Por lo tanto, en tales casos, el análisis de la memoria se vuelve muy importante porque puede ser que se esté ejecutando un programa malicioso o malware en el sistema comprometido.

Análisis de volatilidad

Los detalles del archivo vmem se muestran en la siguiente figura. El parámetro imageinfo proporciona posibles perfiles (información del sistema operativo y del paquete de servicio) sobre el archivo de memoria.

vol.py imageinfo -f vmem_file_name

imageinfo

Como se muestra en el resultado anterior, se sugieren tres perfiles con diferentes paquetes de servicios. También se muestra en la figura anterior que paquete de servicio es 1. Por lo tanto, el archivo de imagen se analizará con el perfil. Win2003SP1x86. La lista de procesos en ejecución en el archivo de memoria se enumera utilizando pslist parámetro. El parámetro Pslist se utiliza para mostrar el estado del proceso, listar información sobre los procesos que se ejecutan en la memoria.

vol.py --profile=Win2003SP1x89 pslist -f vmem_file_name

pslist

Vinculación de proceso usando pstree El parámetro se proporciona en la siguiente instantánea. Pstree muestra los procesos en ejecución como un árbol y el árbol tiene sus raíces en pid o en eso si pid se omite.

vol.py --profile=Win2003SP1x89 pstree -f vmem_file_name

pstree

Dos procesos iexplorer.exe y tango.exe están resaltados. Acerca de la salida muestra que tango.exe El proceso es un proceso hijo de cmd.exe que no es común en el sistema operativo Windows. Otro proceso malicioso iexplorer.exe con tiene pid 1220 no existe. Por lo tanto, según nuestro análisis, ambos procesos parecen maliciosos.

En el siguiente paso, connscan El parámetro se utiliza para escanear todas las conexiones de red de la víctima con otros hosts. La siguiente figura muestra todas las conexiones de red de la víctima (10.10.5.69) con host remoto (10.10.5.199).

vol.py --profile=Win2003SP1x89 connscan -f vmem_file_name

connscan

El comando de volatilidad se ejecuta con conexiones parámetro que muestra la siguiente salida.

vol.py --profile=Win2003SP1x89 connections -f vmem_file_name

conexiones

Esta información es muy importante para un análisis posterior porque muestra que la máquina víctima solo estableció una sesión con ip remota (10.10.5.199). La salida anterior también muestra los ID de proceso de las sesiones establecidas. A continuación, analizaremos únicamente los procesos enumerados anteriormente.

Antes de usar el complemento malfind (que se usa para la detección de dll maliciosos en el proceso) en los pid encontrados anteriormente, verifique qué programa o servicio se está ejecutando en los procesos anteriores. La siguiente figura muestra el programa o servicio resaltado contra los supuestos pid.

pid específico de pslist

La siguiente instantánea muestra la salida del complemento malfind que se ejecuta contra el pid de iexplorer.exe y el volcado se almacena en el directorio iexplorer.

vol.py --profile=Win2003SP1x89 malfind -D iexplorer/ -p 3280 -f vmem_file_name

malfind_specific_pid

Usando el siguiente comando en el volcado, hemos encontrado dll en el proceso que se muestra en la figura 29.

file iexplorer/*.dmp | less

dll con malaicious

Escanee este dll en el sitio en línea virustotal.com para obtener más detalles sobre la actividad maliciosa detectada en la máquina comprometida.

La salida total de virus contra el archivo de volcado anterior muestra que iexplorer.exe es un programa malicioso y se estaba ejecutando en el sistema comprometido. También muestra que existe un programa malicioso del atacante en el sistema para el acceso persistente.

virustotal

Nuevamente se realizan los mismos pasos en el 2Dakota del Norte proceso (tango.exe) y también lo escaneó virustotal. La siguiente instantánea muestra el proceso completo anterior.

vol.py --profile=Win2003SP1x89 malfind -D tango/ -p 3632 -f vmem_file_name

tango

Ejecute el siguiente comando en los archivos de volcado de tango.

file tango/*.dmp | less

basurero de tango

La siguiente figura muestra la salida del virus total frente a los volcados de tango.exe proceso.

virustotal_tango_dll

El análisis de volatilidad muestra que se estaban ejecutando programas maliciosos en el sistema mientras se realizaba este volcado en vivo. También se asegura de que alguien con información privilegiada haya pirateado el sistema e instale una puerta trasera y troyanos.

Conclusión

En este artículo, se explora exhaustivamente el marco de volatilidad, una herramienta de análisis de memoria de código abierto. Se utiliza principalmente para la detección y el análisis en profundidad de programas maliciosos que se ejecutan en el sistema comprometido. Ya está disponible en muchas distribuciones de seguridad de Linux.

Publicaciones relacionadas

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Botón volver arriba
Cerrar