Espero que esto simplifique el análisis forense digital de Linux en un entorno remoto. Para usar LiMEaide, todo lo que necesita hacer es alimentar una dirección IP remota del cliente de Linux, sentarse y consumir su bebida con cafeína favorita.
Bueno, ¿cómo funciona?
- Haga una conexión remota con el cliente especificado a través de SHH
- Transfiera los archivos de compilación necesarios a la máquina remota
- Genere la eliminación de memoria Módulo de kernel cargable (LKM) LiME
- LKM va a volcar RAM
- Transfiera los volcados de RAM y los mapas de RAM al host
- Desarrollar un perfil de volatilidad
Dependencias
- python3
- paramiko
- dwarfdump
- Lima
Cómo
TL; DR
python3 limeaide.py <IP>
y la magia sucede.
Uso detallado
limeaide.py [OPTIONS] REMOTE_IP -h, --ayuda Muestra el diálogo de ayuda -u, --user: <usuario> Ejecute la captura de memoria como usuario sudo. Esto es útil cuando no se otorgan privilegios de root. -p, --profile: <distro> <versión del kernel> <arch> Omita el perfilador proporcionando la distribución, la versión del kernel y la arquitectura del cliente remoto. -N, --no-profiler NO ejecute el generador de perfiles y fuerce la creación de un nuevo módulo / perfil para el cliente. -C, --dont-compress No comprimir el archivo de memoria. Por defecto, la memoria está comprimida en el host. Si tiene problemas, alternar este indicador. En mis pruebas veo una reducción de ~ 60% en el tamaño del archivo --delay-pickup Ejecute un trabajo para crear un volcado de RAM en el sistema de destino que recuperará más adelante. El trabajo almacenado se encuentra en la agenda_jobs / dir que termina en .dat -P, --pickup <ruta al archivo de trabajo .dat> Elija un trabajo que haya ejecutado anteriormente con el interruptor de recolección retrasada. El archivo que sigue a este modificador se encuentra en el directorio scheduled_jobs / y termina en .dat -o, --output: <nombre> Cambiar el nombre del archivo de salida. El valor predeterminado es dump.bin -c, --case: <case num> Añada el número de caso al frente del directorio de salida. --fuerza de limpieza Si el intento anterior falló, entonces limpie el cliente
Preparar
Dependencias
pitón
- Base DEB
sudo apt-get install python3-paramiko python3-termcolor
- Base RPM
sudo yum install python3-paramiko python3-termcolor
- pip3
sudo pip3 instalar paramiko termcolor
Lima
Para utilizar LiME, debe descargar y mover la fuente al directorio LiMEaide / tools . Asegúrese de que la carpeta LiME se llame LiME . La ruta completa debe ser la siguiente: NOTA: si desea crear perfiles de Volatility, debe usar mi versión bifurcada de LiME. Esto proporciona símbolos de depuración utilizados por dwarfdump.
LiMEaide / tools / LiME /
Cómo…
- Descargar LiME v1.7.8
- Extracto en
LiMEaide/tools/
- Cambiar el nombre de la carpeta a
LiME
dwarfdump
Para construir un perfil de volatilidad, debemos poder leer los símbolos de depuración en el LKM. Para esto tenemos que instalar dwarfdump. Si encuentra algún problema para encontrar / instalar dwarfdump, consulte la página de volatilidad.
- Administrador de paquetes DEB
sudo apt-get install dwarfdump
- Administrador de paquetes RPM
sudo yum install libdwarf-tools Fuente: n0where.net