Logiciel Volatility
volatility | ||||
---|---|---|---|---|
Volatility est un framework open source pour l'informatique légale et en particulier le recouvrement de mémoire, utilisé dans la réponse à incident informatique et l'analyse des logiciels malveillants. Le logiciel est écrit en Python et prend en charge les systèmes d'exploitation Microsoft Windows, Mac OS X et Linux. | ||||
installation |
sudo apt install python2.7
sudo apt install python-pip python-setuptools build-essential python-dev
sudo pip install distorm3==3.4.4
cd /tmp
sudo apt install git
git clone https://github.com/volatilityfoundation/volatility.git
chmod +x volatility/vol.py
sudo mv volatility /opt
sudo ln -s /opt/volatility/vol.py /usr/bin/vol.py
vol.py --info
|
Volatility | ||||
---|---|---|---|---|
imageinfo | information de l'image | volatility -f Challenge2.mem imageinfo | ||
pslist | permet d'obtenir la liste des processus atifs | volatility -f Challenge2.mem --profile=WinXPSP2x86 pslist | ||
pstreee | permet d'obtenir la liste des processus en fonction de leurs dépendance | volatility -f Challenge2.mem --profile=WinXPSP2x86 pstree | ||
connscan | affiche les connexions en cours | volatility -f Challenge2.mem --profile=WinXPSP2x86 connscan | ||
sockets | affiche les socckets ouverts | volatility -f Challenge2.mem --profile=WinXPSP2x86 sockets | ||
printkey | affiche les information sur la base de registre | volatility -f Challenge2.mem --profile=WinXPSP2x86 printkey -K "Microsoft\windows NT\CurrentVersion\Winlogon" | ||
malfind | recherche les exécutables malveillants (généralement des DLL) et le shellcode à l'intérieur de chaque processus | volatility -f Challenge2.mem --profile=WinXPSP2x86 malfind -p 856 --dump-dir <folder/>> | ||
handles | permet d'afficher les pointeurs ouverts dans un processus | volatility -f Challenge2.mem --profile=WinXPSP2x86 handles -p 632,676,856 -t File,Mutant | ||
modscan | La commande modscan trouve les structures LDR_DATA_TABLE_ENTRY (LDR_DATA_TABLE_ENTRY est l'enregistrement NTDLL de la façon dont une DLL est chargée dans un processus.)en analysant la mémoire physique pour les balises de pool. Cela peut récupérer les pilotes précédemment déchargés et les pilotes qui ont été masqués / dissociés par les rootkits | volatility -f Challenge3.mem --profile=WinXPSP2x86 modscan | ||
moddump | permet d'extraire le noyaux d'un driver dans un fichier | volatility -f Challenge3.mem --profile=WinXPSP2x86 moddump --base 0xb21d8000 --dump-dir <folder/>> | ||
timeliner | crée une chronologie à partir de divers artefacts en mémoire à partir de sources | volatility -f Win2k12x64-Snapshot3.vmsn --profile=Win2012R2x64 --kdbg=0xf800f17dd9b0 timeliner --type=_CMHIVE | ||
mftparser | recherche les entrées potentielles de Master File Table (MFT) en mémoire (en utilisant les signatures "FILE" et "BAAD") et imprime les informations pour certains attributs | volatility -f Bob.vmem mftparser | ||
Récupéré la base Sam et décryptages password | ||||
---|---|---|---|---|
Volatility -f <fichier> --profile=Win7SP1x86 hivelist | Pour localiser les adresses virtuelles des ruches de Registre en mémoire et les chemins complets de la ruche correspondante sur le disque | |||
0x76ad61ab 0x131af148 \SystemRoot\System32\Config\SAM [...] 0xa821c0ca 0x039ef008 \REGISTRY\MACHINE\SYSTEM | affiche les registres | |||
Volatility -f ch2.dmp --profile=Win7SP1x86 hashdump -y 0xa821c0ca -s 0x76ad61ab > mp.txt | on fait un dump de la base SAM | |||
cat mp.txt | on affiche les mot de passes hashés | |||
Administrator:500:aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0::: Guest:501:aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0::: John Doe:1000:aad3b435b51404eeaad3b435b51404ee:b9f917853e3dbf6e6831ecce60725930::: | les mots de passes hashés | |||
crackstation | on décrypte le hash sur par exemple crackstation |