Volatility - CheatSheet
Last updated
Last updated
RootedCON est l'événement de cybersécurité le plus pertinent en Espagne et l'un des plus importants en Europe. Avec pour mission de promouvoir les connaissances techniques, ce congrès est un point de rencontre bouillonnant pour les professionnels de la technologie et de la cybersécurité dans chaque discipline.
Si vous voulez quelque chose de rapide et fou qui lancera plusieurs plugins Volatility en parallèle, vous pouvez utiliser : https://github.com/carlospolop/autoVolatility
Accédez à la documentation officielle dans Référence des commandes Volatility
Volatility a deux approches principales pour les plugins, qui se reflètent parfois dans leurs noms. Les plugins "list" essaieront de naviguer à travers les structures du noyau Windows pour récupérer des informations telles que les processus (localiser et parcourir la liste chaînée des structures _EPROCESS
en mémoire), les poignées du système d'exploitation (localiser et répertorier la table des poignées, déréférencer les pointeurs trouvés, etc). Ils se comportent plus ou moins comme le ferait l'API Windows si on lui demandait, par exemple, de lister les processus.
Cela rend les plugins "list" assez rapides, mais tout aussi vulnérables que l'API Windows à la manipulation par des logiciels malveillants. Par exemple, si un logiciel malveillant utilise DKOM pour détacher un processus de la liste chaînée _EPROCESS
, il n'apparaîtra pas dans le Gestionnaire des tâches ni dans la liste des processus.
Les plugins "scan", en revanche, adopteront une approche similaire à celle de la recherche dans la mémoire d'éléments qui pourraient avoir un sens lorsqu'ils sont déréférencés en tant que structures spécifiques. Par exemple, psscan
lira la mémoire et essaiera de créer des objets _EPROCESS
à partir de celle-ci (il utilise la recherche de balises de pool, qui consiste à rechercher des chaînes de 4 octets indiquant la présence d'une structure d'intérêt). L'avantage est qu'il peut retrouver des processus qui ont été arrêtés, et même si un logiciel malveillant altère la liste chaînée _EPROCESS
, le plugin trouvera toujours la structure qui traîne en mémoire (car elle doit toujours exister pour que le processus s'exécute). L'inconvénient est que les plugins "scan" sont un peu plus lents que les plugins "list", et peuvent parfois donner des faux positifs (un processus qui s'est arrêté il y a trop longtemps et dont certaines parties de la structure ont été écrasées par d'autres opérations).
Source : http://tomchop.me/2016/11/21/tutorial-volatility-plugins-malware-analysis/
Comme expliqué dans le fichier readme, vous devez placer la table des symboles du système d'exploitation que vous souhaitez prendre en charge dans volatility3/volatility/symbols. Les packs de tables de symboles pour les différents systèmes d'exploitation sont disponibles en téléchargement sur :
Vous pouvez obtenir la liste des profils pris en charge en exécutant :
Si vous souhaitez utiliser un nouveau profil que vous avez téléchargé (par exemple un profil Linux), vous devez créer quelque part la structure de dossier suivante : plugins/overlays/linux et placer à l'intérieur de ce dossier le fichier zip contenant le profil. Ensuite, obtenez le nombre de profils en utilisant :
Vous pouvez télécharger les profils Linux et Mac depuis https://github.com/volatilityfoundation/profiles
Dans le chunk précédent, vous pouvez voir que le profil s'appelle LinuxCentOS7_3_10_0-123_el7_x86_64_profilex64
, et vous pouvez l'utiliser pour exécuter quelque chose comme:
À partir d'ici: Contrairement à imageinfo qui fournit simplement des suggestions de profil, kdbgscan est conçu pour identifier positivement le bon profil et la bonne adresse KDBG (s'il y en a plusieurs). Ce plugin recherche les signatures KDBGHeader liées aux profils de Volatility et applique des vérifications de cohérence pour réduire les faux positifs. La verbosité de la sortie et le nombre de vérifications de cohérence pouvant être effectuées dépendent de la capacité de Volatility à trouver un DTB, donc si vous connaissez déjà le bon profil (ou si vous avez une suggestion de profil à partir de imageinfo), assurez-vous de l'utiliser à partir de .
Jetez toujours un œil au nombre de processus trouvés par kdbgscan. Parfois, imageinfo et kdbgscan peuvent trouver plus d'un profil approprié, mais seul le bon aura des processus associés (Cela est dû au fait que pour extraire des processus, l'adresse KDBG correcte est nécessaire)
Le bloc de débogage du noyau, appelé KDBG par Volatility, est crucial pour les tâches forensiques effectuées par Volatility et divers débogueurs. Identifié sous le nom de KdDebuggerDataBlock
et du type _KDDEBUGGER_DATA64
, il contient des références essentielles telles que PsActiveProcessHead
. Cette référence spécifique pointe vers la tête de la liste des processus, permettant ainsi l'énumération de tous les processus, ce qui est fondamental pour une analyse approfondie de la mémoire.
Le plugin banners.Banners
peut être utilisé dans vol3 pour essayer de trouver des bannières linux dans le dump.
Extraire les hachages SAM, les informations d'identification mises en cache du domaine et les secrets lsa.
Le vidage de la mémoire d'un processus extraira tout de l'état actuel du processus. Le module procdump extraira uniquement le code.
RootedCON est l'événement le plus pertinent en matière de cybersécurité en Espagne et l'un des plus importants en Europe. Avec pour mission de promouvoir les connaissances techniques, ce congrès est un point de rencontre bouillonnant pour les professionnels de la technologie et de la cybersécurité dans chaque discipline.
Essayez de trouver des processus suspects (par leur nom) ou des processus enfants inattendus (par exemple un cmd.exe en tant que processus enfant de iexplorer.exe). Il pourrait être intéressant de comparer le résultat de pslist avec celui de psscan pour identifier les processus cachés.
Quelque chose de suspect a-t-il été exécuté?
Les commandes exécutées dans cmd.exe
sont gérées par conhost.exe
(ou csrss.exe
sur les systèmes antérieurs à Windows 7). Cela signifie que si cmd.exe
est terminé par un attaquant avant qu'un vidage mémoire ne soit obtenu, il est toujours possible de récupérer l'historique des commandes de la session à partir de la mémoire de conhost.exe
. Pour ce faire, si une activité inhabituelle est détectée dans les modules de la console, la mémoire du processus conhost.exe
associé doit être vidée. Ensuite, en recherchant des chaînes de caractères dans ce vidage, les lignes de commande utilisées dans la session peuvent potentiellement être extraites.
Obtenez les variables d'environnement de chaque processus en cours d'exécution. Il pourrait y avoir des valeurs intéressantes.
Vérifiez les jetons de privilèges dans les services inattendus. Il pourrait être intéressant de lister les processus utilisant un jeton privilégié.
Commandes de base
volatility -f dump.raw imageinfo : Affiche des informations générales sur l'image mémoire.
volatility -f dump.raw pslist : Liste les processus en cours d'exécution.
volatility -f dump.raw pstree : Affiche les processus sous forme d'arborescence.
volatility -f dump.raw psscan : Examine les processus inactifs.
volatility -f dump.raw dlllist -p PID : Liste les DLL chargées par un processus spécifique.
volatility -f dump.raw cmdscan : Recherche les commandes exécutées.
volatility -f dump.raw filescan : Recherche les fichiers ouverts par les processus.
volatility -f dump.raw netscan : Affiche les connexions réseau.
volatility -f dump.raw connections : Affiche les connexions réseau.
volatility -f dump.raw malfind : Recherche les injections de code malveillant.
volatility -f dump.raw cmdline : Affiche les lignes de commande des processus.
volatility -f dump.raw consoles : Affiche les consoles des processus.
volatility -f dump.raw hivelist : Liste les hives de registre.
volatility -f dump.raw printkey -o OFFSET : Affiche les valeurs de clé de registre.
volatility -f dump.raw userassist : Affiche les éléments récemment ouverts par l'utilisateur.
volatility -f dump.raw shimcache : Affiche les entrées de la cache de compatibilité des applications.
volatility -f dump.raw ldrmodules : Affiche les modules chargés par les processus.
volatility -f dump.raw modscan : Recherche les modules noyau chargés.
volatility -f dump.raw getsids : Affiche les SID des processus.
volatility -f dump.raw getservicesids : Affiche les SID des services.
volatility -f dump.raw svcscan : Enumère les services.
volatility -f dump.raw driverirp : Affiche les IRP des pilotes.
volatility -f dump.raw callbacks : Affiche les callbacks du noyau.
volatility -f dump.raw mutantscan : Recherche les objets de mutation.
volatility -f dump.raw envars : Affiche les variables d'environnement des processus.
volatility -f dump.raw atomscan : Recherche les objets atomiques.
volatility -f dump.raw handles : Affiche les handles des processus.
volatility -f dump.raw vadinfo -p PID : Affiche les informations VAD d'un processus.
volatility -f dump.raw vadtree -p PID : Affiche l'arborescence VAD d'un processus.
volatility -f dump.raw vadwalk -p PID -a ADDRESS : Affiche les informations VAD à partir d'une adresse.
volatility -f dump.raw memmap : Affiche la carte mémoire.
volatility -f dump.raw memdump -p PID -D output_directory : Effectue un vidage mémoire d'un processus.
volatility -f dump.raw memdump -p PID -o OFFSET -D output_directory : Effectue un vidage mémoire à partir d'une adresse.
volatility -f dump.raw memstrings -p PID : Recherche les chaînes dans l'espace mémoire d'un processus.
volatility -f dump.raw memstrings -o OFFSET : Recherche les chaînes dans l'espace mémoire à partir d'une adresse.
volatility -f dump.raw yarascan -Y "rule_file" : Recherche des motifs YARA dans l'image mémoire.
volatility -f dump.raw yarascan -p PID -Y "rule_file" : Recherche des motifs YARA dans l'espace mémoire d'un processus.
volatility -f dump.raw yarascan -f "file_path" -Y "rule_file" : Recherche des motifs YARA dans un fichier mémoire.
volatility -f dump.raw dumpfiles -Q 0xADDRESS -D output_directory : Extrait les fichiers en mémoire à partir d'une adresse.
volatility -f dump.raw dumpfiles -Q 0xADDRESS -n -D output_directory : Extrait les fichiers en mémoire à partir d'une adresse sans les reconstruire.
volatility -f dump.raw dumpfiles -Q 0xADDRESS -S 0xSIZE -D output_directory : Extrait les fichiers en mémoire à partir d'une adresse avec une taille spécifiée.
volatility -f dump.raw dumpfiles -Q 0xADDRESS -U -D output_directory : Extrait les fichiers en mémoire à partir d'une adresse en utilisant l'extension.
volatility -f dump.raw dumpfiles -Q 0xADDRESS -n -U -D output_directory : Extrait les fichiers en mémoire à partir d'une adresse en utilisant l'extension sans les reconstruire.
volatility -f dump.raw dumpfiles -Q 0xADDRESS -S 0xSIZE -U -D output_directory : Extrait les fichiers en mémoire à partir d'une adresse en utilisant l'extension avec une taille spécifiée.
volatility -f dump.raw dumpfiles -Q 0xADDRESS -D output_directory -r "regex_pattern" : Extrait les fichiers en mémoire à partir d'une adresse en utilisant une expression régulière.
volatility -f dump.raw dumpfiles -Q 0xADDRESS -D output_directory -i "file_extension" : Extrait les fichiers en mémoire à partir d'une adresse en utilisant une extension spécifique.
volatility -f dump.raw dumpfiles -Q 0xADDRESS -D output_directory -t "file_type" : Extrait les fichiers en mémoire à partir d'une adresse en utilisant un type de fichier spécifique.
volatility -f dump.raw dumpfiles -Q 0xADDRESS -D output_directory -A : Extrait tous les fichiers en mémoire à partir d'une adresse.
volatility -f dump.raw dumpfiles -Q 0xADDRESS -D output_directory -b "file_basename" : Extrait les fichiers en mémoire à partir d'une adresse en utilisant un nom de base de fichier spécifique.
volatility -f dump.raw dumpfiles -Q 0xADDRESS -D output_directory -s "file_size" : Extrait les fichiers en mémoire à partir d'une adresse en utilisant une taille de fichier spécifique.
volatility -f dump.raw dumpfiles -Q 0xADDRESS -D output_directory -l "file_location" : Extrait les fichiers en mémoire à partir d'une adresse en utilisant un emplacement de fichier spécifique.
volatility -f dump.raw dumpfiles -Q 0xADDRESS -D output_directory -e "file_extension" : Extrait les fichiers en mémoire à partir d'une adresse en utilisant une extension de fichier spécifique.
volatility -f dump.raw dumpfiles -Q 0xADDRESS -D output_directory -m "file_magic" : Extrait les fichiers en mémoire à partir d'une adresse en utilisant une signature magique de fichier spécifique.
volatility -f dump.raw dumpfiles -Q 0xADDRESS -D output_directory -c "file_count" : Extrait un nombre spécifié de fichiers en mémoire à partir d'une adresse.
volatility -f dump.raw dumpfiles -Q 0xADDRESS -D output_directory -z : Extrait les fichiers compressés en mémoire à partir d'une adresse.
volatility -f dump.raw dumpfiles -Q 0xADDRESS -D output_directory -g "file_extension" : Extrait les fichiers en mémoire à partir d'une adresse en utilisant une extension de fichier générique.
volatility -f dump.raw dumpfiles -Q 0xADDRESS -D output_directory -w : Extrait les fichiers en mémoire à partir d'une adresse en les écrivant dans un fichier.
volatility -f dump.raw dumpfiles -Q 0xADDRESS -D output_directory -x : Extrait les fichiers en mémoire à partir d'une adresse en les exécutant.
volatility -f dump.raw dumpfiles -Q 0xADDRESS -D output_directory -j "file_path" : Extrait les fichiers en mémoire à partir d'une adresse en les injectant dans un processus.
volatility -f dump.raw dumpfiles -Q 0xADDRESS -D output_directory -y "file_path" : Extrait les fichiers en mémoire à partir d'une adresse en les injectant dans un processus en utilisant l'extension.
volatility -f dump.raw dumpfiles -Q 0xADDRESS -D output_directory -y "file_path" -n : Extrait les fichiers en mémoire à partir d'une adresse en les injectant dans un processus en utilisant l'extension sans les reconstruire.
volatility -f dump.raw dumpfiles -Q 0xADDRESS -D output_directory -y "file_path" -S 0xSIZE : Extrait les fichiers en mémoire à partir d'une adresse en les injectant dans un processus en utilisant l'extension avec une taille spécifiée.
volatility -f dump.raw dumpfiles -Q 0xADDRESS -D output_directory -y "file_path" -r "regex_pattern" : Extrait les fichiers en mémoire à partir d'une adresse en les injectant dans un processus en utilisant une expression régulière.
volatility -f dump.raw dumpfiles -Q 0xADDRESS -D output_directory -y "file_path" -i "file_extension" : Extrait les fichiers en mémoire à partir d'une adresse en les injectant dans un processus en utilisant une extension spécifique.
volatility -f dump.raw dumpfiles -Q 0xADDRESS -D output_directory -y "file_path" -t "file_type" : Extrait les fichiers en mémoire à partir d'une adresse en les injectant dans un processus en utilisant un type de fichier spécifique.
volatility -f dump.raw dumpfiles -Q 0xADDRESS -D output_directory -y "file_path" -A : Extrait tous les fichiers en mémoire à partir d'une adresse en les injectant dans un processus.
volatility -f dump.raw dumpfiles -Q 0xADDRESS -D output_directory -y "file_path" -b "file_basename" : Extrait les fichiers en mémoire à partir d'une adresse en les injectant dans un processus en utilisant un nom de base de fichier spécifique.
volatility -f dump.raw dumpfiles -Q 0xADDRESS -D output_directory -y "file_path" -s "file_size" : Extrait les fichiers en mémoire à partir d'une adresse en les injectant dans un processus en utilisant une taille de fichier spécifique.
volatility -f dump.raw dumpfiles -Q 0xADDRESS -D output_directory -y "file_path" -l "file_location" : Extrait les fichiers en mémoire à partir d'une adresse en les injectant dans un processus en utilisant un emplacement de fichier spécifique.
volatility -f dump.raw dumpfiles -Q 0xADDRESS -D output_directory -y "file_path" -e "file_extension" : Extrait les fichiers en mémoire à partir d'une adresse en les injectant dans un processus en utilisant une extension de fichier spécifique.
volatility -f dump.raw dumpfiles -Q 0xADDRESS -D output_directory -y "file_path" -m "file_magic" : Extrait les fichiers en mémoire à partir d'une adresse en les injectant dans un processus en utilisant une signature magique de fichier spécifique.
volatility -f dump.raw dumpfiles -Q 0xADDRESS -D output_directory -y "file_path" -c "file_count" : Extrait un nombre spécifié de fichiers en mémoire à partir d'une adresse en les injectant dans un processus.
volatility -f dump.raw dumpfiles -Q 0xADDRESS -D output_directory -y "file_path" -z : Extrait les fichiers compressés en mémoire à partir d'une adresse en les injectant dans un processus.
volatility -f dump.raw dumpfiles -Q 0xADDRESS -D output_directory -y "file_path" -g "file_extension" : Extrait les fichiers en mémoire à partir d'une adresse en les injectant dans un processus en utilisant une extension de fichier générique.
volatility -f dump.raw dumpfiles -Q 0xADDRESS -D output_directory -y "file_path" -w : Extrait les fichiers en mémoire à partir d'une adresse en les injectant dans un processus en les écrivant dans un fichier.
volatility -f dump.raw dumpfiles -Q 0xADDRESS -D output_directory -y "file_path" -x : Extrait les fichiers en mémoire à partir d'une adresse en les injectant dans un processus en les exécutant.
Plugins supplémentaires
volatility -f dump.raw malfind : Recherche les injections de code malveillant.
volatility -f dump.raw malfind -p PID : Recherche les injections de code malveillant dans un processus spécifique.
volatility -f dump.raw malfind -D output_directory : Recherche les injections de code malveillant et les extrait dans un répertoire.
volatility -f dump.raw malfind -p PID -D output_directory : Recherche les injections de code malveillant dans un processus spécifique et les extrait dans un répertoire.
volatility -f dump.raw malfind -Y "rule_file" : Recherche les injections de code malveillant en utilisant des règles YARA.
volatility -f dump.raw malfind -p PID -Y "rule_file" : Recherche les injections de code malveillant dans un processus spécifique en utilisant des règles YARA.
volatility -f dump.raw malfind -D output_directory -Y "rule_file" : Recherche les injections de code malveillant et les extrait dans un répertoire en utilisant des règles YARA.
volatility -f dump.raw malfind -p PID -D output_directory -Y "rule_file" : Recherche les injections de code malveillant dans un processus spécifique et les extrait dans un répertoire en utilisant des règles YARA.
Vérifiez chaque SSID possédé par un processus. Il pourrait être intéressant de lister les processus utilisant un SID de privilèges (et les processus utilisant un SID de service).
volatility -f dump.mem imageinfo : Affiche des informations générales sur le dump mémoire.
volatility -f dump.mem pslist : Liste les processus en cours d'exécution.
volatility -f dump.mem psscan : Examine les processus à partir des structures EPROCESS.
volatility -f dump.mem pstree : Affiche les processus sous forme d'arborescence.
volatility -f dump.mem dlllist -p PID : Liste les DLL chargées par un processus spécifique.
volatility -f dump.mem cmdline -p PID : Affiche la ligne de commande d'un processus spécifique.
volatility -f dump.mem filescan : Analyse les handles de fichiers.
volatility -f dump.mem netscan : Examine les connexions réseau.
volatility -f dump.mem connections : Affiche les connexions réseau.
volatility -f dump.mem malfind : Recherche de code malveillant dans les processus.
volatility -f dump.mem apihooks : Recherche les hooks d'API dans les processus.
volatility -f dump.mem ldrmodules : Liste les modules chargés dans les processus.
volatility -f dump.mem modscan : Analyse les modules noyau.
volatility -f dump.mem shimcache : Extrait les entrées de la base de données ShimCache.
volatility -f dump.mem userassist : Extrait les entrées UserAssist.
volatility -f dump.mem hivelist : Liste les hives du registre.
volatility -f dump.mem printkey -o OFFSET : Affiche les sous-clés et valeurs d'une clé de registre.
volatility -f dump.mem hashdump : Dump les hachages de mots de passe.
volatility -f dump.mem truecryptpassphrase : Extrait les passphrases TrueCrypt.
Volatility Plugins : Référence des plugins supplémentaires disponibles.
Utile pour savoir à quels autres fichiers, clés, threads, processus... un processus a une poignée (a ouvert)
volatility -f dump.raw imageinfo : Informations sur l'image mémoire
volatility -f dump.raw pslist : Liste des processus en cours d'exécution
volatility -f dump.raw psscan : Analyse des processus non alloués
volatility -f dump.raw pstree : Affiche les processus sous forme d'arborescence
volatility -f dump.raw dlllist -p PID : Liste des DLL chargées par un processus
volatility -f dump.raw filescan : Analyse des fichiers non alloués
volatility -f dump.raw cmdline -p PID : Ligne de commande d'un processus
volatility -f dump.raw netscan : Liste des connexions réseau
volatility -f dump.raw connections : Analyse des connexions réseau
volatility -f dump.raw malfind : Recherche de code malveillant dans les processus
volatility -f dump.raw userassist : Informations sur les programmes utilisés par l'utilisateur
volatility -f dump.raw hivelist : Liste des hives de registre
volatility -f dump.raw printkey -o OFFSET : Affiche les valeurs d'une clé de registre
volatility -f dump.raw hashdump : Dump des mots de passe en mémoire
volatility -f dump.raw shimcache : Analyse du cache de compatibilité des applications
volatility -f dump.raw ldrmodules : Liste des modules chargés par les processus
volatility -f dump.raw modscan : Analyse des modules noyau non alloués
volatility -f dump.raw mutantscan : Analyse des objets de synchronisation
volatility -f dump.raw svcscan : Liste des services système
volatility -f dump.raw getsids : Liste des SID des processus
volatility -f dump.raw apihooks : Recherche de hooks dans les processus
volatility -f dump.raw envars : Variables d'environnement des processus
volatility -f dump.raw dumpfiles -Q chemin_dossier : Extraction des fichiers en mémoire
volatility -f dump.raw memdump -p PID -D chemin_dossier : Extraction de la mémoire d'un processus
volatility -f dump.raw memmap : Cartographie de la mémoire
volatility -f dump.raw timeliner : Création d'une timeline des événements
volatility -f dump.raw screenshot -D chemin_dossier : Capture d'écran de l'écran mémoire
volatility -f dump.raw procdump -p PID -D chemin_dossier : Dump du processus mémoire
volatility -f dump.raw procdump -p PID -D chemin_dossier --dump-dir autre_chemin : Dump du processus mémoire dans un répertoire spécifique
volatility -f dump.raw memstrings -p PID : Recherche de chaînes ASCII et Unicode en mémoire
volatility -f dump.raw yarascan -Y chemin_regles : Analyse avec Yara
volatility -f dump.raw yarascan -Y chemin_regles --yara-file fichier_yara : Analyse avec Yara en utilisant un fichier Yara spécifique
volatility -f dump.raw shimcachemem -s chemin_fichier : Analyse du cache de compatibilité des applications en mémoire
volatility -f dump.raw shimcachemem -s chemin_fichier --output-file fichier_sortie : Analyse du cache de compatibilité des applications en mémoire avec sauvegarde dans un fichier de sortie
volatility --plugins=/chemin_vers_plugins -f dump.raw plugin_name : Utilisation de plugins personnalisés
volatility --info | grep -i plugin_name : Recherche d'informations sur un plugin
volatility --info | grep -i profile_name : Recherche d'informations sur un profil
volatility -f dump.mem imageinfo : Informations sur l'image mémoire
volatility -f dump.mem pslist : Liste des processus en cours d'exécution
volatility -f dump.mem psscan : Analyse des processus non affichés dans la liste des tâches
volatility -f dump.mem pstree : Affiche les processus sous forme d'arborescence
volatility -f dump.mem dlllist -p PID : Liste des DLL chargées par un processus
volatility -f dump.mem filescan : Analyse des fichiers ouverts par les processus
volatility -f dump.mem cmdline -p PID : Ligne de commande d'un processus
volatility -f dump.mem consoles : Recherche de consoles virtuelles
volatility -f dump.mem connections : Liste des connexions réseau
volatility -f dump.mem netscan : Analyse des connexions réseau
volatility -f dump.mem svcscan : Liste des services
volatility -f dump.mem malfind : Recherche de code malveillant dans les processus
volatility -f dump.mem apihooks : Recherche de hooks API dans les processus
volatility -f dump.mem shimcache : Extraction de la base de données Shimcache
volatility -f dump.mem hivelist : Liste des hives de registre
volatility -f dump.mem printkey -o OFFSET : Affiche une clé de registre à partir d'un offset donné
volatility -f dump.mem userassist : Extraction des entrées UserAssist
volatility -f dump.mem getsids : Liste des SID des processus
volatility -f dump.mem modscan : Analyse des modules noyau chargés
volatility -f dump.mem driverirp : Analyse des IRP des pilotes
volatility -f dump.mem ssdt : Recherche des adresses de la SSDT
volatility -f dump.mem callbacks : Recherche des adresses de callbacks
volatility -f dump.mem mutantscan : Analyse des objets mutant
volatility -f dump.mem ldrmodules : Liste des modules chargés par le loader
volatility -f dump.mem atomscan : Analyse des objets atom
volatility -f dump.mem deskscan : Analyse des objets de bureau
volatility -f dump.mem hivescan : Analyse des hives de registre
volatility -f dump.mem printkey -K KEY : Affiche une clé de registre à partir d'un chemin donné
volatility -f dump.mem dumpregistry -o OFFSET -s SIZE -k KEY : Extraction d'une partie de la base de registre
volatility -f dump.mem dumpfiles -Q PATH : Extraction des fichiers en mémoire
volatility -f dump.mem dumpfiles -D DIR -Q PATH : Extraction des fichiers en mémoire dans un répertoire donné
volatility -f dump.mem dumpfiles -S PATH -Q PATH : Extraction des fichiers en mémoire avec un nom spécifique
volatility -f dump.mem dumpfiles -n -Q PATH : Extraction des fichiers en mémoire sans les en-têtes
volatility -f dump.mem dumpfiles -Q PATH --dump-dir OUTPUT_DIR : Extraction des fichiers en mémoire dans un répertoire spécifique
volatility -f dump.mem dumpfiles -Q PATH --dump-dir OUTPUT_DIR -D DIR : Extraction des fichiers en mémoire dans un répertoire spécifique avec un préfixe
volatility -f dump.mem dumpfiles -Q PATH --dump-dir OUTPUT_DIR -n : Extraction des fichiers en mémoire sans les en-têtes dans un répertoire spécifique
volatility -f dump.mem dumpfiles -Q PATH --dump-dir OUTPUT_DIR -n -S PATH : Extraction des fichiers en mémoire sans les en-têtes dans un répertoire spécifique avec un nom spécifique
volatility -f dump.mem dumpfiles -Q PATH --dump-dir OUTPUT_DIR -n -D DIR : Extraction des fichiers en mémoire sans les en-têtes dans un répertoire spécifique avec un préfixe
volatility -f dump.mem dumpfiles -Q PATH --dump-dir OUTPUT_DIR -n -D DIR -S PATH : Extraction des fichiers en mémoire sans les en-têtes dans un répertoire spécifique avec un préfixe et un nom spécifique
volatility -f dump.mem dumpregistry -o OFFSET -s SIZE -k KEY --dump-dir OUTPUT_DIR : Extraction d'une partie de la base de registre dans un répertoire spécifique
volatility -f dump.mem dumpregistry -o OFFSET -s SIZE -k KEY --dump-dir OUTPUT_DIR -D DIR : Extraction d'une partie de la base de registre dans un répertoire spécifique avec un préfixe
volatility -f dump.mem dumpregistry -o OFFSET -s SIZE -k KEY --dump-dir OUTPUT_DIR -n : Extraction d'une partie de la base de registre sans les en-têtes dans un répertoire spécifique
volatility -f dump.mem dumpregistry -o OFFSET -s SIZE -k KEY --dump-dir OUTPUT_DIR -n -D DIR : Extraction d'une partie de la base de registre sans les en-têtes dans un répertoire spécifique avec un préfixe
volatility -f dump.mem dumpregistry -o OFFSET -s SIZE -k KEY --dump-dir OUTPUT_DIR -n -D DIR -S PATH : Extraction d'une partie de la base de registre sans les en-têtes dans un répertoire spécifique avec un préfixe et un nom spécifique
volatility -f dump.mem shimcachemem : Extraction de la base de données Shimcache en mémoire
volatility -f dump.mem mftparser : Analyse du Master File Table (MFT)
volatility -f dump.mem hivelist : Liste des hives de registre
volatility -f dump.mem printkey -o OFFSET : Affiche une clé de registre à partir d'un offset donné
volvolatility -f dump.mem userassist : Extraction des entrées UserAssist
volatility -f dump.mem getsids : Liste des SID des processus
volatility -f dump.mem modscan : Analyse des modules noyau chargés
volatility -f dump.mem driverirp : Analyse des IRP des pilotes
volatility -f dump.mem ssdt : Recherche des adresses de la SSDT
volatility -f dump.mem callbacks : Recherche des adresses de callbacks
volatility -f dump.mem mutantscan : Analyse des objets mutant
volatility -f dump.mem ldrmodules : Liste des modules chargés par le loader
volatility -f dump.mem atomscan : Analyse des objets atom
volatility -f dump.mem deskscan : Analyse des objets de bureau
volatility -f dump.mem hivescan : Analyse des hives de registre
volatility -f dump.mem printkey -K KEY : Affiche une clé de registre à partir d'un chemin donné
volatility -f dump.mem dumpregistry -o OFFSET -s SIZE -k KEY : Extraction d'une partie de la base de registre
volatility -f dump.mem dumpfiles -Q PATH : Extraction des fichiers en mémoire
volatility -f dump.mem dumpfiles -D DIR -Q PATH : Extraction des fichiers en mémoire dans un répertoire donné
volatility -f dump.mem dumpfiles -S PATH -Q PATH : Extraction des fichiers en mémoire avec un nom spécifique
volatility -f dump.mem dumpfiles -n -Q PATH : Extraction des fichiers en mémoire sans les en-têtes
volatility -f dump.mem dumpfiles -Q PATH --dump-dir OUTPUT_DIR : Extraction des fichiers en mémoire dans un répertoire spécifique
volatility -f dump.mem dumpfiles -Q PATH --dump-dir OUTPUT_DIR -D DIR : Extraction des fichiers en mémoire dans un répertoire spécifique avec un préfixe
volatility -f dump.mem dumpfiles -Q PATH --dump-dir OUTPUT_DIR -n : Extraction des fichiers en mémoire sans les en-têtes dans un répertoire spécifique
volatility -f dump.mem dumpfiles -Q PATH --dump-dir OUTPUT_DIR -n -S PATH : Extraction des fichiers en mémoire sans les en-têtes dans un répertoire spécifique avec un nom spécifique
volatility -f dump.mem dumpfiles -Q PATH --dump-dir OUTPUT_DIR -n -D DIR : Extraction des fichiers en mémoire sans les en-têtes dans un répertoire spécifique avec un préfixe
volatility -f dump.mem dumpfiles -Q PATH --dump-dir OUTPUT_DIR -n -D DIR -S PATH : Extraction des fichiers en mémoire sans les en-têtes dans un répertoire spécifique avec un préfixe et un nom spécifique
volatility -f dump.mem dumpregistry -o OFFSET -s SIZE -k KEY --dump-dir OUTPUT_DIR : Extraction d'une partie de la base de registre dans un répertoire spécifique
volatility -f dump.mem dumpregistry -o OFFSET -s SIZE -k KEY --dump-dir OUTPUT_DIR -D DIR : Extraction d'une partie de la base de registre dans un répertoire spécifique avec un préfixe
volatility -f dump.mem dumpregistry -o OFFSET -s SIZE -k KEY --dump-dir OUTPUT_DIR -n : Extraction d'une partie de la base de registre sans les en-têtes dans un répertoire spécifique
volatility -f dump.mem dumpregistry -o OFFSET -s SIZE -k KEY --dump-dir OUTPUT_DIR -n -D DIR : Extraction d'une partie de la base de registre sans les en-têtes dans un répertoire spécifique avec un préfixe
volatility -f dump.mem dumpregistry -o OFFSET -s SIZE -k KEY --dump-dir OUTPUT_DIR -n -D DIR -S PATH : Extraction d'une partie de la base de registre sans les en-têtes dans un répertoire spécifique avec un préfixe et un nom spécifique
Volatility nous permet de vérifier à quel processus appartient une chaîne.
Il permet également de rechercher des chaînes de caractères à l'intérieur d'un processus en utilisant le module yarascan :
volatility -f dump.mem imageinfo : Affiche des informations générales sur le dump mémoire.
volatility -f dump.mem pslist : Liste les processus en cours d'exécution.
volatility -f dump.mem psscan : Examine les processus à partir de la mémoire physique.
volatility -f dump.mem pstree : Affiche les processus sous forme d'arborescence.
volatility -f dump.mem dlllist : Liste les DLL chargées dans les processus.
volatility -f dump.mem filescan : Recherche les handles de fichiers ouverts.
volatility -f dump.mem cmdline : Affiche les lignes de commande des processus.
volatility -f dump.mem netscan : Recherche les connexions réseau.
volatility -f dump.mem connections : Affiche les connexions réseau.
volatility -f dump.mem malfind : Recherche les indicateurs de code malveillant.
volatility -f dump.mem apihooks : Recherche les hooks API.
volatility -f dump.mem ldrmodules : Liste les modules chargés dynamiquement.
volatility -f dump.mem modscan : Recherche les modules noyau.
volatility -f dump.mem ssdt : Affiche la table de service du noyau.
volatility -f dump.mem callbacks : Affiche les callbacks du noyau.
volatility -f dump.mem driverirp : Affiche les dispatch routines des pilotes.
volatility -f dump.mem devicetree : Affiche l'arborescence des périphériques.
volatility -f dump.mem hivelist : Liste les hives de registre.
volatility -f dump.mem printkey : Affiche les valeurs de clé de registre.
volatility -f dump.mem userassist : Affiche les entrées UserAssist.
volatility -f dump.mem shimcache : Affiche les entrées ShimCache.
volatility -f dump.mem getsids : Affiche les SID des processus.
volatility -f dump.mem getservicesids : Affiche les SID des services.
volatility -f dump.mem getsidsandprivs : Affiche les SID et privilèges des processus.
volatility -f dump.mem envars : Affiche les variables d'environnement des processus.
volatility -f dump.mem consoles : Affiche les consoles des processus.
volatility -f dump.mem mutantscan : Recherche les objets mutant.
volatility -f dump.mem handles : Affiche les handles des processus.
volatility -f dump.mem vadinfo : Affiche les informations VAD.
volatility -f dump.mem vadtree : Affiche l'arborescence VAD.
volatility -f dump.mem vadwalk : Affiche les pages VAD.
volatility -f dump.mem memmap : Affiche la carte mémoire.
volatility -f dump.mem memdump -p PID -D dossier : Effectue un dump de la mémoire d'un processus spécifique.
volatility -f dump.mem memdump -p PID -D dossier --name : Effectue un dump de la mémoire d'un processus spécifique avec le nom du processus.
volatility -f dump.mem memdump -p PID -D dossier --name --dump-dir : Effectue un dump de la mémoire d'un processus spécifique avec le nom du processus dans un répertoire spécifique.
volatility -f dump.mem memdump -p PID -D dossier --name --dump-dir --output : Effectue un dump de la mémoire d'un processus spécifique avec le nom du processus dans un répertoire spécifique et affiche les informations de progression.
volatility -f dump.mem memdump -p PID -D dossier --name --dump-dir --output --phys-offset : Effectue un dump de la mémoire d'un processus spécifique avec le nom du processus dans un répertoire spécifique, affiche les informations de progression et l'offset physique.
volatility -f dump.mem memdump -p PID -D dossier --name --dump-dir --output --phys-offset --memory : Effectue un dump de la mémoire d'un processus spécifique avec le nom du processus dans un répertoire spécifique, affiche les informations de progression, l'offset physique et la mémoire physique.
volvolatility -f dump.mem memdump -p PID -D dossier --name --dump-dir --output --phys-offset --memory --format : Effectue un dump de la mémoire d'un processus spécifique avec le nom du processus dans un répertoire spécifique, affiche les informations de progression, l'offset physique, la mémoire physique et le format de sortie.
volatility -f dump.mem kdbgscan : Recherche le KDBG.
volatility -f dump.mem kpcrscan : Recherche le KPCR.
volatility -f dump.mem psxview : Affiche les processus cachés.
volatility -f dump.mem ldrmodules -p PID : Liste les modules chargés dynamiquement pour un processus spécifique.
volatility -f dump.mem malfind -p PID : Recherche les indicateurs de code malveillant pour un processus spécifique.
volatility -f dump.mem dlllist -p PID : Liste les DLL chargées dans un processus spécifique.
volatility -f dump.mem handles -p PID : Affiche les handles d'un processus spécifique.
volatility -f dump.mem cmdline -p PID : Affiche la ligne de commande d'un processus spécifique.
volatility -f dump.mem filescan -p PID : Recherche les handles de fichiers ouverts pour un processus spécifique.
volatility -f dump.mem vadinfo -p PID : Affiche les informations VAD pour un processus spécifique.
volatility -f dump.mem vadtree -p PID : Affiche l'arborescence VAD pour un processus spécifique.
volatility -f dump.mem vadwalk -p PID : Affiche les pages VAD pour un processus spécifique.
volatility -f dump.mem memdump -p PID -D dossier --name : Effectue un dump de la mémoire d'un processus spécifique avec le nom du processus.
volatility -f dump.mem memdump -p PID -D dossier --name --dump-dir : Effectue un dump de la mémoire d'un processus spécifique avec le nom du processus dans un répertoire spécifique.
volatility -f dump.mem memdump -p PID -D dossier --name --dump-dir --output : Effectue un dump de la mémoire d'un processus spécifique avec le nom du processus dans un répertoire spécifique et affiche les informations de progression.
volatility -f dump.mem memdump -p PID -D dossier --name --dump-dir --output --phys-offset : Effectue un dump de la mémoire d'un processus spécifique avec le nom du processus dans un répertoire spécifique, affiche les informations de progression et l'offset physique.
volatility -f dump.mem memdump -p PID -D dossier --name --dump-dir --output --phys-offset --memory : Effectue un dump de la mémoire d'un processus spécifique avec le nom du processus dans un répertoire spécifique, affiche les informations de progression, l'offset physique et la mémoire physique.
volatility -f dump.mem memdump -p PID -D dossier --name --dump-dir --output --phys-offset --memory --format : Effectue un dump de la mémoire d'un processus spécifique avec le nom du processus dans un répertoire spécifique, affiche les informations de progression, l'offset physique, la mémoire physique et le format de sortie.
Windows garde une trace des programmes que vous exécutez en utilisant une fonctionnalité dans le registre appelée clés UserAssist. Ces clés enregistrent combien de fois chaque programme est exécuté et quand il a été exécuté pour la dernière fois.
RootedCON est l'événement le plus pertinent en matière de cybersécurité en Espagne et l'un des plus importants en Europe. Avec pour mission de promouvoir les connaissances techniques, ce congrès est un point de rencontre bouillonnant pour les professionnels de la technologie et de la cybersécurité dans chaque discipline.
Commandes de base
volatility -f dump.mem imageinfo : Informations sur l'image mémoire
volatility -f dump.mem --profile=PROFILE pslist : Liste des processus
volatility -f dump.mem --profile=PROFILE pstree : Arborescence des processus
volatility -f dump.mem --profile=PROFILE psscan : Analyse des processus
volatility -f dump.mem --profile=PROFILE netscan : Analyse des connexions réseau
volatility -f dump.mem --profile=PROFILE connections : Liste des connexions réseau
volatility -f dump.mem --profile=PROFILE cmdscan : Analyse des commandes exécutées
volatility -f dump.mem --profile=PROFILE consoles : Liste des consoles interactives
volatility -f dump.mem --profile=PROFILE filescan : Analyse des fichiers ouverts
volatility -f dump.mem --profile=PROFILE dlllist : Liste des DLL chargées
volatility -f dump.mem --profile=PROFILE getsids : Liste des SID
volatility -f dump.mem --profile=PROFILE hivelist : Liste des hôtes de registre
volatility -f dump.mem --profile=PROFILE userassist : Liste des éléments UserAssist
volatility -f dump.mem --profile=PROFILE shimcache : Liste des entrées ShimCache
volatility -f dump.mem --profile=PROFILE mftparser : Analyse du Master File Table
volatility -f dump.mem --profile=PROFILE ldrmodules : Liste des modules chargés
volatility -f dump.mem --profile=PROFILE modscan : Analyse des modules
volatility -f dump.mem --profile=PROFILE mutantscan : Analyse des objets Mutant
volatility -f dump.mem --profile=PROFILE svcscan : Analyse des services
volatility -f dump.mem --profile=PROFILE envars : Liste des variables d'environnement
volatility -f dump.mem --profile=PROFILE cmdline : Lignes de commande des processus
volatility -f dump.mem --profile=PROFILE consoles : Liste des consoles interactives
volatility -f dump.mem --profile=PROFILE hivelist : Liste des hôtes de registre
volatility -f dump.mem --profile=PROFILE userassist : Liste des éléments UserAssist
volatility -f dump.mem --profile=PROFILE shimcache : Liste des entrées ShimCache
volatility -f dump.mem --profile=PROFILE mftparser : Analyse du Master File Table
volatility -f dump.mem --profile=PROFILE ldrmodules : Liste des modules chargés
volatility -f dump.mem --profile=PROFILE modscan : Analyse des modules
volatility -f dump.mem --profile=PROFILE mutantscan : Analyse des objets Mutant
volatility -f dump.mem --profile=PROFILE svcscan : Analyse des services
volatility -f dump.mem --profile=PROFILE envars : Liste des variables d'environnement
volatility -f dump.mem --profile=PROFILE cmdline : Lignes de commande des processus
Plugins supplémentaires
volatility -f dump.mem --profile=PROFILE timeliner : Crée une timeline des activités
volatility -f dump.mem --profile=PROFILE dumpfiles -Q ADDRESS -D /path/to/dump/ : Extraction de fichiers
volatility -f dump.mem --profile=PROFILE memdump -p PID -D /path/to/dump/ : Extraction de l'espace mémoire d'un processus
voljson -f dump.mem --profile=PROFILE pslist : Exporter la sortie en JSON
volatility -f dump.mem --profile=PROFILE linux_bash : Analyse des artefacts Bash sur Linux
volatility -f dump.mem --profile=PROFILE linux_netstat : Analyse des connexions réseau sur Linux
volatility -f dump.mem --profile=PROFILE linux_lsof : Liste des fichiers ouverts sur Linux
volatility -f dump.mem --profile=PROFILE linux_yarascan : Analyse des fichiers avec Yara sur Linux
volatility -f dump.raw imageinfo : Affiche des informations générales sur l'image mémoire.
volatility -f dump.raw pslist : Liste les processus en cours d'exécution.
volatility -f dump.raw pstree : Affiche les processus sous forme d'arborescence.
volatility -f dump.raw psscan : Recherche les processus supprimés.
volatility -f dump.raw dlllist -p PID : Liste les DLL chargées par un processus spécifique.
volatility -f dump.raw cmdline -p PID : Affiche la ligne de commande d'un processus spécifique.
volatility -f dump.raw filescan : Recherche les fichiers ouverts par les processus.
volatility -f dump.raw netscan : Affiche les connexions réseau.
volatility -f dump.raw connections : Affiche les connexions réseau avec les adresses IP et les ports.
volatility -f dump.raw malfind : Recherche les indicateurs de programmes malveillants.
volatility -f dump.raw apihooks : Recherche les hooks d'API.
volatility -f dump.raw ldrmodules : Liste les modules chargés par les processus.
volatility -f dump.raw handles : Affiche les handles des processus.
volatility -f dump.raw mutantscan : Recherche les objets de type mutant.
volatility -f dump.raw svcscan : Recherche les services.
volatility -f dump.raw modscan : Recherche les modules noyau.
volatility -f dump.raw driverirp : Affiche les IRP des pilotes.
volatility -f dump.raw devicetree : Affiche l'arborescence des périphériques.
volatility -f dump.raw printkey -K "ControlSet001\services" : Affiche les clés de registre.
volatility -f dump.raw hivelist : Affiche les hives de registre.
volatility -f dump.raw userassist : Affiche les entrées UserAssist.
volatility -f dump.raw shimcache : Affiche les entrées ShimCache.
volatility -f dump.raw getsids : Affiche les SID des processus.
volatility -f dump.raw getservicesids : Affiche les SID des services.
volatility -f dump.raw printkey -K "Software\Microsoft\Windows\CurrentVersion\Run" : Affiche les programmes au démarrage.
volatility -f dump.raw printkey -K "Software\Microsoft\Windows\CurrentVersion\RunOnce" : Affiche les programmes au démarrage (une seule fois).
volatility -f dump.raw printkey -K "Software\Microsoft\Windows\CurrentVersion\Explorer\StartupApproved\Run" : Affiche les programmes approuvés au démarrage.
volatility -f dump.raw printkey -K "Software\Microsoft\Windows\CurrentVersion\Explorer\StartupApproved\Run32" : Affiche les programmes approuvés au démarrage (32 bits).
volatility -f dump.raw printkey -K "Software\Microsoft\Windows\CurrentVersion\Explorer\StartupApproved\StartupFolder" : Affiche les programmes du dossier de démarrage approuvés.
volatility -f dump.raw printkey -K "Software\Microsoft\Windows\CurrentVersion\Explorer\StartupApproved\StartupFolder" : Affiche les programmes du dossier de démarrage approuvés (32 bits).
volatility -f dump.raw printkey -K "Software\Microsoft\Windows\CurrentVersion\Explorer\ComDlg32\LastVisitedMRU" : Affiche les derniers fichiers ouverts.
volatility -f dump.raw printkey -K "Software\Microsoft\Windows\CurrentVersion\Explorer\ComDlg32\OpenSaveMRU" : Affiche les fichiers ouverts et enregistrés récemment.
volatility -f dump.raw printkey -K "Software\Microsoft\Windows\CurrentVersion\Explorer\RecentDocs" : Affiche les documents récemment ouverts.
volatility -f dump.raw printkey -K "Software\Microsoft\Windows\CurrentVersion\Explorer\TypedPaths" : Affiche les chemins d'accès tapés récemment.
volatility -f dump.raw printkey -K "Software\Microsoft\Windows\CurrentVersion\Explorer\RunMRU" : Affiche les commandes exécutées récemment.
volatility -f dump.raw printkey -K "Software\Microsoft\Windows\CurrentVersion\Explorer\ComDlg32\OpenSavePidlMRU" : Affiche les PIDL des fichiers ouverts et enregistrés récemment.
volatility -f dump.raw printkey -K "Software\Microsoft\Windows\CurrentVersion\Explorer\ComDlg32\LastVisitedPidlMRU" : Affiche les PIDL des derniers fichiers ouverts.
volatility -f dump.raw printkey -K "Software\Microsoft\Windows\CurrentVersion\Explorer\RunMRU" : Affiche les commandes exécutées récemment.
volatility -f dump.raw printkey -K "Software\Microsoft\Windows\CurrentVersion\Explorer\ComDlg32\OpenSavePidlMRU" : Affiche les PIDL des fichiers ouverts et enregistrés récemment.
volatility -f dump.raw printkey -K "Software\Microsoft\Windows\CurrentVersion\Explorer\ComDlg32\LastVisitedPidlMRU" : Affiche les PIDL des derniers fichiers ouverts.
volatility -f dump.raw printkey -K "Software\Microsoft\Windows\CurrentVersion\Explorer\RunMRU" : Affiche les commandes exécutées récemment.
volatility -f dump.raw printkey -K "Software\Microsoft\Windows\CurrentVersion\Explorer\ComDlg32\OpenSavePidlMRU" : Affiche les PIDL des fichiers ouverts et enregistrés récemment.
volatility -f dump.raw printkey -K "Software\Microsoft\Windows\CurrentVersion\Explorer\ComDlg32\LastVisitedPidlMRU" : Affiche les PIDL des derniers fichiers ouverts.
volatility -f dump.raw mimikatz : Exécute Mimikatz sur l'image mémoire.
volatility -f dump.raw truecryptpassphrase : Recherche les passphrases TrueCrypt.
volatility -f dump.raw hashdump : Dump les hachages de mots de passe.
volatility -f dump.raw hivelist : Affiche les hives de registre.
volatility -f dump.raw userassist : Affiche les entrées UserAssist.
volatility -f dump.raw shimcache : Affiche les entrées ShimCache.
volatility -f dump.raw getsids : Affiche les SID des processus.
volatility -f dump.raw getservicesids : Affiche les SID des services.
volatility -f dump.raw printkey -K "Software\Microsoft\Windows\CurrentVersion\Run" : Affiche les programmes au démarrage.
volatility -f dump.raw printkey -K "Software\Microsoft\Windows\CurrentVersion\RunOnce" : Affiche les programmes au démarrage (une seule fois).
volatility -f dump.raw printkey -K "Software\Microsoft\Windows\CurrentVersion\Explorer\StartupApproved\Run" : Affiche les programmes approuvés au démarrage.
volatility -f dump.raw printkey -K "Software\Microsoft\Windows\CurrentVersion\Explorer\StartupApproved\Run32" : Affiche les programmes approuvés au démarrage (32 bits).
volatility -f dump.raw printkey -K "Software\Microsoft\Windows\CurrentVersion\Explorer\StartupApproved\StartupFolder" : Affiche les programmes du dossier de démarrage approuvés.
volatility -f dump.raw printkey -K "Software\Microsoft\Windows\CurrentVersion\Explorer\StartupApproved\StartupFolder" : Affiche les programmes du dossier de démarrage approuvés (32 bits).
volatility -f dump.raw printkey -K "Software\Microsoft\Windows\CurrentVersion\Explorer\ComDlg32\LastVisitedMRU" : Affiche les derniers fichiers ouverts.
volatility -f dump.raw printkey -K "Software\Microsoft\Windows\CurrentVersion\Explorer\ComDlg32\OpenSaveMRU" : Affiche les fichiers ouverts et enregistrés récemment.
volatility -f dump.raw printkey -K "Software\Microsoft\Windows\CurrentVersion\Explorer\RecentDocs" : Affiche les documents récemment ouverts.
volatility -f dump.raw printkey -K "Software\Microsoft\Windows\CurrentVersion\Explorer\TypedPaths" : Affiche les chemins d'accès tapés récemment.
volatility -f dump.raw printkey -K "Software\Microsoft\Windows\CurrentVersion\Explorer\RunMRU" : Affiche les commandes exécutées récemment.
volatility -f dump.raw printkey -K "Software\Microsoft\Windows\CurrentVersion\Explorer\ComDlg32\OpenSavePidlMRU" : Affiche les PIDL des fichiers ouverts et enregistrés récemment.
volatility -f dump.raw printkey -K "Software\Microsoft\Windows\CurrentVersion\Explorer\ComDlg32\LastVisitedPidlMRU" : Affiche les PIDL des derniers fichiers ouverts.
Commandes de base
volatility -f dump.mem imageinfo : Informations sur l'image mémoire
volatility -f dump.mem pslist : Liste des processus en cours d'exécution
volatility -f dump.mem pstree : Arborescence des processus
volatility -f dump.mem psscan : Analyse des processus
volatility -f dump.mem dlllist -p PID : Liste des DLL chargées par un processus
volatility -f dump.mem filescan : Analyse des fichiers ouverts
volatility -f dump.mem cmdscan : Analyse des commandes exécutées
volatility -f dump.mem netscan : Analyse des connexions réseau
volatility -f dump.mem connections : Liste des connexions réseau
volatility -f dump.mem malfind : Recherche de code malveillant
volatility -f dump.mem apihooks : Détection des hooks API
volatility -f dump.mem ldrmodules : Liste des modules chargés
volatility -f dump.mem modscan : Analyse des modules
volatility -f dump.mem shimcache : Analyse du cache de compatibilité des applications
volatility -f dump.mem userassist : Analyse des éléments récemment utilisés par l'utilisateur
volatility -f dump.mem hivelist : Liste des hives de registre
volatility -f dump.mem printkey -o OFFSET : Affichage du contenu d'une clé de registre
volatility -f dump.mem cmdline : Affichage des lignes de commande des processus
volatility -f dump.mem consoles : Analyse des consoles
volatility -f dump.mem getsids : Affichage des SID des processus
volatility -f dump.mem envars : Affichage des variables d'environnement des processus
volatility -f dump.mem mutantscan : Analyse des objets de mutation
volatility -f dump.mem svcscan : Analyse des services
volatility -f dump.mem driverirp : Analyse des IRP des pilotes
volatility -f dump.mem devicetree : Affichage de l'arborescence des périphériques
volatility -f dump.mem handles : Analyse des handles
volatility -f dump.mem vadinfo -o OFFSET : Informations sur une plage d'adresses virtuelles
volatility -f dump.mem vadtree -o OFFSET : Arborescence des plages d'adresses virtuelles
volatility -f dump.mem vadwalk -o OFFSET : Parcours des plages d'adresses virtuelles
volatility -f dump.mem dlldump -p PID -D dossier : Extraction d'une DLL en mémoire
volatility -f dump.mem procdump -p PID -D dossier : Extraction d'un processus en mémoire
volatility -f dump.mem memdump -p PID -D dossier : Extraction de la mémoire d'un processus
volatility -f dump.mem memmap -p PID : Cartographie de la mémoire d'un processus
volatility -f dump.mem memstrings -p PID : Recherche de chaînes dans la mémoire d'un processus
volatility -f dump.mem memscan -p PID : Analyse de la mémoire d'un processus
volatility -f dump.mem yarascan -Y dossier_de_règles : Analyse de la mémoire avec Yara
volatility -f dump.mem procmemdump -p PID -D dossier : Extraction de la mémoire d'un processus en utilisant Memdump
volatility -f dump.mem malfind -p PID : Recherche de code malveillant dans un processus
volatility -f dump.mem malfind -D dossier : Recherche de code malveillant dans tous les processus
volatility -f dump.mem malfind -p PID -D dossier : Recherche de code malveillant dans un processus et extraction
volatility -f dump.mem malfind -D dossier -Y dossier_de_règles : Recherche de code malveillant dans tous les processus avec Yara
volatility -f dump.mem malfind -p PID -D dossier -Y dossier_de_règles : Recherche de code malveillant dans un processus avec Yara
volatility -f dump.mem malfind -D dossier --dump-dir dossier_de_sortie : Recherche de code malveillant dans tous les processus avec extraction dans un dossier spécifique
volatility -f dump.mem malfind -p PID -D dossier --dump-dir dossier_de_sortie : Recherche de code malveillant dans un processus avec extraction dans un dossier spécifique
Plugins supplémentaires
volatility -f dump.mem shimcachemem : Analyse du cache de compatibilité des applications en mémoire
volatility -f dump.mem userassist -D dossier : Extraction des éléments récemment utilisés par l'utilisateur
volatility -f dump.mem userassist -p PID : Affichage des éléments récemment utilisés par un processus
volatility -f dump.mem userassist -p PID -D dossier : Extraction des éléments récemment utilisés par un processus
volatility -f dump.mem userassist -D dossier -Y dossier_de_règles : Recherche d'éléments récemment utilisés avec Yara
volatility -f dump.mem userassist -p PID -D dossier -Y dossier_de_règles : Recherche d'éléments récemment utilisés par un processus avec Yara
volatility -f dump.mem userassist -D dossier --dump-dir dossier_de_sortie : Extraction des éléments récemment utilisés dans un dossier spécifique
volatility -f dump.mem userassist -p PID -D dossier --dump-dir dossier_de_sortie : Extraction des éléments récemment utilisés par un processus dans un dossier spécifique
Le système de fichiers NTFS utilise un composant critique connu sous le nom de table des fichiers principale (MFT). Cette table comprend au moins une entrée pour chaque fichier sur un volume, couvrant également la MFT elle-même. Des détails essentiels sur chaque fichier, tels que la taille, les horodatages, les autorisations et les données réelles, sont encapsulés dans les entrées de la MFT ou dans des zones externes à la MFT mais référencées par ces entrées. Plus de détails peuvent être trouvés dans la documentation officielle.
Commandes de base
volatility -f dump.raw imageinfo : Affiche des informations générales sur l'image mémoire.
volatility -f dump.raw pslist : Liste les processus en cours d'exécution.
volatility -f dump.raw pstree : Affiche les processus sous forme d'arborescence.
volatility -f dump.raw psscan : Examine les processus inactifs.
volatility -f dump.raw dlllist -p PID : Liste les DLL chargées par un processus spécifique.
volatility -f dump.raw cmdscan : Recherche les commandes exécutées.
volatility -f dump.raw filescan : Recherche les fichiers ouverts par les processus.
volatility -f dump.raw netscan : Affiche les connexions réseau.
volatility -f dump.raw connections : Affiche les connexions réseau.
volatility -f dump.raw malfind : Recherche les injections de code malveillant.
volatility -f dump.raw shimcache : Examine le cache de compatibilité des applications.
volatility -f dump.raw userassist : Examine les éléments récemment utilisés par l'utilisateur.
volatility -f dump.raw hivelist : Liste les hôtes de registre actifs.
volatility -f dump.raw printkey -o OFFSET : Affiche les sous-clés et les valeurs d'une clé de registre.
volatility -f dump.raw cmdline : Affiche les lignes de commande des processus.
volatility -f dump.raw consoles : Examine les consoles virtuelles.
volatility -f dump.raw getsids : Affiche les SID des processus.
volatility -f dump.raw envars : Affiche les variables d'environnement des processus.
volatility -f dump.raw modscan : Recherche les modules du noyau.
volatility -f dump.raw mutantscan : Recherche les objets de mutation.
volatility -f dump.raw svcscan : Recherche les services.
volatility -f dump.raw driverirp : Examine les IRP des pilotes.
volatility -f dump.raw devicetree : Affiche l'arborescence des périphériques.
volatility -f dump.raw idt : Affiche la table des descripteurs d'interruption.
volatility -f dump.raw gdt : Affiche la table des descripteurs globaux.
volatility -f dump.raw threads : Affiche les threads du système.
volatility -f dump.raw handles : Affiche les handles du système.
volatility -f dump.raw callbacks : Examine les callbacks du noyau.
volatility -f dump.raw ssdt : Affiche la table des descripteurs de services.
volatility -f dump.raw drivermodule : Examine les modules des pilotes.
volatility -f dump.raw modules : Affiche les modules chargés.
volatility -f dump.raw moddump -b BASE -m MODULE -D output_directory : Extrait un module du noyau.
volatility -f dump.raw procdump -p PID -D output_directory : Crée un dump mémoire d'un processus spécifique.
volatility -f dump.raw memdump -p PID -D output_directory : Crée un dump mémoire d'un processus spécifique.
volatility -f dump.raw memmap : Affiche la carte mémoire.
volatility -f dump.raw memmap --profile=PROFILE : Affiche la carte mémoire avec un profil spécifique.
volatility -f dump.raw raw2dmp -i INPUT -o OUTPUT : Convertit un fichier de volatilité brut en un fichier de volatilité.
volatility -f dump.raw raw2dmp --profile=PROFILE -i INPUT -o OUTPUT : Convertit un fichier de volatilité brut en un fichier de volatilité avec un profil spécifique.
Plugins supplémentaires
volatility -f dump.raw plugin_name : Exécute un plugin spécifique.
volatility -f dump.raw --plugins=directory/ plugin_name : Exécute un plugin spécifique à partir d'un répertoire personnalisé.
Profils
volatility -f dump.raw --profile=PROFILE : Spécifie un profil pour l'analyse.
Autres options
-v : Augmente le niveau de verbosité.
-h : Affiche l'aide pour la commande donnée.
Utilisez ce script pour télécharger et fusionner toutes les règles de malware yara depuis github : https://gist.github.com/andreafortuna/29c6ea48adf3d45a979a78763cdc7ce9 Créez le répertoire rules et exécutez-le. Cela créera un fichier appelé malware_rules.yar qui contient toutes les règles yara pour les malwares.
Si vous souhaitez utiliser des plugins externes, assurez-vous que les dossiers liés aux plugins sont le premier paramètre utilisé.
volatility -f dump.mem imageinfo : Affiche des informations générales sur l'image mémoire
volatility -f dump.mem pslist : Liste les processus en cours d'exécution
volatility -f dump.mem pstree : Affiche les processus sous forme d'arborescence
volatility -f dump.mem psscan : Recherche les processus supprimés
volatility -f dump.mem dlllist -p PID : Liste les DLL chargées par un processus spécifique
volatility -f dump.mem cmdline -p PID : Affiche la ligne de commande d'un processus spécifique
volatility -f dump.mem filescan : Recherche les fichiers ouverts par les processus
volatility -f dump.mem netscan : Affiche les connexions réseau
volatility -f dump.mem connections : Affiche les connexions réseau (alternative)
volatility -f dump.mem timeliner : Crée une timeline des activités du système
volatility -f dump.mem malfind : Recherche les injections de code malveillant
volatility -f dump.mem yarascan : Recherche de motifs avec Yara
volatility -f dump.mem dumpfiles -Q 0xADDRESS -D /path/to/dump/ : Extrait les fichiers en mémoire à partir d'une adresse spécifique
volatility -f dump.mem memdump -p PID -D /path/to/dump/ : Crée un dump de la mémoire d'un processus spécifique
apihooks
malfind
mftparser
modscan
timeliner
truecrypt
userassist
yarascan
Téléchargez-le depuis https://github.com/tomchop/volatility-autoruns
Il est possible de lire l'historique bash en mémoire. Vous pourriez également extraire le fichier .bash_history, mais s'il est désactivé, vous serez heureux de pouvoir utiliser ce module de volatilité.
volatility -f <dumpfile> imageinfo
: Informations sur l'image mémoire
volatility -f <dumpfile> pslist
: Liste des processus en cours d'exécution
volatility -f <dumpfile> psscan
: Analyse des processus supprimés
volatility -f <dumpfile> pstree
: Affichage de l'arborescence des processus
volatility -f <dumpfile> dlllist -p <PID>
: Liste des DLL chargées par un processus
volatility -f <dumpfile> cmdline -p <PID>
: Ligne de commande d'un processus
volatility -f <dumpfile> filescan
: Analyse des fichiers ouverts
volatility -f <dumpfile> netscan
: Analyse des connexions réseau
volatility -f <dumpfile> connections
: Liste des connexions réseau
volatility -f <dumpfile> timeliner
: Lister les événements temporels
volatility -f <dumpfile> malfind
: Recherche de code malveillant en mémoire
volatility -f <dumpfile> apihooks
: Recherche de hooks API
volatility -f <dumpfile> ldrmodules
: Liste des modules chargés dynamiquement
volatility -f <dumpfile> modscan
: Analyse des modules noyau
volatility -f <dumpfile> ssdt
: Affichage de la table de service du système
volatility -f <dumpfile> callbacks
: Liste des callbacks du noyau
volatility -f <dumpfile> driverirp
: Analyse des requêtes de paquets IRP des pilotes
volatility -f <dumpfile> devicetree
: Affichage de l'arborescence des périphériques
volatility -f <dumpfile> hivelist
: Liste des hives de registre
volatility -f <dumpfile> printkey -o <offset>
: Affichage du contenu d'une clé de registre
volatility -f <dumpfile> userassist
: Analyse des entrées UserAssist
volatility -f <dumpfile> shimcache
: Analyse du cache de compatibilité des applications
volatility -f <dumpfile> getsids
: Liste des SID des processus
volatility -f <dumpfile> getservicesids
: Liste des SID des services
volatility -f <dumpfile> envars
: Affichage des variables d'environnement
volatility -f <dumpfile> consoles
: Liste des consoles
volatility -f <dumpfile> deskscan
: Analyse des objets de bureau
volatility -f <dumpfile> hivescan
: Analyse des hives de registre
volatility -f <dumpfile> userhandles
: Liste des handles utilisateur
volatility -f <dumpfile> mutantscan
: Analyse des objets mutant
volatility -f <dumpfile> svcscan
: Analyse des services
volatility -f <dumpfile> yarascan --yara-file=<rules.yara>
: Analyse avec Yara
volatility -f <dumpfile> dumpfiles -Q <address>
: Extraction de fichiers en mémoire
volatility -f <dumpfile> dumpregistry -o <output_directory>
: Extraction de la base de registre
volatility -f <dumpfile> memdump -p <PID> -D <output_directory>
: Extraction de la mémoire d'un processus
volatility -f <dumpfile> memmap --profile=<profile>
: Affichage de la carte mémoire
volatility -f <dumpfile> mftparser
: Analyse du Master File Table
volatility -f <dumpfile> shimcachemem
: Analyse du cache de compatibilité des applications en mémoire
volatility -f <dumpfile> userassist -output=csv
: Exporter les entrées UserAssist au format CSV
volatility -f <dumpfile> hivelist -o <output_directory>
: Exporter les hives de registre dans un répertoire
volatility -f <dumpfile> dumpfiles -Q <address> -D <output_directory>
: Extraction de fichiers en mémoire dans un répertoire
volatility -f <dumpfile> dumpregistry -o <output_directory>
: Extraction de la base de registre dans un répertoire
volatility -f <dumpfile> memdump -p <PID> -D <output_directory>
: Extraction de la mémoire d'un processus dans un répertoire
VolUtility : Interface graphique pour Volatility
VolDiff : Comparaison de deux images mémoire
Volshell : Shell interactif pour Volatility
YaraScan : Analyse avec Yara
Malware : Analyse de logiciels malveillants
TrueCrypt : Analyse de volumes TrueCrypt
Malfind : Recherche de code malveillant
MemDmp : Extraction de la mémoire d'un processus
MemMap : Affichage de la carte mémoire
MFTParser : Analyse du Master File Table
APIHooks : Recherche de hooks API
SSDT : Affichage de la table de service du système
DriverIRP : Analyse des requêtes de paquets IRP des pilotes
Devicetree : Affichage de l'arborescence des périphériques
HiveList : Liste des hives de registre
PrintKey : Affichage du contenu d'une clé de registre
DumpFiles : Extraction de fichiers en mémoire
DumpRegistry : Extraction de la base de registre
UserAssist : Analyse des entrées UserAssist
ShimCache : Analyse du cache de compatibilité des applications
GetSids : Liste des SID des processus
GetServicesSids : Liste des SID des services
Envars : Affichage des variables d'environnement
Consoles : Liste des consoles
DeskScan : Analyse des objets de bureau
HiveScan : Analyse des hives de registre
UserHandles : Liste des handles utilisateur
MutantScan : Analyse des objets mutant
SvcScan : Analyse des services
volatility -f dump.mem imageinfo : Informations sur l'image mémoire
volatility -f dump.mem hivelist : Liste des hives de registre
volatility -f dump.mem --profile=ProfileName cmdscan : Analyse des commandes exécutées
volatility -f dump.mem --profile=ProfileName consoles : Liste des consoles interactives
volatility -f dump.mem --profile=ProfileName pstree : Affichage de l'arborescence des processus
volatility -f dump.mem --profile=ProfileName netscan : Analyse des connexions réseau
volatility -f dump.mem --profile=ProfileName filescan : Analyse des fichiers ouverts
volatility -f dump.mem --profile=ProfileName malfind : Recherche de code malveillant dans les processus
volatility -f dump.mem --profile=ProfileName getsids : Liste des SID des processus
volatility -f dump.mem --profile=ProfileName pslist : Liste des processus actifs
volatility -f dump.mem --profile=ProfileName dlllist -p ProcessID : Liste des DLL chargées par un processus
volatility -f dump.mem --profile=ProfileName cmdline -p ProcessID : Ligne de commande d'un processus
volatility -f dump.mem --profile=ProfileName memdump -p ProcessID -D /destination/folder/ : Extraction de la mémoire d'un processus
volatility -f dump.mem --profile=ProfileName memmap : Cartographie de la mémoire physique
volatility -f dump.mem --profile=ProfileName modscan : Recherche de modules noyau chargés
volatility -f dump.mem --profile=ProfileName userassist : Analyse des éléments UserAssist
volatility -f dump.mem --profile=ProfileName shimcache : Analyse du cache de compatibilité des applications
volatility -f dump.mem --profile=ProfileName ldrmodules : Liste des modules chargés par les processus
volatility -f dump.mem --profile=ProfileName apihooks : Recherche de hooks API
volatility -f dump.mem --profile=ProfileName mutantscan : Analyse des objets de synchronisation
volatility -f dump.mem --profile=ProfileName ssdt : Affichage de la table de service du noyau
volatility -f dump.mem --profile=ProfileName callbacks : Recherche de callbacks du noyau
volatility -f dump.mem --profile=ProfileName driverirp : Analyse des IRP des pilotes
volatility -f dump.mem --profile=ProfileName devicetree : Affichage de l'arborescence des périphériques
volatility -f dump.mem --profile=ProfileName threads : Liste des threads actifs
volatility -f dump.mem --profile=ProfileName handles : Liste des handles ouverts
volatility -f dump.mem --profile=ProfileName mutantscan : Analyse des objets de synchronisation
volatility -f dump.mem --profile=ProfileName svcscan : Analyse des services
volatility -f dump.mem --profile=ProfileName printkey -K KeyPath : Affichage du contenu d'une clé de registre
volatility -f dump.mem --profile=ProfileName hashdump : Extraction des hachages de mots de passe
volatility -f dump.mem --profile=ProfileName truecryptpassphrase : Recherche de phrases de passe TrueCrypt
volatility -f dump.mem --profile=ProfileName envars : Affichage des variables d'environnement
volatility -f dump.mem --profile=ProfileName consoles : Liste des consoles interactives
volatility -f dump.mem --profile=ProfileName clipboard : Analyse du presse-papiers
volatility -f dump.mem --profile=ProfileName screenshot : Capture d'écran de la session utilisateur
volatility -f dump.mem --profile=ProfileName memdump -p ProcessID -D /destination/folder/ : Extraction de la mémoire d'un processus
volatility -f dump.mem --profile=ProfileName dumpfiles -Q AddressRange -D /destination/folder/ : Extraction de fichiers en mémoire
volatility -f dump.mem --profile=ProfileName dumpregistry -o /destination/folder/ : Extraction de la base de registre
volatility -f dump.mem --profile=ProfileName dumpcerts -D /destination/folder/ : Extraction des certificats
volvatility -f dump.mem --profile=ProfileName yarascan -Y RuleFile : Analyse avec Yara
volatility -f dump.mem --profile=ProfileName yarascan -Y RuleFile -f AddressRange : Analyse avec Yara sur une plage mémoire
volatility -f dump.mem --profile=ProfileName yarascan -Y RuleFile -p ProcessID : Analyse avec Yara sur un processus
volatility -f dump.mem --profile=ProfileName yarascan -Y RuleFile -f AddressRange -p ProcessID : Analyse avec Yara sur une plage mémoire et un processus
volatility -f dump.mem --profile=ProfileName malfind -D /destination/folder/ : Recherche de code malveillant dans les processus et extraction
volatility -f dump.mem --profile=ProfileName malfind -p ProcessID -D /destination/folder/ : Recherche de code malveillant dans un processus et extraction
volatility -f dump.mem --profile=ProfileName malfind -Y RuleFile : Recherche de code malveillant avec Yara
volatility -f dump.mem --profile=ProfileName malfind -Y RuleFile -D /destination/folder/ : Recherche de code malveillant avec Yara et extraction
volatility -f dump.mem --profile=ProfileName malfind -Y RuleFile -p ProcessID -D /destination/folder/ : Recherche de code malveillant avec Yara dans un processus et extraction
volatility -f dump.mem --profile=ProfileName malfind -D /destination/folder/ : Recherche de code malveillant dans les processus et extraction
volatility -f dump.mem --profile=ProfileName malfind -p ProcessID -D /destination/folder/ : Recherche de code malveillant dans un processus et extraction
volatility -f dump.mem --profile=ProfileName malfind -Y RuleFile : Recherche de code malveillant avec Yara
volatility -f dump.mem --profile=ProfileName malfind -Y RuleFile -D /destination/folder/ : Recherche de code malveillant avec Yara et extraction
volatility -f dump.mem --profile=ProfileName malfind -Y RuleFile -p ProcessID -D /destination/folder/ : Recherche de code malveillant avec Yara dans un processus et extraction
Volatility Plugins : Référence des commandes supplémentaires
Volatility Foundation : Site officiel de Volatility
Volatility GitHub : Dépôt GitHub de Volatility
Le Master Boot Record (MBR) joue un rôle crucial dans la gestion des partitions logiques d'un support de stockage, qui sont structurées avec différents systèmes de fichiers. Il contient non seulement des informations sur la disposition des partitions, mais également du code exécutable agissant comme un chargeur de démarrage. Ce chargeur de démarrage initie directement le processus de chargement de la deuxième étape du système d'exploitation (voir chargeur de démarrage de deuxième étape) ou fonctionne en harmonie avec l'enregistrement de démarrage de volume (Volume Boot Record) (VBR) de chaque partition. Pour des connaissances approfondies, consultez la page Wikipedia sur le MBR.
RootedCON est l'événement le plus pertinent en matière de cybersécurité en Espagne et l'un des plus importants en Europe. Avec pour mission de promouvoir les connaissances techniques, ce congrès est un point de rencontre bouillonnant pour les professionnels de la technologie et de la cybersécurité dans chaque discipline.