228 KiB
Volatility - CheatSheet
Aprenda hacking AWS do zero ao herói com htARTE (HackTricks AWS Red Team Expert)!
Outras maneiras de apoiar o HackTricks:
- Se você quiser ver sua empresa anunciada no HackTricks ou baixar o HackTricks em PDF Verifique os PLANOS DE ASSINATURA!
- Adquira o swag oficial PEASS & HackTricks
- Descubra A Família PEASS, nossa coleção exclusiva de NFTs
- Junte-se ao 💬 grupo Discord ou ao grupo telegram ou siga-nos no Twitter 🐦 @hacktricks_live.
- Compartilhe seus truques de hacking enviando PRs para os HackTricks e HackTricks Cloud repositórios do github.
RootedCON é o evento de cibersegurança mais relevante na Espanha e um dos mais importantes na Europa. Com a missão de promover conhecimento técnico, este congresso é um ponto de encontro fervilhante para profissionais de tecnologia e cibersegurança em todas as disciplinas.
{% embed url="https://www.rootedcon.com/" %}
Se você deseja algo rápido e louco que lançará vários plugins do Volatility em paralelo, você pode usar: https://github.com/carlospolop/autoVolatility
python autoVolatility.py -f MEMFILE -d OUT_DIRECTORY -e /home/user/tools/volatility/vol.py # It will use the most important plugins (could use a lot of space depending on the size of the memory)
Instalação
volatility3
git clone https://github.com/volatilityfoundation/volatility3.git
cd volatility3
python3 setup.py install
python3 vol.py —h
volatilidade2
{% tabs %} {% tab title="Método1" %}
Download the executable from https://www.volatilityfoundation.org/26
{% endtab %}
{% tab title="Método 2" %}
git clone https://github.com/volatilityfoundation/volatility.git
cd volatility
python setup.py install
{% endtab %} {% endtabs %}
Comandos do Volatility
Acesse a documentação oficial em Referência de comandos do Volatility
Uma nota sobre plugins "list" vs "scan"
O Volatility tem duas abordagens principais para plugins, que às vezes são refletidas em seus nomes. Os plugins "list" tentarão navegar pelas estruturas do Kernel do Windows para recuperar informações como processos (localizar e percorrer a lista encadeada de estruturas _EPROCESS
na memória), identificadores do sistema operacional (localizando e listando a tabela de identificadores, desreferenciando quaisquer ponteiros encontrados, etc). Eles se comportam mais ou menos como a API do Windows se solicitada, por exemplo, para listar processos.
Isso torna os plugins "list" bastante rápidos, mas tão vulneráveis quanto a API do Windows à manipulação por malware. Por exemplo, se o malware usar DKOM para desvincular um processo da lista encadeada _EPROCESS
, ele não aparecerá no Gerenciador de Tarefas e nem na lista de processos.
Os plugins "scan", por outro lado, adotarão uma abordagem semelhante à escultura da memória em busca de coisas que possam fazer sentido quando desreferenciadas como estruturas específicas. psscan
, por exemplo, lerá a memória e tentará criar objetos _EPROCESS
a partir dela (ele usa varredura de pool-tag, que consiste em procurar strings de 4 bytes que indicam a presença de uma estrutura de interesse). A vantagem é que ele pode encontrar processos que foram encerrados e, mesmo que o malware manipule a lista encadeada _EPROCESS
, o plugin ainda encontrará a estrutura presente na memória (pois ela ainda precisa existir para o processo ser executado). A desvantagem é que os plugins "scan" são um pouco mais lentos que os plugins "list" e às vezes podem fornecer falsos positivos (um processo que foi encerrado há muito tempo e teve partes de sua estrutura sobrescritas por outras operações).
De: http://tomchop.me/2016/11/21/tutorial-volatility-plugins-malware-analysis/
Perfis de SO
Volatility3
Como explicado no readme, você precisa colocar a tabela de símbolos do SO que deseja suportar dentro de volatility3/volatility/symbols.
Os pacotes de tabelas de símbolos para os vários sistemas operacionais estão disponíveis para download em:
- https://downloads.volatilityfoundation.org/volatility3/symbols/windows.zip
- https://downloads.volatilityfoundation.org/volatility3/symbols/mac.zip
- https://downloads.volatilityfoundation.org/volatility3/symbols/linux.zip
Volatility2
Perfil Externo
Você pode obter a lista de perfis suportados fazendo:
./volatility_2.6_lin64_standalone --info | grep "Profile"
Se deseja usar um novo perfil que baixou (por exemplo, um perfil linux), precisa criar em algum lugar a seguinte estrutura de pastas: plugins/overlays/linux e colocar dentro desta pasta o arquivo zip contendo o perfil. Em seguida, obtenha o número de perfis usando:
./vol --plugins=/home/kali/Desktop/ctfs/final/plugins --info
Volatility Foundation Volatility Framework 2.6
Profiles
--------
LinuxCentOS7_3_10_0-123_el7_x86_64_profilex64 - A Profile for Linux CentOS7_3.10.0-123.el7.x86_64_profile x64
VistaSP0x64 - A Profile for Windows Vista SP0 x64
VistaSP0x86 - A Profile for Windows Vista SP0 x86
Você pode baixar perfis do Linux e Mac em https://github.com/volatilityfoundation/profiles
No trecho anterior, você pode ver que o perfil é chamado LinuxCentOS7_3_10_0-123_el7_x86_64_profilex64
, e você pode usá-lo para executar algo como:
./vol -f file.dmp --plugins=. --profile=LinuxCentOS7_3_10_0-123_el7_x86_64_profilex64 linux_netscan
Descobrir Perfil
volatility imageinfo -f file.dmp
volatility kdbgscan -f file.dmp
Diferenças entre imageinfo e kdbgscan
A partir daqui: Ao contrário do imageinfo, que simplesmente fornece sugestões de perfil, o kdbgscan é projetado para identificar positivamente o perfil correto e o endereço KDBG correto (se houver múltiplos). Este plugin faz uma varredura nas assinaturas do KDBGHeader vinculadas aos perfis do Volatility e aplica verificações de sanidade para reduzir falsos positivos. A verbosidade da saída e o número de verificações de sanidade que podem ser realizadas dependem de se o Volatility pode encontrar um DTB, então, se você já conhece o perfil correto (ou se tiver uma sugestão de perfil do imageinfo), certifique-se de usá-lo a partir de .
Sempre dê uma olhada no número de processos que o kdbgscan encontrou. Às vezes, o imageinfo e o kdbgscan podem encontrar mais de um perfil adequado, mas apenas o válido terá algum processo relacionado (Isso ocorre porque para extrair processos é necessário o endereço KDBG correto)
# GOOD
PsActiveProcessHead : 0xfffff800011977f0 (37 processes)
PsLoadedModuleList : 0xfffff8000119aae0 (116 modules)
# BAD
PsActiveProcessHead : 0xfffff800011947f0 (0 processes)
PsLoadedModuleList : 0xfffff80001197ac0 (0 modules)
KDBG
O bloco de depuração do kernel, referido como KDBG pelo Volatility, é crucial para tarefas forenses realizadas pelo Volatility e vários depuradores. Identificado como KdDebuggerDataBlock
e do tipo _KDDEBUGGER_DATA64
, ele contém referências essenciais como PsActiveProcessHead
. Esta referência específica aponta para o início da lista de processos, permitindo a listagem de todos os processos, o que é fundamental para uma análise de memória minuciosa.
Informações do SO
#vol3 has a plugin to give OS information (note that imageinfo from vol2 will give you OS info)
./vol.py -f file.dmp windows.info.Info
O plugin banners.Banners
pode ser usado no vol3 para tentar encontrar banners linux no dump.
Hashes/Senhas
Extrair hashes SAM, credenciais em cache do domínio e segredos lsa.
./vol.py -f file.dmp windows.hashdump.Hashdump #Grab common windows hashes (SAM+SYSTEM)
./vol.py -f file.dmp windows.cachedump.Cachedump #Grab domain cache hashes inside the registry
./vol.py -f file.dmp windows.lsadump.Lsadump #Grab lsa secrets
{% endtab %}
{% tab title="vol2" %}Volatility Cheat Sheet
Basic Volatility Commands
- Image info:
vol.py -f <memory_dump> imageinfo
- Profile:
vol.py -f <memory_dump> --profile=<profile> imageinfo
- Process list:
vol.py -f <memory_dump> --profile=<profile> pslist
- Dump process:
vol.py -f <memory_dump> --profile=<profile> procdump -p <pid> -D <output_directory>
- File scan:
vol.py -f <memory_dump> --profile=<profile> filescan
- Malware scan:
vol.py -f <memory_dump> --profile=<profile> malscan
- Yara scan:
vol.py -f <memory_dump> --profile=<profile> yarascan --yara-rules=<rules_file>
- Registry hives:
vol.py -f <memory_dump> --profile=<profile> hivelist
- Dump registry hive:
vol.py -f <memory_dump> --profile=<profile> printkey -o <offset>
- Network connections:
vol.py -f <memory_dump> --profile=<profile> connections
- Command history:
vol.py -f <memory_dump> --profile=<profile> cmdscan
- User list:
vol.py -f <memory_dump> --profile=<profile> userassist
- API hooking:
vol.py -f <memory_dump> --profile=<profile> apihooks
- Driver modules:
vol.py -f <memory_dump> --profile=<profile> modscan
- Kernel drivers:
vol.py -f <memory_dump> --profile=<profile> kdbgscan
- SSDT:
vol.py -f <memory_dump> --profile=<profile> ssdt
- Crash dumps:
vol.py -json -f <memory_dump> --profile=<profile> dumpfiles --dump-dir=<output_directory>
Advanced Volatility Commands
- Detecting rootkits:
vol.py -f <memory_dump> --profile=<profile> ldrmodules -p
- Detecting injected code:
vol.py -f <memory_dump> --profile=<profile> malfind
- Detecting hidden processes:
vol.py -f <memoryjson -f <memory_dump> --profile=<profile> psxview
- Detecting hidden drivers:
vol.py -f <memory_dump> --profile=<profile> ldrmodules
- Detecting hidden DLLs:
vol.py -f <memory_dump> --profile=<profile> ldrmodules -w
- Detecting API hooking:
vol.py -f <memory_dump> --profile=<profile> apihooks -s
- Detecting SSDT hooks:
vol.py -f <memory_dump> --profile=<profile> ssdt -s
- Detecting IRP hooks:
vol.py -f <memory_dump> --profile=<profile> irpfind
- Detecting fileless malware:
vol.py -f <memory_dump> --profile=<profile> fileless_malware
- Detecting process hollowing:
vol.py -f <memory_dump> --profile=<profile> hollowfind
- Detecting covert processes:
vol.py -f <memory_dump> --profile=<profile> psxview
- Detecting API inline hooking:
vol.py -f <memory_dump> --profile=<profile> apihooks -i
- Detecting driver IRP hooks:
vol.py -f <memory_dump> --profile=<profile> irpfind -s
- Detecting driver timers:
vol.py -f <memory_dump> --profile=<profile> timers
- Detecting driver callbacks:
vol.py -f <memory_dump> --profile=<profile> callbacks
- Detecting driver object types:
vol.py -f <memory_dump> --profile=<profile> driverirp
- Detecting driver object handles:
vol.py -f <memory_dump> --profile=<profile> driverirp -D
- Detecting driver object namespaces:
vol.py -f <memory_dump> --profile=<profile> driverirp -N
- Detecting driver object device objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -D
- Detecting driver object driver objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -D
- Detecting driver object file objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -F
- Detecting driver object symbolic links:
vol.py -f <memory_dump> --profile=<profile> driverirp -S
- Detecting driver object key objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -K
- Detecting driver object event objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -E
- Detecting driver object mutant objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -M
- Detecting driver object semaphore objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -S
- Detecting driver object timer objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -T
- Detecting driver object type objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -O
- Detecting driver object process objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -P
- Detecting driver object thread objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -T
- Detecting driver object desktop objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -D
- Detecting driver object section objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -S
- Detecting driver object job objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -J
- Detecting driver object session objects:
vol.py -f <json -f <memory_dump> --profile=<profile> driverirp -S
- Detecting driver object wmi objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -W
- Detecting driver object filter objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -F
- Detecting driver object device node objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -D
- Detecting driver object power notify objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -P
- Detecting driver object power request objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -R
- Detecting driver object i/o completion objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -I
- Detecting driver object i/o queue objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -Q
- Detecting driver object i/o control objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -C
- Detecting driver object i/o device objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -D
- Detecting driver object i/o target objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -T
- Detecting driver object i/o request objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -R
- Detecting driver object i/o completion reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -C
- Detecting driver object i/o queue reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -Q
- Detecting driver object i/o control reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -C
- Detecting driver object i/o device reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -D
- Detecting driver object i/o target reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -T
- Detecting driver object i/o request reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -R
- Detecting driver object i/o completion reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -C
- Detecting driver object i/o queue reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -Q
- Detecting driver object i/o control reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -C
- Detecting driver object i/o device reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -D
- Detecting driver object i/o target reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -T
- Detecting driver object i/o request reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -R
- Detecting driver object i/o completion reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -C
- Detecting driver object i/o queue reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -Q
- Detecting driver object i/o control reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -C
- Detecting driver object i/o device reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -D
- Detecting driver object i/o target reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -T
- Detecting driver object i/o request reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -R
- Detecting driver object i/o completion reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -C
- Detecting driver object i/o queue reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -Q
- Detecting driver object i/o control reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -C
- Detecting driver object i/o device reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -D
- Detecting driver object i/o target reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -T
- Detecting driver object i/o request reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -R
- Detecting driver object i/o completion reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -C
- Detecting driver object i/o queue reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -Q
- Detecting driver object i/o control reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -C
- Detecting driver object i/o device reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -D
- Detecting driver object i/o target reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -T
- Detecting driver object i/o request reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -R
- Detecting driver object i/o completion reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -C
- Detecting driver object i/o queue reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -Q
- Detecting driver object i/o control reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -C
- Detecting driver object i/o device reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -D
- Detecting driver object i/o target reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -T
- Detecting driver object i/o request reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -R
- Detecting driver object i/o completion reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -C
- Detecting driver object i/o queue reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -Q
- Detecting driver object i/o control reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -C
- Detecting driver object i/o device reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -D
- Detecting driver object i/o target reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -T
- Detecting driver object i/o request reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -R
- Detecting driver object i/o completion reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -C
- Detecting driver object i/o queue reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -Q
- Detecting driver object i/o control reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -C
- Detecting driver object i/o device reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -D
- Detecting driver object i/o target reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -T
- Detecting driver object i/o request reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -R
- Detecting driver object i/o completion reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -C
- Detecting driver object i/o queue reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -Q
- Detecting driver object i/o control reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -C
- Detecting driver object i/o device reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -D
- Detecting driver object i/o target reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -T
- Detecting driver object i/o request reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -R
- Detecting driver object i/o completion reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -C
- Detecting driver object i/o queue reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -Q
- Detecting driver object i/o control reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -C
- Detecting driver object i/o device reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -D
- Detecting driver object i/o target reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -T
- Detecting driver object i/o request reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -R
- Detecting driver object i/o completion reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -C
- Detecting driver object i/o queue reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -Q
- Detecting driver object i/o control reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -C
- Detecting driver object i/o device reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -D
- Detecting driver object i/o target reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -T
- Detecting driver object i/o request reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -R
- Detecting driver object i/o completion reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -C
- Detecting driver object i/o queue reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -Q
- Detecting driver object i/o control reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -C
- Detecting driver object i/o device reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -D
- Detecting driver object i/o target reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -T
- Detecting driver object i/o request reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -R
- Detecting driver object i/o completion reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -C
- Detecting driver object i/o queue reserve objects:
vol.py -f <memory_dump> --profile=<profile> driverirp -Q
- **Detecting driver object i
volatility --profile=Win7SP1x86_23418 hashdump -f file.dmp #Grab common windows hashes (SAM+SYSTEM)
volatility --profile=Win7SP1x86_23418 cachedump -f file.dmp #Grab domain cache hashes inside the registry
volatility --profile=Win7SP1x86_23418 lsadump -f file.dmp #Grab lsa secrets
Despejo de Memória
O despejo de memória de um processo irá extrair tudo do estado atual do processo. O módulo procdump irá apenas extrair o código.
volatility -f file.dmp --profile=Win7SP1x86 memdump -p 2168 -D conhost/
RootedCON é o evento de cibersegurança mais relevante na Espanha e um dos mais importantes na Europa. Com a missão de promover o conhecimento técnico, este congresso é um ponto de encontro fervilhante para profissionais de tecnologia e cibersegurança em todas as disciplinas.
{% embed url="https://www.rootedcon.com/" %}
Processos
Listar processos
Tente encontrar processos suspeitos (por nome) ou inesperados processos filhos (por exemplo, um cmd.exe como filho de iexplorer.exe).
Pode ser interessante comparar o resultado do pslist com o de psscan para identificar processos ocultos.
{% tabs %} {% tab title="vol3" %}
python3 vol.py -f file.dmp windows.pstree.PsTree # Get processes tree (not hidden)
python3 vol.py -f file.dmp windows.pslist.PsList # Get process list (EPROCESS)
python3 vol.py -f file.dmp windows.psscan.PsScan # Get hidden process list(malware)
{% endtab %}
{% tab title="vol2" %}A seguir estão alguns comandos úteis do Volatility para análise de despejo de memória:
- imageinfo: exibe informações gerais sobre a imagem de memória.
- pslist: lista os processos em execução.
- pstree: exibe os processos em formato de árvore.
- psscan: verifica os processos ocultos.
- dlllist: lista as DLLs carregadas em cada processo.
- handles: exibe os identificadores de objeto abertos por processo.
- cmdline: exibe os argumentos da linha de comando de cada processo.
- filescan: verifica os arquivos mapeados na memória.
- netscan: lista as conexões de rede.
- connections: exibe os sockets de rede.
- svcscan: lista os serviços.
- malfind: procura por possíveis malwares na memória.
- yarascan: executa uma varredura com Yara.
- memmap: exibe os intervalos de endereços de memória usados.
- vadinfo: exibe informações sobre regiões de memória virtuais.
- vadtree: exibe as regiões de memória virtuais em formato de árvore.
Esses comandos podem ser úteis ao realizar análises forenses em um dump de memória. {% endtab %}
volatility --profile=PROFILE pstree -f file.dmp # Get process tree (not hidden)
volatility --profile=PROFILE pslist -f file.dmp # Get process list (EPROCESS)
volatility --profile=PROFILE psscan -f file.dmp # Get hidden process list(malware)
volatility --profile=PROFILE psxview -f file.dmp # Get hidden process list
Despejar proc
{% tabs %} {% tab title="vol3" %}
./vol.py -f file.dmp windows.dumpfiles.DumpFiles --pid <pid> #Dump the .exe and dlls of the process in the current directory
{% endtab %}
{% tab title="vol2" %}Volatility Cheat Sheet
Basic Commands
- Image info:
vol.py -f <memory_dump> imageinfo
- Profile:
vol.py -f <memory_dump> imageinfo | grep Profile
- PSList:
vol.py -f <memory_dump> --profile=<profile> pslist
- PSTree:
vol.py -f <memory_dump> --profile=<profile> pstree
- NetScan:
vol.py -f <memory_dump> --profile=<profile> netscan
- Connections:
vol.py -f <memory_dump> --profile=<profile> connscan
- CmdLine:
vol.py -f <memory_dump> --profile=<profile> cmdline
- FileScan:
vol.py -f <memory_dump> --profile=<profile> filescan
- MalFind:
vol.py -f <memory_dump> --profile=<profile> malfind
- Malfind:
vol.py -f <memory_dump> --profile=<profile> malfind
- Dump:
vol.py -f <memory_dump> --profile=<profile> procdump -p <pid> -D <output_directory>
- Handles:
vol.py -f <memory_dump> --profile=<profile> handles
- DLLList:
vol.py -f <memory_dump> --profile=<profile> dlllist
- Privs:
vol.py -f <memory_dump> --profile=<profile> privs
- Getsids:
vol.py -f <memory_dump> --profile=<profile> getsids
- Hivelist:
vol.py -f <memory_dump> --profile=<profile> hivelist
- HiveScan:
vol.py -f <memory_dump> --profile=<profile> hivescan
- Yarascan:
vol.py -json -f <memory_dump> --profile=<profile> yarascan --yara-rules=<path_to_yara_rules>
Advanced Commands
- Memdump:
vol.py -f <memory_dump> --profile=<profile> memdump -p <pid> -D <output_directory>
- Memmap:
vol.py -f <memory_dump> --profile=<profile> memmap
- Memstrings:
vol.py -f <memory_dump> --profile=<profile> memstrings
- Memscan:
vol.py -f <memory_dump> --profile=<profile> memscan
- Vadinfo:
vol.py -f <memory_dump> --profile=<profile> vadinfo
- Vadtree:
vol.py -f <memory_dump> --profile=<profile> vadtree
- Vadwalk:
vol.py -f <memory_dump> --profile=<profile> vadwalk
- Modscan:
vol.py -f <memory_dump> --profile=<profile> modscan
- Moddump:
vol.py -f <memory_dump> --profile=<profile> moddump -b <base_address> -D <output_directory>
- Modload:
vol.py -f <memory_dump> --profile=<profile> modload -b <base_address>
- Modlist:
vol.py -f <memory_dump> --profile=<profile> modlist
- Driverirp:
vol.py -f <memory_dump> --profile=<profile> driverirp
- Apihooks:
vol.py -f <memory_dump> --profile=<profile> apihooks
- Thrdscan:
vol.py -f <memory_dump> --profile=<profile> thrdscan
- SSDT:
vol.py -f <memory_dump> --profile=<profile> ssdt
- GDT:
vol.py -f <memory_dump> --profile=<profile> gdt
- LDT:
vol.py -f <memory_dump> --profile=<profile> ldt
- IDT:
vol.py -f <memory_dump> --profile=<profile> idt
- UserAssist:
vol.py -f <memory_dump> --profile=<profile> userassist
- Mftparser:
vol.py -f <memory_dump> --profile=<profile> mftparser
- Mftparser:
vol.py -f <memory_dump> --profile=<profile> mftparser
- Mbrparser:
vol.py -f <memory_dump> --profile=<profile> mbrparser
- Mbrparser:
vol.py -f <memory_dump> --profile=<profile> mbrparser
- Hivedump:
vol.py -f <memory_dump> --profile=<profile> hivedump -o <output_directory>
- Hashdump:
vol.py -f <memory_dump> --profile=<profile> hashdump
- Kdbgscan:
vol.py -f <memory_dump> --profile=<profile> kdbgscan
- Kpcrscan: `vol
Plugin Output
- Output to file:
vol.py -f <memory_dump> --profile=<profile> <plugin> > output.txt
- Output to CSV:
vol.py -f <memory_dump> --profile=<profile> <plugin> --output=csv > output.csv
- Output to JSON:
vol.py -f <memory_dump> --profile=<profile> <plugin> --output=json > output.json
- Output to SQLite:
vol.py -f <memory_dump> --profile=<profile> <plugin> --output=sqlite --output-file=output.db
Other Useful Commands
- List all plugins:
vol.py --info | grep <keyword>
- List all profiles:
vol.py --info | grep -i windows
- List all tasks:
vol.py -f <memory_dump> --profile=<profile> pslist | grep -i <task_name>
- List all connections:
vol.py -f <memory_dump> --profile=<profile> connscan | grep -i <ip_address>
- List all DLLs:
vol.py -f <memory_dump> --profile=<profile> dlllist | grep -i <dll_name>
- List all processes with a specific privilege:
vol.py -f <memory_dump> --profile=<profile> privs | grep -i SeDebugPrivilege
- List all processes spawned from a specific process:
vol.py -f <memory_dump> --profile=<profile> pstree -p <pid>
- List all processes spawned from a specific process with connections:
vol.py -f <memory_dump> --profile=<profile> pstree -p <pid> --output=dot | dot -Tpng -o output.png
- List all processes spawned from a specific process with connections and sockets:
vol.py -f <memory_dump> --profile=<profile> pstree -p <pid> --output=dot | dot -Tpng -o output.png && vol.py -f <memory_dump> --profile=<profile> connscan | grep -i <ip_address>
References
volatility --profile=Win7SP1x86_23418 procdump --pid=3152 -n --dump-dir=. -f file.dmp
{% endtab %} {% endtabs %}
Linha de comando
Alguma coisa suspeita foi executada?
python3 vol.py -f file.dmp windows.cmdline.CmdLine #Display process command-line arguments
{% endtab %}
{% tab title="vol2" %}Volatility Cheat Sheet
Basic Commands
- Image info:
vol.py -f <memory_dump> imageinfo
- Profile:
vol.py -f <memory_dump> imageinfo | grep Profile
- PSList:
vol.py -f <memory_dump> --profile=<profile> pslist
- PSTree:
vol.py -f <memory_dump> --profile=<profile> pstree
- NetScan:
vol.py -f <memory_dump> --profile=<profile> netscan
- Connections:
vol.py -f <memory_dump> --profile=<profile> connscan
- CmdLine:
vol.py -f <memory_dump> --profile=<profile> cmdline
- FileScan:
vol.py -f <memory_dump> --profile=<profile> filescan
- Handles:
vol.py -f <memory_dump> --profile=<profile> handles
- Privs:
vol.py -f <memory_dump> --profile=<profile> privs
- Malfind:
vol.py -f <memory_dump> --profile=<profile> malfind
- YaraScan:
vol.py -f <memory_dump> --profile=<profile> yarascan
- Dump:
vol.py -f <memory_dump> --profile=<profile> -D <output_directory> --name=<process_name>
- Registry:
vol.py -f <memory_dump> --profile=<profile> printkey -K <registry_key>
- Strings:
vol.py -f <memory_dump> --profile=<profile> strings -s <string_length>
- UserAssist:
vol.py -f <memory_dump> --profile=<profile> userassist
- Hivelist:
vol.py -f <memory_dump> --profile=<profile> hivelist
- HiveScan:
vol.py -f <memory_dump> --profile=<profile> hivescan
- HiveDump:
vol.py -f <memory_dump> --profile=<profile> hivedump -o <output_directory> -s <hive_offset>
- Hashdump:
vol.py -f <memory_dump> --profile=<profile> hashdump
- Kdbgscan:
vol.py -f <memory_dump> --profile=<profile> kdbgscan
- Kpcrscan:
vol.py -f <memory_dump> --profile=<profile> kpcrscan
- Lsadump:
vol.py -f <memory_dump> --profile=<profile> lsadump
- Getsids:
vol.py -f <memory_dump> --profile=<profile> getsids
- Modscan:
vol.py -f <memory_dump> --profile=<profile> modscan
- Apihooks:
vol.py -f <memory_dump> --profile=<profile> apihooks
- Ldrmodules:
vol.py -f <memory_dump> --profile=<profile> ldrmodules
- Mz:
vol.py -f <memory_dump> --profile=<profile> mz
- Apihooks:
vol.py -f <memory_dump> --profile=<profile> apihooks
- Ldrmodules:
vol.py -f <memory_dump> --profile=<profile> ldrmodules
- Mz:
voljson.py -f <memory_dump> --profile=<profile> mz
- Malfind:
vol.py -f <memory_dump> --profile=<profile> malfind
- Yarascan:
vol.py -f <memory_dump> --profile=<profile> yarascan
- Dumpfiles:
vol.py -f <memory_dump> --profile=<profile> dumpfiles -Q <file_path>
- Dumpregistry:
vol.py -f <memory_dump> --profile=<profile> dumpregistry -o <output_directory>
- Dlldump:
vol.py -f <memory_dump> --profile=<profile> dlldump -D <output_directory>
- Cmdscan:
vol.py -f <memory_dump> --profile=<profile> cmdscan
- Consoles:
vol.py -f <memory_dump> --profile=<profile> consoles
- Mbrparser:
vol.py -f <memory_dump> --profile=<profile> mbrparser
- Mftparser:
vol.py -json -f <memory_dump> --profile=<profile> mftparser
- Vadinfo:
vol.py -f <memory_dump> --profile=<profile> vadinfo
- Vadtree:
vol.py -f <memory_dump> --profile=<profile> vadtree
- Vaddump:
vol.py -f <memory_dump> --profile=<profile> vaddump -D <output_directory> -s <vad_start> -e <vad_end>
- Memmap:
vol.py -f <memory_dump> --profile=<profile> memmap
- Memdump:
vol.py -f <memory_dump> --profile=<profile> memdump -p <pid> -D <output_directory>
- Memstrings:
vol.py -f <memory_dump> --profile=<profile> memstrings -s <string_length>
- Memscan:
vol.py -f <memory_dump> --profile=<profile> memscan
- Memmap:
vol.py -f <memory_dump> --profile=<profile> memmap
- Memdump:
vol.py -f <memory_dump> --profile=<profile> memdump -p <pid> -D <output_directory>
- Memstrings:
vol.py -f <memory_dump> --profile=<profile> memstrings -s <string_length>
- Memscan:
vol.py -f <memory_dump> --profile=<profile> memscan
- Memmap:
vol.py -f <memory_dump> --profile=<profile> memmap
- Memdump:
vol.py -f <memory_dump> --profile=<profile> memdump -p <pid> -D <output_directory>
- Memstrings:
vol.py -f <memory_dump> --profile=<profile> memstrings -s <string_length>
- Memscan:
vol.py -f <memory_dump> --profile=<profile> memscan
- Memmap:
vol.py -f <memory_dump> --profile=<profile> memmap
- Memdump:
vol.py -f <memory_dump> --profile=<profile> memdump -p <pid> -D <output_directory>
- Memstrings:
vol.py -f <memory_dump> --profile=<profile> memstrings -s <string_length>
- Memscan:
vol.py -f <memory_dump> --profile=<profile> memscan
- Memmap:
vol.py -f <memory_dump> --profile=<profile> memmap
- Memdump:
vol.py -f <memory_dump> --profile=<profile> memdump -p <pid> -D <output_directory>
- Memstrings:
vol.py -f <memory_dump> --profile=<profile> memstrings -s <string_length>
- Memscan:
vol.py -f <memory_dump> --profile=<profile> memscan
- Memmap:
vol.py -f <memory_dump> --profile=<profile> memmap
- Memdump:
vol.py -f <memory_dump> --profile=<profile> memdump -p <pid> -D <output_directory>
- Memstrings:
vol.py -f <memory_dump> --profile=<profile> memstrings -s <string_length>
- Memscan:
vol.py -f <memory_dump> --profile=<profile> memscan
- Memmap:
vol.py -f <memory_dump> --profile=<profile> memmap
- Memdump:
vol.py -f <memory_dump> --profile=<profile> memdump -p <pid> -D <output_directory>
- Memstrings:
vol.py -f <memory_dump> --profile=<profile> memstrings -s <string_length>
- Memscan:
vol.py -f <memory_dump> --profile=<profile> memscan
- Memmap:
vol.py -f <memory_dump> --profile=<profile> memmap
- Memdump:
vol.py -f <memory_dump> --profile=<profile> memdump -p <pid> -D <output_directory>
- Memstrings:
vol.py -f <memory_dump> --profile=<profile> memstrings -s <string_length>
- Memscan:
vol.py -f <memory_dump> --profile=<profile> memscan
- Memmap:
vol.py -f <memory_dump> --profile=<profile> memmap
- Memdump:
vol.py -f <memory_dump> --profile=<profile> memdump -p <pid> -D <output_directory>
- Memstrings:
vol.py -f <memory_dump> --profile=<profile> memstrings -s <string_length>
- Memscan:
vol.py -f <memory_dump> --profile=<profile> memscan
- Memmap:
vol.py -f <memory_dump> --profile=<profile> memmap
- Memdump:
vol.py -f <memory_dump> --profile=<profile> memdump -p <pid> -D <output_directory>
- Memstrings:
vol.py -f <memory_dump> --profile=<profile> memstrings -s <string_length>
- Memscan:
vol.py -f <memory_dump> --profile=<profile> memscan
- Memmap:
vol.py -f <memory_dump> --profile=<profile> memmap
- Memdump:
vol.py -f <memory_dump> --profile=<profile> memdump -p <pid> -D <output_directory>
- Memstrings:
vol.py -f <memory_dump> --profile=<profile> memstrings -s <string_length>
- Memscan:
vol.py -f <memory_dump> --profile=<profile> memscan
- Memmap:
vol.py -f <memory_dump> --profile=<profile> memmap
- Memdump:
vol.py -f <memory_dump> --profile=<profile> memdump -p <pid> -D <output_directory>
- Memstrings:
vol.py -f <memory_dump> --profile=<profile> memstrings -s <string_length>
- Memscan:
vol.py -f <memory_dump> --profile=<profile> memscan
- Memmap:
vol.py -f <memory_dump> --profile=<profile> memmap
- Memdump:
vol.py -f <memory_dump> --profile=<profile> memdump -p <pid> -D <output_directory>
- Memstrings:
vol.py -f <memory_dump> --profile=<profile> memstrings -s <string_length>
- Memscan:
vol.py -f <memory_dump> --profile=<profile> memscan
- Memmap:
vol.py -f <memory_dump> --profile=<profile> memmap
- Memdump:
vol.py -f <memory_dump> --profile=<profile> memdump -p <pid> -D <output_directory>
- Memstrings:
vol.py -f <memory_dump> --profile=<profile> memstrings -s <string_length>
- Memscan:
vol.py -f <memory_dump> --profile=<profile> memscan
- Memmap:
vol.py -f <memory_dump> --profile=<profile> memmap
- Memdump:
vol.py -f <memory_dump> --profile=<profile> memdump -p <pid> -D <output_directory>
- Memstrings:
vol.py -f <memory_dump> --profile=<profile> memstrings -s <string_length>
- Memscan:
vol.py -f <memory_dump> --profile=<profile> memscan
- Memmap:
vol.py -f <memory_dump> --profile=<profile> memmap
- Memdump:
vol.py -f <memory_dump> --profile=<profile> memdump -p <pid> -D <output_directory>
- Memstrings:
vol.py -f <memory_dump> --profile=<profile> memstrings -s <string_length>
- Memscan:
vol.py -f <memory_dump> --profile=<profile> memscan
- Memmap:
vol.py -f <memory_dump> --profile=<profile> memmap
- Memdump:
vol.py -f <memory_dump> --profile=<profile> memdump -p <pid> -D <output_directory>
- Memstrings:
vol.py -f <memory_dump> --profile=<profile> memstrings -s <string_length>
- Memscan:
vol.py -f <memory_dump> --profile=<profile> memscan
- Memmap:
vol.py -f <memory_dump> --profile=<profile> memmap
- Memdump:
vol.py -f <memory_dump> --profile=<profile> memdump -p <pid> -D <output_directory>
- Memstrings:
vol.py -f <memory_dump> --profile=<profile> memstrings -s <string_length>
- Memscan:
vol.py -f <memory_dump> --profile=<profile> memscan
- Memmap:
vol.py -f <memory_dump> --profile=<profile> memmap
- Memdump:
vol.py -f <memory_dump> --profile=<profile> memdump -p <pid> -D <output_directory>
- Memstrings:
vol.py -f <memory_dump> --profile=<profile> memstrings -s <string_length>
- Memscan:
vol.py -f <memory_dump> --profile=<profile> memscan
- Memmap:
vol.py -f <memory_dump> --profile=<profile> memmap
- Memdump:
vol.py -f <memory_dump> --profile=<profile> memdump -p <pid> -D <output_directory>
- Memstrings:
vol.py -f <memory_dump> --profile=<profile> memstrings -s <string_length>
- Memscan:
vol.py -f <memory_dump> --profile=<profile> memscan
- Memmap:
vol.py -f <memory_dump> --profile=<profile> memmap
- Memdump:
vol.py -f <memory_dump> --profile=<profile> memdump -p <pid> -D <output_directory>
- Memstrings:
vol.py -f <memory_dump> --profile=<profile> memstrings -s <string_length>
- Memscan:
vol.py -f <memory_dump> --profile=<profile> memscan
- Memmap:
vol.py -f <memory_dump> --profile=<profile> memmap
- Memdump:
vol.py -f <memory_dump> --profile=<profile> memdump -p <pid> -D <output_directory>
- Memstrings:
vol.py -f <memory_dump> --profile=<profile> memstrings -s <string_length>
- Memscan:
vol.py -f <memory_dump> --profile=<profile> memscan
- Memmap:
vol.py -f <memory_dump> --profile=<profile> memmap
- Memdump:
vol.py -f <memory_dump> --profile=<profile> memdump -p <pid> -D <output_directory>
- Memstrings:
vol.py -f <memory_dump> --profile=<profile> memstrings -s <string_length>
- Memscan:
vol.py -f <memory_dump> --profile=<profile> memscan
- Memmap:
vol.py -f <memory_dump> --profile=<profile> memmap
- Memdump:
vol.py -f <memory_dump> --profile=<profile> memdump -p <pid> -D <output_directory>
- Memstrings:
vol.py -f <memory_dump> --profile=<profile> memstrings -s <string_length>
- Memscan:
vol.py -f <memory_dump> --profile=<profile> memscan
- Memmap:
vol.py -f <memory_dump> --profile=<profile> memmap
- Memdump:
vol.py -f <memory_dump> --profile=<profile> memdump -p <pid> -D <output_directory>
- Memstrings:
vol.py -f <memory_dump> --profile=<profile> memstrings -s <string_length>
- Memscan:
vol.py -f <memory_dump> --profile=<profile> memscan
- Memmap:
vol.py -f <memory_dump> --profile=<profile> memmap
- Memdump:
vol.py -f <memory_dump> --profile=<profile> memdump -p <pid> -D <output_directory>
- Memstrings:
vol.py -f <memory_dump> --profile=<profile> memstrings -s <string_length>
- Memscan:
vol.py -f <memory_dump> --profile=<profile> memscan
- Memmap:
vol.py -f <memory_dump> --profile=<profile> memmap
- Memdump:
vol.py -f <memory_dump> --profile=<profile> memdump -p <pid> -D <output_directory>
- Memstrings:
vol.py -f <memory_dump> --profile=<profile> memstrings -s <string_length>
- Memscan:
vol.py -f <memory_dump> --profile=<profile> memscan
- Memmap:
vol.py -f <memory_dump> --profile=<profile> memmap
- Memdump:
vol.py -f <memory_dump> --profile=<profile> memdump -p <pid> -D <output_directory>
- Memstrings:
vol.py -f <memory_dump> --profile=<profile> memstrings -s <string_length>
- Memscan:
vol.py -f <memory_dump> --profile=<profile> memscan
- Memmap:
vol.py -f <memory_dump> --profile=<profile> memmap
- Memdump:
vol.py -f <memory_dump> --profile=<profile> memdump -p <pid> -D <output_directory>
- Memstrings:
vol.py -f <memory_dump> --profile=<profile> memstrings -s <string_length>
- Memscan:
vol.py -f <memory_dump> --profile=<profile> memscan
- Memmap:
vol.py -f <memory_dump> --profile=<profile> memmap
- Memdump:
vol.py -f <memory_dump> --profile=<profile> memdump -p <pid> -D <output_directory>
volatility --profile=PROFILE cmdline -f file.dmp #Display process command-line arguments
volatility --profile=PROFILE consoles -f file.dmp #command history by scanning for _CONSOLE_INFORMATION
{% endtab %} {% endtabs %}
Os comandos executados no cmd.exe
são gerenciados pelo conhost.exe
(ou csrss.exe
em sistemas anteriores ao Windows 7). Isso significa que se o cmd.exe
for encerrado por um atacante antes que um despejo de memória seja obtido, ainda é possível recuperar o histórico de comandos da sessão da memória do conhost.exe
. Para fazer isso, se atividades incomuns forem detectadas nos módulos do console, a memória do processo conhost.exe
associado deve ser despejada. Em seguida, ao procurar strings dentro desse despejo, linhas de comando usadas na sessão podem ser potencialmente extraídas.
Ambiente
Obtenha as variáveis de ambiente de cada processo em execução. Pode haver alguns valores interessantes.
python3 vol.py -f file.dmp windows.envars.Envars [--pid <pid>] #Display process environment variables
{% endtab %}
{% tab title="vol2" %}
volatility --profile=PROFILE envars -f file.dmp [--pid <pid>] #Display process environment variables
volatility --profile=PROFILE -f file.dmp linux_psenv [-p <pid>] #Get env of process. runlevel var means the runlevel where the proc is initated
Privilégios de token
Verifique os tokens de privilégio em serviços inesperados.
Pode ser interessante listar os processos que estão usando algum token privilegiado.
#Get enabled privileges of some processes
python3 vol.py -f file.dmp windows.privileges.Privs [--pid <pid>]
#Get all processes with interesting privileges
python3 vol.py -f file.dmp windows.privileges.Privs | grep "SeImpersonatePrivilege\|SeAssignPrimaryPrivilege\|SeTcbPrivilege\|SeBackupPrivilege\|SeRestorePrivilege\|SeCreateTokenPrivilege\|SeLoadDriverPrivilege\|SeTakeOwnershipPrivilege\|SeDebugPrivilege"
{% endtab %}
{% tab title="vol2" %}Volatility Cheat Sheet
Basic Forensic Methodology
- Memory Dump Analysis
- Identify Profile:
vol.py -f memory_dump.raw imageinfo
- List Processes:
vol.py -f memory_dump.raw --profile=Win7SP1x64 pslist
- Dump Process:
vol.py -f memory_dump.raw --profile=Win7SP1x64 procdump -p PID -D .
- File Scan:
vol.py -f memory_dump.raw --profile=Win7SP1x64 filescan
- Registry Scan:
vol.py -f memory_dump.raw --profile=Win7SP1x64 hivelist
- Yara Scan:
vol.py -f memory_dump.raw --profile=Win7SP1x64 yarascan --yara-file=path/to/rules.yara
- Network Connections:
vol.py -f memory_dump.raw --profile=Win7SP1x64 connections
- Dump Network Connections:
vol.py -f memory_dump.raw --profile=Win7SP1x64 connscan
- Detect Rootkits:
vol.py -f memory_dump.raw --profile=Win7SP1x64 malfind
- Analyze DLLs:
vol.py -f memory_dump.raw --profile=Win7SP1x64 dlllist
- Extract DLL:
vol.py -f memory_dump.raw --profile=Win7SP1x64 dlldump -D . -p PID
- Check for Signs of Process Injection:
vol.py -f memory_dump.raw --profile=Win7SP1x64 malfind
- Analyze Handles:
vol.py -f memory_dump.raw --profile=Win7SP1x64 handles
- Analyze Sockets:
vol.py -f memory_dump.raw --profile=Win7SP1x64 sockets
- Analyze Drivers:
vol.py -f memory_dump.raw --profile=Win7SP1x64 driverscan
- Detect Hidden Processes:
vol.py -f memory_dump.raw --profile=Win7SP1x64 psxview
- Detect Hidden Threads:
vol.py -f memory_dump.raw --profile=Win7SP1x64 threads
- Detect Hidden Modules:
vol.py -f memory_dump.raw --profile=Win7SP1x64 modscan
- Detect Hidden Handles:
vol.py -f memory_dump.raw --profile=Win7SP1x64 handles
- Detect Hidden Objects:
vol.py -f memory_dump.raw --profile=Win7SP1x64 callbacks
- Detect Hidden IRPs:
vol.py -f memory_dump.raw --profile=Win7SP1x64 irpfind
- Detect Hidden Ports:
vol.py -f memory_dump.raw --profile=Win7SP1x64 portscan
- Detect Hidden Services:
vol.py -f memory_dump.raw --profile=Win7SP1x64 getservicesids
- Detect Hidden SSDT:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ssdt
- Detect Hidden IDT:
vol.py -f memory_dump.raw --profile=Win7SP1x64 idt
- Detect Hidden GDT:
vol.py -f memory_dump.raw --profile=Win7SP1x64 gdt
- Detect Hidden CR3:
vol.py -f memory_dump.raw --profile=Win7SP1x64 cr3
- Detect Hidden CSRSS:
vol.py -f memory_dump.raw --profile=Win7SP1x64 csrss
- Detect Hidden EPROCESS:
vol.py -f memory_dump.raw --profile=Win7SP1x64 eprocess
- Detect Hidden Threads:
vol.py -f memory_dump.raw --profile=Win7SP1x64 threads
- Detect Hidden Mutants:
vol.py -f memory_dump.raw --profile=Win7SP1x64 mutantscan
- Detect Hidden Shims:
vol.py -f memory_dump.raw --profile=Win7SP1x64 shimcache
- Detect Hidden Timer:
vol.py -f memory_dump.raw --profile=Win7SP1x64 timers
- Detect Hidden SSDT Hooks:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ssdt
- Detect Hidden IRP Hooks:
vol.py -f memoryjson --profile=Win7SP1x64 irp
- Detect Hidden Inline Hooks:
vol.py -f memory_dump.raw --profile=Win7SP1x64 inlinedispatch
- Detect Hidden Callbacks:
vol.py -f memory_dump.raw --profile=Win7SP1x64 callbacks
- Detect Hidden Notifiers:
vol.py -f memory_dump.raw --profile=Win7SP1x64 notifiers
- Detect Hidden Filter Drivers:
vol.py -f memory_dump.raw --profile=Win7SP1x64 filter
- Detect Hidden Image Load:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Keys:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Values:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data:
vol.py -f memory_dump.raw --profile=Win7SP1x64 ldrmodules
- Detect Hidden Registry Data: `vol.py -f memory_dump.raw --profile=Win7SP1x
- Identify Profile:
#Get enabled privileges of some processes
volatility --profile=Win7SP1x86_23418 privs --pid=3152 -f file.dmp | grep Enabled
#Get all processes with interesting privileges
volatility --profile=Win7SP1x86_23418 privs -f file.dmp | grep "SeImpersonatePrivilege\|SeAssignPrimaryPrivilege\|SeTcbPrivilege\|SeBackupPrivilege\|SeRestorePrivilege\|SeCreateTokenPrivilege\|SeLoadDriverPrivilege\|SeTakeOwnershipPrivilege\|SeDebugPrivilege"
SIDs
Verifique cada SSID possuído por um processo.
Pode ser interessante listar os processos que usam um SID de privilégios (e os processos que usam algum SID de serviço).
./vol.py -f file.dmp windows.getsids.GetSIDs [--pid <pid>] #Get SIDs of processes
./vol.py -f file.dmp windows.getservicesids.GetServiceSIDs #Get the SID of services
{% endtab %}
{% tab title="vol2" %}A seguir estão alguns comandos úteis do Volatility para análise de despejo de memória:
- imageinfo: exibe informações gerais sobre a imagem de memória.
- pslist: lista os processos em execução.
- pstree: exibe os processos em formato de árvore.
- psscan: verifica os processos ocultos.
- dlllist: lista as DLLs carregadas em cada processo.
- handles: exibe os identificadores de objeto aberto para cada processo.
- cmdline: exibe os argumentos da linha de comando de cada processo.
- consoles: lista os consoles associados a cada processo.
- vadinfo: exibe informações sobre regiões de memória virtuais.
- vadtree: exibe as regiões de memória virtuais em formato de árvore.
- malfind: procura por possíveis malwares na memória.
- apihooks: exibe os ganchos de API em cada processo.
- ldrmodules: lista os módulos carregados em cada processo.
- modscan: verifica módulos do kernel carregados.
- ssdt: exibe a Tabela de Despacho de Serviços do Sistema.
- callbacks: lista os callbacks do kernel.
- devicetree: exibe a árvore de dispositivos.
- driverirp: exibe as IRPs (Pacotes de Solicitação de E/S) de um driver.
- printkey: exibe as subchaves e valores de uma chave de registro.
- privs: lista os privilégios de cada processo.
- getsids: exibe os SIDs (Identificadores de Segurança) de cada processo.
- dumpfiles: extrai arquivos do espaço de endereço de um processo.
- memdump: cria um despejo de memória de um processo específico.
- malfind: procura por possíveis malwares na memória.
- yarascan: executa uma varredura YARA na memória.
- malfind: procura por possíveis malwares na memória.
Esses comandos podem ser úteis durante a análise forense de memória para identificar atividades suspeitas e possíveis ameaças. {% endtab %}
volatility --profile=Win7SP1x86_23418 getsids -f file.dmp #Get the SID owned by each process
volatility --profile=Win7SP1x86_23418 getservicesids -f file.dmp #Get the SID of each service
Handles
Útil para saber a quais outros arquivos, chaves, threads, processos... um processo tem um handle (aberto)
vol.py -f file.dmp windows.handles.Handles [--pid <pid>]
{% endtab %}
{% tab title="vol2" %}O Volatility é uma ferramenta poderosa para análise de dumps de memória. Abaixo estão alguns comandos úteis para análise de dumps de memória com o Volatility:
-
Identificar o perfil do sistema operacional:
volatility -f memdump.mem imageinfo
-
Listar processos em execução:
volatility -f memdump.mem pslist
-
Analisar conexões de rede:
volatility -f memdump.mem connections
-
Analisar registros de registro:
volatility -f memdump.mem hivelist volatility -f memdump.mem printkey -o OFFSET
-
Analisar arquivos abertos:
volatility -f memdump.mem filescan
-
Analisar módulos carregados:
volatility -f memdump.mem ldrmodules
-
Analisar cache de DNS:
volatility -f memdump.mem cachedump
-
Analisar tokens de acesso:
volatility -f memdump.mem tokens
-
Analisar processos e DLLs injetados:
volatility -f memdump.mem malfind
-
Analisar pool de tags:
volatility -f memdump.mem poolpeek
-
Analisar handlers de IRP:
volatility -f memdump.mem irpfind
-
Analisar objetos de processo:
volatility -f memdump.mem psxview
-
Analisar registros de eventos:
volatility -f memdump.mem evtlogs
-
Analisar drivers de kernel:
volatility -f memdump.mem driverscan
-
Analisar serviços e drivers:
volatility -f memdump.mem svcscan
-
Analisar portas e sockets:
volatility -f memdump.mem sockets
-
Analisar tarefas agendadas:
volatility -f memdump.mem getsids
-
Analisar SID e tokens:
volatility -f memdump.mem getsids
-
Analisar cache de registro:
volatility -f memdump.mem printkey -o OFFSET
-
Analisar arquivos executáveis:
volatility -f memdump.mem dlldump -D <output_directory>
-
Analisar arquivos de memória física:
volatility -f memdump.mem memmap --profile=<profile>
-
Analisar arquivos de paginação:
volatility -f memdump.mem pagefile
-
Analisar arquivos de hibernação:
volatility -f memdump.mem hibinfo
-
Analisar arquivos de swap:
volatility -f memdump.mem swaplist
-
Analisar arquivos de volatilidade:
volatility -f memdump.mem volshell
-
Analisar arquivos de cache de registro:
volatility -f memdump.mem printkey -o OFFSET
-
Analisar arquivos de registro offline:
volatility -f memdump.mem hivelist volatility -f memdump.mem printkey -o OFFSET
-
Analisar arquivos de registro online:
volatility -f memdump.mem printkey -o OFFSET
-
Analisar arquivos de registro de transações:
volatility -f memdump.mem printkey -o OFFSET
-
Analisar arquivos de registro de transações offline:
volatility -f memdump.mem hivelist volatility -f memdump.mem printkey -o OFFSET
-
Analisar arquivos de registro de transações online:
volatility -f memdump.mem printkey -o OFFSET
-
Analisar arquivos de registro de transações de rede:
volatility -f memdump.mem printkey -o OFFSET
-
Analisar arquivos de registro de transações de rede offline:
volatility -f memdump.mem hivelist volatility -f memdump.mem printkey -o OFFSET
-
Analisar arquivos de registro de transações de rede online:
volatility -f memdump.mem printkey -o OFFSET
-
Analisar arquivos de registro de transações de rede:
volatility -f memdump.mem printkey -o OFFSET
-
Analisar arquivos de registro de transações de rede offline:
volatility -f memdump.mem hivelist volatility -f memdump.mem printkey -o OFFSET
-
Analisar arquivos de registro de transações de rede online:
volatility -f memdump.mem printkey -o OFFSET
-
Analisar arquivos de registro de transações de rede:
volatility -f memdump.mem printkey -o OFFSET
-
Analisar arquivos de registro de transações de rede offline:
volatility -f memdump.mem hivelist volatility -f memdump.mem printkey -o OFFSET
-
Analisar arquivos de registro de transações de rede online:
volatility -f memdump.mem printkey -o OFFSET
-
Analisar arquivos de registro de transações de rede:
volatility -f memdump.mem printkey -o OFFSET
-
Analisar arquivos de registro de transações de rede offline:
volatility -f memdump.mem hivelist volatility -f memdump.mem printkey -o OFFSET
-
Analisar arquivos de registro de transações de rede online:
volatility -f memdump.mem printkey -o OFFSET
-
Analisar arquivos de registro de transações de rede:
volatility -f memdump.mem printkey -o OFFSET
-
Analisar arquivos de registro de transações de rede offline:
volatility -f memdump.mem hivelist volatility -f memdump.mem printkey -o OFFSET
-
Analisar arquivos de registro de transações de rede online:
volatility -f memdump.mem printkey -o OFFSET
-
Analisar arquivos de registro de transações de rede:
volatility -f memdump.mem printkey -o OFFSET
-
Analisar arquivos de registro de transações de rede offline:
volatility -f memdump.mem hivelist volatility -f memdump.mem printkey -o OFFSET
-
Analisar arquivos de registro de transações de rede online:
volatility -f memdump.mem printkey -o OFFSET
-
Analisar arquivos de registro de transações de rede:
volatility -f memdump.mem printkey -o OFFSET
-
Analisar arquivos de registro de transações de rede offline:
volatility -f memdump.mem hivelist volatility -f memdump.mem printkey -o OFFSET
-
Analisar arquivos de registro de transações de rede online:
volatility -f memdump.mem printkey -o OFFSET
-
Analisar arquivos de registro de transações de rede:
volatility -f memdump.mem printkey -o OFFSET
-
Analisar arquivos de registro de transações de rede offline:
volatility -f memdump.mem hivelist volatility -f memdump.mem printkey -o OFFSET
-
Analisar arquivos de registro de transações de rede online:
volatility -f memdump.mem printkey -o OFFSET
volatility --profile=Win7SP1x86_23418 -f file.dmp handles [--pid=<pid>]
DLLs
{% tabs %} {% tab title="vol3" %}
./vol.py -f file.dmp windows.dlllist.DllList [--pid <pid>] #List dlls used by each
./vol.py -f file.dmp windows.dumpfiles.DumpFiles --pid <pid> #Dump the .exe and dlls of the process in the current directory process
{% endtab %}
{% tab title="vol2" %}A seguir estão alguns comandos úteis do Volatility para análise de despejo de memória:
- imageinfo: exibe informações gerais sobre a imagem de memória.
- pslist: lista os processos em execução.
- pstree: exibe os processos em formato de árvore.
- psscan: verifica os processos ocultos.
- dlllist: lista as DLLs carregadas em cada processo.
- handles: exibe os identificadores de objeto aberto para cada processo.
- cmdline: exibe os argumentos da linha de comando de cada processo.
- consoles: lista os consoles associados a cada processo.
- filescan: verifica os arquivos mapeados na memória.
- svcscan: lista os serviços do Windows.
- connections: exibe as conexões de rede.
- malfind: verifica possíveis injeções de código malicioso.
- apihooks: exibe os ganchos de API.
- ldrmodules: lista os módulos carregados em cada processo.
- modscan: verifica módulos do kernel.
- ssdt: exibe a Tabela de Despacho de Serviços do Sistema.
- callbacks: lista os callbacks do kernel.
- driverirp: exibe as rotinas de tratamento de solicitação de E/S do driver.
- idt: exibe a Tabela de Descritores de Interrupção.
- gdt: exibe a Tabela de Descritores Globais.
- userassist: exibe informações sobre programas usados com frequência.
- mftparser: analisa o arquivo de tabela mestra (MFT).
- hivelist: lista os hives do registro.
- printkey: exibe as subchaves e valores de uma chave de registro.
- hashdump: extrai hashes de senha do SAM ou do sistema.
- kdbgscan: verifica o depurador do kernel.
- memmap: exibe os intervalos de memória mapeados.
- vadinfo: exibe informações sobre regiões de memória virtuais.
- vadtree: exibe as regiões de memória virtuais em formato de árvore.
- vaddump: extrai uma região de memória virtual específica.
- yarascan: verifica a memória em busca de padrões com o Yara.
- yara: executa regras Yara na memória.
- dumpfiles: extrai arquivos da memória.
- dumpregistry: extrai chaves do registro da memória.
- dumpcerts: extrai certificados da memória.
- procdump: cria um despejo de memória de um processo específico.
- memdump: cria um despejo de memória de um intervalo específico.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis injeções de código malicioso.
- malfind: verifica possíveis in
volatility --profile=Win7SP1x86_23418 dlllist --pid=3152 -f file.dmp #Get dlls of a proc
volatility --profile=Win7SP1x86_23418 dlldump --pid=3152 --dump-dir=. -f file.dmp #Dump dlls of a proc
Strings por processos
O Volatility nos permite verificar a qual processo uma string pertence.
strings file.dmp > /tmp/strings.txt
./vol.py -f /tmp/file.dmp windows.strings.Strings --strings-file /tmp/strings.txt
{% endtab %}
{% tab title="vol2" %}A seguir estão alguns comandos comuns do Volatility que podem ser úteis durante a análise de um dump de memória:
- imageinfo: exibe informações gerais sobre a imagem de memória.
- pslist: lista os processos em execução.
- pstree: exibe os processos em formato de árvore.
- dlllist: lista as DLLs carregadas em cada processo.
- handles: exibe os identificadores de objetos abertos por processo.
- filescan: escaneia a memória em busca de estruturas de arquivos.
- cmdline: exibe os argumentos da linha de comando de cada processo.
- consoles: lista os consoles alocados a cada processo.
- malfind: procura por possíveis malwares na memória.
- apihooks: exibe os ganchos de API em cada processo.
- ldrmodules: lista os módulos carregados em cada processo.
- svcscan: escaneia a memória em busca de serviços.
- connections: exibe as conexões de rede ativas.
- sockets: lista os sockets de rede.
- devicetree: exibe a árvore de dispositivos.
- modscan: escaneia a memória em busca de módulos do kernel.
- ssdt: exibe a Tabela de Despacho de Serviços do Sistema.
- callbacks: lista os callbacks registrados.
- driverirp: exibe as IRPs (Pacotes de Solicitação de E/S) manipuladas por drivers.
- printkey: exibe as chaves do Registro de impressão.
- privs: lista os privilégios de cada processo.
- getsids: exibe os SIDs (Identificadores de Segurança) de cada processo.
- hivelist: lista os hives do Registro.
- hashdump: extrai hashes de senhas da memória.
- kdbgscan: escaneia a memória em busca do KDBG (Depurador do Kernel).
- gdt: exibe a Tabela de Descritores Globais.
- idt: exibe a Tabela de Descritores de Interrupção.
- userassist: exibe informações do UserAssist.
- shellbags: lista as entradas do ShellBags.
- mbrparser: analisa o Registro Mestre de Inicialização.
- yarascan: escaneia a memória em busca de padrões com o Yara.
- memmap: exibe um mapa de memória.
- vadinfo: exibe informações sobre Regiões de Alocação de Memória (VADs).
- vaddump: extrai uma região de memória específica.
- vadtree: exibe as VADs em formato de árvore.
- vadwalk: exibe as VADs em um processo específico.
- dlldump: extrai uma DLL específica da memória.
- dumpfiles: extrai arquivos modificados da memória.
- dumpregistry: extrai chaves do Registro da memória.
- dumpcerts: extrai certificados da memória.
- dumpnets: extrai informações de rede da memória.
- dumpfiles: extrai arquivos modificados da memória.
- dumpregistry: extrai chaves do Registro da memória.
- dumpcerts: extrai certificados da memória.
- dumpnets: extrai informações de rede da memória.
strings file.dmp > /tmp/strings.txt
volatility -f /tmp/file.dmp windows.strings.Strings --string-file /tmp/strings.txt
volatility -f /tmp/file.dmp --profile=Win81U1x64 memdump -p 3532 --dump-dir .
strings 3532.dmp > strings_file
Permite também pesquisar strings dentro de um processo usando o módulo yarascan:
./vol.py -f file.dmp windows.vadyarascan.VadYaraScan --yara-rules "https://" --pid 3692 3840 3976 3312 3084 2784
./vol.py -f file.dmp yarascan.YaraScan --yara-rules "https://"
{% endtab %}
{% tab title="vol2" %}A seguir estão alguns comandos úteis do Volatility para análise de despejo de memória:
- imageinfo: exibe informações gerais sobre a imagem de memória.
- pslist: lista os processos em execução.
- pstree: exibe os processos em formato de árvore.
- psscan: verifica os processos ocultos.
- dlllist: lista as DLLs carregadas em cada processo.
- handles: exibe os identificadores de objeto aberto para cada processo.
- cmdline: mostra os argumentos da linha de comando de cada processo.
- consoles: lista os consoles interativos.
- netscan: verifica as conexões de rede.
- connections: exibe os sockets de rede.
- sockets: lista os sockets abertos.
- filescan: verifica os arquivos mapeados na memória.
- malfind: procura por possíveis malwares na memória.
- yarascan: executa uma varredura com YARA.
- dumpfiles: extrai arquivos suspeitos da memória.
- memdump: cria um despejo de memória de um processo específico.
- memmap: exibe as regiões de memória mapeadas.
- vadinfo: exibe informações sobre regiões de memória virtuais.
- vaddump: extrai uma região de memória virtual específica.
- modscan: verifica os módulos do kernel.
- moddump: extrai um módulo do kernel específico.
- ldrmodules: lista os módulos carregados.
- apihooks: exibe os ganchos de API.
- callbacks: lista os callbacks do kernel.
- ssdt: exibe a Tabela de Despacho de Serviços do Sistema.
- gdt: exibe a Tabela de Descritores Globais.
- idt: exibe a Tabela de Descritores de Interrupção.
- driverscan: verifica os drivers carregados.
- devicetree: exibe a árvore de dispositivos.
- printkey: exibe as chaves do Registro de impressão.
- hivelist: lista os hives do Registro.
- hashdump: extrai hashes de senha do SAM ou do sistema.
- userassist: exibe informações do UserAssist.
- shellbags: lista as pastas acessadas recentemente.
- mbrparser: analisa o Registro Mestre de Inicialização.
- apihooks: exibe os ganchos de API.
- callbacks: lista os callbacks do kernel.
- ssdt: exibe a Tabela de Despacho de Serviços do Sistema.
- gdt: exibe a Tabela de Descritores Globais.
- idt: exibe a Tabela de Descritores de Interrupção.
- driverscan: verifica os drivers carregados.
- devicetree: exibe a árvore de dispositivos.
- printkey: exibe as chaves do Registro de impressão.
- hivelist: lista os hives do Registro.
- hashdump: extrai hashes de senha do SAM ou do sistema.
- userassist: exibe informações do UserAssist.
- shellbags: lista as pastas acessadas recentemente.
- mbrparser: analisa o Registro Mestre de Inicialização.
volatility --profile=Win7SP1x86_23418 yarascan -Y "https://" -p 3692,3840,3976,3312,3084,2784
UserAssist
O Windows mantém o controle dos programas que você executa usando um recurso no registro chamado chaves UserAssist. Essas chaves registram quantas vezes cada programa é executado e quando foi executado pela última vez.
./vol.py -f file.dmp windows.registry.userassist.UserAssist
{% endtab %}
{% tab title="vol2" %}Volatility Cheat Sheet
Basic Commands
-
Image Identification
volatility -f <memory_dump> imageinfo
-
Listing Processes
volatility -f <memory_dump> --profile=<profile> pslist
-
Dumping a Process
volatility -f <memory_dump> --profile=<profile> memdump -p <pid> -D <output_directory>
-
Listing Network Connections
volatility -f <memory_dump> --profile=<profile> connections
-
Dumping Registry Hives
volatility -f <memory_dump> --profile=<profile> hivelist
volatility -f <memory_dump> --profile=<profile> printkey -o <offset>
-
Analyzing Registry Keys
volatility -f <memory_dump> --profile=<profile> printkey -o <offset>
-
Dumping LSA Secrets
volatility -f <memory_dump> --profile=<profile> lsadump
-
Dumping SAM Database json
volatility -f <memory_dump> --profile=<profile> hashdump
-
Dumping Password Hashes
volatility -f <memory_dump> --profile=<profile> hashdump
-
Extracting Packed Binaries
volatility -f <memory_dump> --profile=<profile> malfind
-
Analyzing Suspicious Processes
volatility -f <memory_dump> --profile=<profile> malsysproc
-
Analyzing DLLs
volatility -f <memory_dump> --profile=<profile> dlllist
-
Analyzing Drivers
volatility -f <memory_dump> --profile=<profile> driverscan
-
Analyzing Kernel Modules
volatility -f <memory_dump> --profile=<profile> modscan
-
Analyzing Handles
volatility -f <memory_dump> --profile=<profile> handles
-
Analyzing Mutants
volatility -f <memory_dump> --profile=<profile> mutantscan
-
Analyzing User Sessions
volatility -f <memory_dump> --profile=<profile> sessions
-
Analyzing User Accounts
volatility -f <memory_dump> --profile=<profile> useraccounts
-
Analyzing User Account Privileges
volvolatility -f <memory_dump> --profile=<profile> privs
-
Analyzing User Account Tokens
volatility -f <memory_dump> --profile=<profile> tokens
-
Analyzing Network Interfaces
volatility -f <memory_dump> --profile=<profile> netscan
-
Analyzing TCP Connections
volatility -f <memory_dump> --profile=<profile> connscan
-
Analyzing Timers
volatility -f <memory_dump> --profile=<profile> timers
-
Analyzing Services
volatility -f <memory_dump> --profile=<profile> svcscan
-
Analyzing Crontabs
volatility -f <memory_dump> --profile=<profile> crontab
-
Analyzing Bash History
volatility -f <memory_dump> --profile=<profile> bash
-
Analyzing Loaded Kernel Modules
volatility -f <memory_dump> --profile=<profile> ldrmodules
-
Analyzing Privileges
volatility -f <memory_dump> --profile=<profile> privs
-
Analyzing Desktops
volatility -f <memory_dump> --profile=<profile> desktops
-
Analyzing Printers
volatility -f <memory_dump> --profile=<profile> printers
-
Analyzing Crashes
volatility -f <memory_dump> --profile=<profile> crashinfo
-
Analyzing Kernel Logs
volatility -f <memory_dump> --profile=<profile> kdbgscan
-
Analyzing SSDT
volatility -f <memory_dump> --profile=<profile> ssdt
-
Analyzing IDT
volatility -f <memory_dump> --profile=<profile> idt
-
Analyzing GDT
volatility -f <memory_dump> --profile=<profile> gdt
-
Analyzing CSRSS
volatility -f <memory_dump> --profile=<profile> csrss
-
Analyzing PEB
volatility -f <memory_dump> --profile=<profile> peb
-
Analyzing Threads
volatility -f <memory_dump> --profile=<profile> threads
-
Analyzing Handles
volatility -f <memory_dump> --profile=<profile> handles
-
Analyzing Vad Trees
volatility -f <memory_dump> --profile=<profile> vad
-
Analyzing DLLs
volatility -f <memory_dump> --profile=<profile> dlllist
-
Analyzing Driver Modules
volatility -f <memory_dump> --profile=<profile> modules
-
Analyzing Driver IRP
volatility -f <memory_dump> --profile=<profile> irp
-
Analyzing Driver Devices
volatility -f <memory_dump> --profile=<profile> devicetree
-
Analyzing Driver File Objects
volatility -f <memory_dump> --profile=<profile> filescan
-
Analyzing Driver Driver Objects
volatility -f <memory_dump> --profile=<profile> driverirp
-
Analyzing Driver Driver List
volatility -f <memory_dump> --profile=<profile> drivermodule
-
Analyizing Driver Driver Sections
volatility -f <memory_dump> --profile=<profile> driverservice
-
Analyzing Driver Driver Registry
volatility -f <memory_dump> --profile=<profile> driverobject
-
Analyzing Driver Driver Handles
volatility -f <memory_dump> --profile=<profile> driverfile
-
Analyzing Driver Driver Device Tree
volatility -f <memory_dump> --profile=<profile> driverdevice
-
Analyzing Driver Driver Device File
volatility -f <memory_dump> --profile=<profile> driversection
-
Analyzing Driver Driver Device Registry
volatility -f <memory_dump> --profile=<profile> driverservice
-
Analyzing Driver Driver Device Handles
volatility -f <memory_dump> --profile=<profile> driverobject
-
Analyzing Driver Driver Device File
volatility -f <memory_dump> --profile=<profile> driverhandle
-
Analyzing Driver Driver Device Device Tree
volatility -f <memory_dump> --profile=<profile> driverfile
-
Analyzing Driver Driver Device Device File
volatility -f <memory_dump> --profile=<profile> driverdevice
-
Analyzing Driver Driver Device Device Registry
volatility -f <memory_dump> --profile=<profile> driversection
-
Analyzing Driver Driver Device Device Handles
volatility -f <memory_dump> --profile=<profile> driverservice
-
Analyzing Driver Driver Device Device File
volatility -f <memory_dump> --profile=<profile> driverobject
-
Analyzing Driver Driver Device Device Device Tree
volatility -f <memory_dump> --profile=<profile> driverhandle
-
Analyzing Driver Driver Device Device Device File
volatility -f <memory_dump> --profile=<profile> driverdevice
-
Analyzing Driver Driver Device Device Device Registry
volatility -f <memory_dump> --profile=<profile> driversection
-
Analyzing Driver Driver Device Device Device Handles
volatility -f <memory_dump> --profile=<profile> driverservice
-
Analyzing Driver Driver Device Device Device File
volatility -f <memory_dump> --profile=<profile> driverobject
-
Analyzing Driver Driver Device Device Device Device Tree
volatility -f <memory_dump> --profile=<profile> driverhandle
-
Analyzing Driver Driver Device Device Device Device File
volatility -f <memory_dump> --profile=<profile> driverdevice
-
Analyzing Driver Driver Device Device Device Device Registry
volatility -f <memory_dump> --profile=<profile> driversection
-
Analyzing Driver Driver Device Device Device Device Handles
volatility -f <memory_dump> --profile=<profile> driverservice
-
Analyzing Driver Driver Device Device Device Device File
volatility -f <memory_dump> --profile=<profile> driverobject
-
Analyzing Driver Driver Device Device Device Device Device Tree
volatility -f <memory_dump> --profile=<profile> driverhandle
-
Analyzing Driver Driver Device Device Device Device Device File
volatility -f <memory_dump> --profile=<profile> driverdevice
-
Analyzing Driver Driver Device Device Device Device Device Registry
volatility -f <memory_dump> --profile=<profile> driversection
-
Analyzing Driver Driver Device Device Device Device Device Handles
volatility -f <memory_dump> --profile=<profile> driverservice
-
Analyzing Driver Driver Device Device Device Device Device File
volatility -f <memory_dump> --profile=<profile> driverobject
-
Analyzing Driver Driver Device Device Device Device Device Device Tree
volatility -f <memory_dump> --profile=<profile> driverhandle
-
Analyzing Driver Driver Device Device Device Device Device Device File
volatility -f <memory_dump> --profile=<profile> driverdevice
-
**Analyzing Driver Driver Device Device Device Device Device Device
volatility --profile=Win7SP1x86_23418 -f file.dmp userassist
{% endtab %} {% endtabs %}
RootedCON é o evento de cibersegurança mais relevante na Espanha e um dos mais importantes na Europa. Com a missão de promover o conhecimento técnico, este congresso é um ponto de encontro fervilhante para profissionais de tecnologia e cibersegurança em todas as disciplinas.
{% embed url="https://www.rootedcon.com/" %}
Serviços
{% tabs %} {% tab title="vol3" %}
./vol.py -f file.dmp windows.svcscan.SvcScan #List services
./vol.py -f file.dmp windows.getservicesids.GetServiceSIDs #Get the SID of services
{% endtab %}
{% tab title="vol2" %}O seguinte é um resumo das principais funções do Volatility para análise de despejo de memória:
- imageinfo: exibe informações gerais sobre o despejo de memória.
- kdbgscan: localiza o depurador do kernel.
- pslist: lista os processos em execução.
- psscan: examina os processos a partir dos segmentos de processo.
- pstree: exibe os processos em formato de árvore.
- dlllist: lista as DLLs carregadas em cada processo.
- handles: exibe os identificadores de objeto abertos por processo.
- getsids: recupera os IDs de segurança (SIDs) dos processos.
- cmdline: exibe os argumentos da linha de comando de cada processo.
- consoles: lista os consoles associados a cada processo.
- malfind: procura por possíveis malwares na memória.
- apihooks: identifica possíveis ganchos de API.
- ldrmodules: lista os módulos carregados em cada processo.
- modscan: localiza módulos do kernel.
- ssdt: exibe a Tabela de Despacho de Serviço do Sistema (SSDT).
- callbacks: lista os callbacks registrados.
- devicetree: exibe a árvore de dispositivos.
- driverirp: exibe as IRPs de driver.
- printkey: exibe as chaves do Registro de impressão.
- privs: lista os privilégios de cada processo.
- deskscan: examina as tabelas de área de trabalho.
- hivelist: lista os hives do Registro.
- hashdump: extrai hashes de senha do Registro.
- userassist: exibe informações sobre programas usados com frequência.
- svcscan: lista os serviços do Windows.
- connections: exibe informações sobre conexões de rede.
- connscan: examina as conexões de rede.
- sockets: lista os sockets de rede.
- sockscan: examina os sockets de rede.
- autoruns: lista os programas configurados para serem executados durante a inicialização.
- mbrparser: analisa o Registro Mestre de Inicialização (MBR).
- malfind: procura por possíveis malwares na memória.
- apihooks: identifica possíveis ganchos de API.
- ldrmodules: lista os módulos carregados em cada processo.
- modscan: localiza módulos do kernel.
- ssdt: exibe a Tabela de Despacho de Serviço do Sistema (SSDT).
- callbacks: lista os callbacks registrados.
- devicetree: exibe a árvore de dispositivos.
- driverirp: exibe as IRPs de driver.
- printkey: exibe as chaves do Registro de impressão.
- privs: lista os privilégios de cada processo.
- deskscan: examina as tabelas de área de trabalho.
- hivelist: lista os hives do Registro.
- hashdump: extrai hashes de senha do Registro.
- userassist: exibe informações sobre programas usados com frequência.
- svcscan: lista os serviços do Windows.
- connections: exibe informações sobre conexões de rede.
- connscan: examina as conexões de rede.
- sockets: lista os sockets de rede.
- sockscan: examina os sockets de rede.
- autoruns: lista os programas configurados para serem executados durante a inicialização.
- mbrparser: analisa o Registro Mestre de Inicialização (MBR).
#Get services and binary path
volatility --profile=Win7SP1x86_23418 svcscan -f file.dmp
#Get name of the services and SID (slow)
volatility --profile=Win7SP1x86_23418 getservicesids -f file.dmp
Rede
{% tabs %} {% tab title="vol3" %}
./vol.py -f file.dmp windows.netscan.NetScan
#For network info of linux use volatility2
{% endtab %}
{% tab title="vol2" %}Volatility Cheat Sheet
Basic Commands
-
Image Identification
volatility -f <memory_dump> imageinfo
-
Listing Processes
volatility -f <memory_dump> --profile=<profile> pslist
-
Dumping a Process
volatility -f <memory_dump> --profile=<profile> memdump -p <pid> -D <output_directory>
-
Listing DLLs
volatility -f <memory_dump> --profile=<profile> dlllist -p <pid>
-
Listing Handles
volatility -f <memory_dump> --profile=<profile> handles -p <pid>
-
Listing Registry Hives
voljson -f <memory_dump> --profile=<profile> hivelist
-
Dumping Registry Hive json
volatility -f <memory_dump> --profile=<profile> printkey -o <offset>
-
Listing Network Connections
volatility -f <memory_dump> --profile=<profile> connections
-
Listing Sockets
volatility -f <memory_dump> --profile=<profile> sockets
-
Listing Drivers
volatility -f <memory_dump> --profile=<profile> drivers
-
Listing Kernel Modules
volatility -f <memory_dump> --profile=<profile> modscan
-
Listing Timers
volatility -f <memory_dump> --profile=<profile> timers
-
Listing Mutants
volatility -f <memory_dump> --profile=<profile> mutants
-
Listing Services
volatility -f <memory_dump> --profile=<profile> svcscan
-
Listing User Accounts
volatility -f <memory_dump> --profile=<profile> useraccounts
-
Dumping User Credentials
volatility -f <memory_dump> --profile=<profile> hashdump
-
Listing Bash History
volatility -f <memory_dump> --profile=<profile> bash
-
Listing Loaded Kernel Modules
volatility -f <memory_dump> --profile=<profile> ldrmodules
-
Listing Cached Registry Values
volatility -f <memory_dump> --profile=<profile> hivelist
-
Listing Cached Registry Keys
volatility -f <memory_dump> --profile=<profile> hivelist
-
Listing Cached Registry Data
volatility -f <memory_dump> --profile=<profile> hivelist
-
Listing Cached Registry Binaries
volatility -f <memory_dump> --profile=<profile> hivelist
-
Listing Cached Registry Key Values
volatility -f <memory_dump> --profile=<profile> hivelist
-
Listing Cached Registry Key Data
volatility -f <memory_dump> --profile=<profile> hivelist
-
Listing Cached Registry Key Binaries
volatility -f <memory_dump> --profile=<profile> hivelist
-
Listing Cached Registry Key Subkeys
volatility -f <memory_dump> --profile=<profile> hivelist
-
Listing Cached Registry Key Subkey Values json
volatility -f <memory_dump> --profile=<profile> hivelist
-
Listing Cached Registry Key Subkey Data
volatility -f <memory_dump> --profile=<profile> hivelist
-
Listing Cached Registry Key Subkey Binaries
volatility -f <memory_dump> --profile=<profile> hivelist
-
Listing Cached Registry Key Subkey Keys
volatility -f <memory_dump> --profile=<profile> hivelist
-
Listing Cached Registry Key Subkey Key Values
volatility -f <memory_dump> --profile=<profile> hivelist
-
Listing Cached Registry Key Subkey Key Data
volatility -f <memory_dump> --profile=<profile> hivelist
-
Listing Cached Registry Key Subkey Key Binaries
volatility -f <memory_dump> --profile=<profile> hivelist
-
Listing Cached Registry Key Subkey Key Subkeys
volatility -f <memory_dump> --profile=<profile> hivelist
-
Listing Cached Registry Key Subkey Key Subkey Values
volatility -f <memory_dump> --profile=<profile> hivelist
-
Listing Cached Registry Key Subkey Key Subkey Data
volatility -f <memory_dump> --profile=<profile> hivelist
-
Listing Cached Registry Key Subkey Key Subkey Binaries
volatility -f <memory_dump> --profile=<profile> hivelist
-
Listing Cached Registry Key Subkey Key Subkey Keys
volatility -f <memory_dump> --profile=<profile> hivelist
-
Listing Cached Registry Key Subkey Key Subkey Key Values
volatility -f <memory_dump> --profile=<profile> hivelist
-
Listing Cached Registry Key Subkey Key Subkey Key Data
volatility -f <memory_dump> --profile=<profile> hivelist
-
Listing Cached Registry Key Subkey Key Subkey Key Binaries
volatility -f <memory_dump> --profile=<profile> hivelist
-
Listing Cached Registry Key Subkey Key Subkey Key Subkeys
volatility -f <memory_dump> --profile=<profile> hivelist
-
Listing Cached Registry Key Subkey Key Subkey Key Subkey Values
volatility -f <memory_dump> --profile=<profile> hivelist
-
Listing Cached Registry Key Subkey Key Subkey Key Subkey Data
volatility -f <memory_dump> --profile=<profile> hivelist
-
Listing Cached Registry Key Subkey Key Subkey Key Subkey Binaries
volatility -f <memory_dump> --profile=<profile> hivelist
-
Listing Cached Registry Key Subkey Key Subkey Key Subkey Keys
volatility -f <memory_dump> --profile=<profile> hivelist
-
Listing Cached Registry Key Subkey Key Subkey Key Subkey Key Values
volatility -f <memory_dump> --profile=<profile> hivelist
-
Listing Cached Registry Key Subkey Key Subkey Key Subkey Key Data
volatility -f <memory_dump> --profile=<profile> hivelist
-
Listing Cached Registry Key Subkey Key Subkey Key Subkey Key Binaries
volatility -f <memory_dump> --profile=<profile> hivelist
-
Listing Cached Registry Key Subkey Key Subkey Key Subkey Key Subkeys
volatility -f <memory_dump> --profile=<profile> hivelist
-
Listing Cached Registry Key Subkey Key Subkey Key Subkey Key Subkey Values
volatility -f <memory_dump> --profile=<profile> hivelist
-
Listing Cached Registry Key Subkey Key Subkey Key Subkey Key Subkey Data
volatility -f <memory_dump> --profile=<profile> hivelist
-
Listing Cached Registry Key Subkey Key Subkey Key Subkey Key Subkey Binaries
volatility -f <memory_dump> --profile=<profile> hivelist
-
Listing Cached Registry Key Subkey Key Subkey Key Subkey Key Subkey Keys
volatility -f <memory_dump> --profile=<profile> hivelist
-
Listing Cached Registry Key Subkey Key Subkey Key Subkey Key Subkey Key Values
volatility -f <memory_dump> --profile=<profile> hivelist
-
Listing Cached Registry Key Subkey Key Subkey Key Subkey Key Subkey Key Data
volatility -f <memory_dump> --profile=<profile> hivelist
-
Listing Cached Registry Key Subkey Key Subkey Key Subkey Key Subkey Key Binaries
volatility -f <memory_dump> --profile=<profile> hivelist
-
Listing Cached Registry Key Subkey Key Subkey Key Subkey Key Subkey Key Subkeys
volatility -f <memory_dump> --profile=<profile> hivelist
-
Listing Cached Registry Key Subkey Key Subkey Key Subkey Key Subkey Key Subkey Values
volatility -f <memory_dump> --profile=<profile> hivelist
-
Listing Cached Registry Key Subkey Key Subkey Key Subkey Key Subkey Key Subkey Data
volatility -f <memory_dump> --profile=<profile> hivelist
-
Listing Cached Registry Key Subkey Key Subkey Key Subkey Key Subkey Key Subkey Binaries
volatility -f <memory_dump> --profile=<profile> hivelist
-
Listing Cached Registry Key Subkey Key Subkey Key Subkey Key Subkey Key Subkey Keys
volatility -f <memory_dump> --profile=<profile> hivelist
-
Listing Cached Registry Key Subkey Key Subkey Key Subkey Key Subkey Key Subkey Key Values
volatility -f <memory_dump> --profile=<profile> hivelist
-
Listing Cached Registry Key Subkey Key Subkey Key Subkey Key Subkey Key Subkey Key Data
volatility -f <memory_dump> --profile=<profile> hivelist
-
Listing Cached Registry Key Subkey Key Subkey Key Subkey Key Subkey Key Subkey Key Binaries
volatility -f <memory_dump> --profile=<profile> hivelist
-
Listing Cached Registry Key Subkey Key Subkey Key Subkey Key Subkey Key Subkey Key Subkeys
volatility -f <memory_dump> --profile=<profile> hivelist
-
Listing Cached Registry Key Subkey Key Subkey Key Subkey Key Subkey Key Subkey Key Subkey Values
volatility -f <memory_dump> --profile=<profile> hivelist
-
Listing Cached Registry Key Subkey Key Subkey Key Subkey Key Subkey Key Subkey Key Subkey Data
volatility -f <memory_dump> --profile=<profile> hivelist
-
Listing Cached Registry Key Subkey Key Subkey Key Subkey Key Subkey Key Subkey Key Subkey Binaries
volatility -f <memory_dump> --profile=<profile> hivelist
-
Listing Cached Registry Key Subkey Key Subkey Key Subkey Key Subkey Key Subkey Key Subkey Keys
volatility -f <memory_dump> --profile=<profile> hivelist
-
Listing Cached Registry Key Subkey Key Subkey Key Subkey Key Subkey Key Subkey Key Subkey Key Values
volatility -f <memory_dump> --profile=<profile> hivelist
-
Listing Cached Registry Key Subkey Key Subkey Key Subkey Key Subkey Key Subkey Key Subkey Key Data
volatility -f <memory_dump> --profile=<profile> hivelist
-
Listing Cached Registry Key Subkey Key Subkey Key Subkey Key Subkey Key Subkey Key Subkey Key Binaries
volatility -f <memory_dump> --profile=<profile> hivelist
-
**Listing Cached Registry Key Subkey Key Subkey Key Subkey Key Subkey Key Subkey Key Sub
volatility --profile=Win7SP1x86_23418 netscan -f file.dmp
volatility --profile=Win7SP1x86_23418 connections -f file.dmp#XP and 2003 only
volatility --profile=Win7SP1x86_23418 connscan -f file.dmp#TCP connections
volatility --profile=Win7SP1x86_23418 sockscan -f file.dmp#Open sockets
volatility --profile=Win7SP1x86_23418 sockets -f file.dmp#Scanner for tcp socket objects
volatility --profile=SomeLinux -f file.dmp linux_ifconfig
volatility --profile=SomeLinux -f file.dmp linux_netstat
volatility --profile=SomeLinux -f file.dmp linux_netfilter
volatility --profile=SomeLinux -f file.dmp linux_arp #ARP table
volatility --profile=SomeLinux -f file.dmp linux_list_raw #Processes using promiscuous raw sockets (comm between processes)
volatility --profile=SomeLinux -f file.dmp linux_route_cache
Registro do sistema
Imprimir hives disponíveis
{% tabs %} {% tab title="vol3" %}
./vol.py -f file.dmp windows.registry.hivelist.HiveList #List roots
./vol.py -f file.dmp windows.registry.printkey.PrintKey #List roots and get initial subkeys
{% endtab %}
{% tab title="vol2" %}
Folha de Dicas do Volatility
Comandos Básicos
- volatility -f dump.mem imageinfo: Verifica se o arquivo de despejo é suportado e exibe informações básicas.
- volatility -f dump.mem pslist: Lista os processos em execução.
- volatility -f dump.mem pstree: Exibe os processos em formato de árvore.
- volatility -f dump.mem psscan: Escaneia processos ocultos.
- volatility -f dump.mem netscan: Lista sockets de rede.
- volatility -f dump.mem connections: Lista conexões de rede.
- volatility -f dump.mem cmdline: Exibe os argumentos de linha de comando dos processos.
- volatility -f dump.mem filescan: Escaneia arquivos abertos.
- volatility -f dump.mem dlllist: Lista as DLLs carregadas.
- volatility -f dump.mem handles: Lista os handles do sistema.
- volatility -f dump.mem getsids: Lista os SIDs dos processos.
- volatility -f dump.mem userassist: Exibe informações do UserAssist.
- volatility -f dump.mem malfind: Procura por processos suspeitos.
- volatility -f dump.mem apihooks: Lista os ganchos de API.
- volatility -f dump.mem ldrmodules: Lista os módulos carregados.
- volatility -f dump.mem modscan: Escaneia módulos do kernel.
- volatility -f dump.mem mutantscan: Escaneia objetos de mutante.
- volatility -f dump.mem svcscan: Lista os serviços.
- volatility -f dump.mem yarascan: Escaneia a memória em busca de padrões com o Yara.
- volatility -f dump.mem shimcache: Exibe informações do ShimCache.
- volatility -f dump.mem hivelist: Lista os hives do registro.
- volatility -f dump.mem printkey: Exibe o conteúdo de uma chave do registro.
- volatility -f dump.mem hashdump: Dump de hashes de senha.
- volatility -f dump.mem truecryptmaster: Exibe a chave mestra do TrueCrypt.
- volatility -f dump.mem dumpfiles -Q 0xADDRESS -D /path/to/dump/dir/: Extrai arquivos do espaço de endereço especificado.
- volatility -f dump.mem memdump -p PID -D /path/to/dump/dir/: Faz o dump da memória de um processo específico.
Plugins Adicionais
- volatility -f dump.mem --profile=PROFILE plugin_name: Executa um plugin específico com um perfil personalizado.
- volatility -f dump.mem --profile=PROFILE --output-file=output.txt plugin_name: Salva a saída de um plugin em um arquivo.
Dicas Úteis
- Use o parâmetro --profile=PROFILE para especificar o perfil do sistema operacional.
- Salve a saída em um arquivo para facilitar a análise e referência futura.
- Experimente diferentes plugins para obter informações mais detalhadas e insights adicionais.
{% endtab %}
volatility --profile=Win7SP1x86_23418 -f file.dmp hivelist #List roots
volatility --profile=Win7SP1x86_23418 -f file.dmp printkey #List roots and get initial subkeys
Obter um valor
{% tabs %} {% tab title="vol3" %}
./vol.py -f file.dmp windows.registry.printkey.PrintKey --key "Software\Microsoft\Windows NT\CurrentVersion"
{% endtab %}
{% tab title="vol2" %}Volatility Cheat Sheet
Basic Commands
-
Image Identification
volatility -f <memory_dump> imageinfo
-
Listing Processes
volatility -f <memory_dump> --profile=<profile> pslist
-
Dumping a Process
volatility -f <memory_dump> --profile=<profile> memdump -p <pid> -D <output_directory>
-
Listing Network Connections
volatility -f <memory_dump> --profile=<profile> connections
-
Dumping Registry Hives
volatility -f <memory_dump> --profile=<profile> hivelist
volatility -f <memory_dump> --profile=<profile> printkey -o <offset>
-
Analyzing a Malicious DLL
volatility -f <memory_dump> --profile=<profile> dlllist
volatility -f <memory_dump> --profile=<profile> dlldump -o <offset> -D <output_directory>
Advanced Commands
-
Detecting Hidden Processes
volatility -f <memory_dump> --profile=<profile> psxview
-
Analyzing Process Memory
volatility -f <memory_dump> --profile=<profile> memmap -p <pid>
-
Extracting Kernel Drivers
volatility -f <memory_dump> --profile=<profile> drvmap
-
Identifying Mutants
voljson -f <memory_dump> --profile=<profile> mutantscan
-
Analyzing Suspicious Drivers
volatility -f <memory_dump> --profile=<profile> modscan
-
Analyzing Timelining Information
volatility -f <memory_dump> --profile=<profile> timeliner
-
Analyzing Process Handles
volatility -f <memory_dump> --profile=<profile> handles -p <pid>
-
Analyzing Process DLLs
volatility -f <memory_dump> --profile=<profile> dlllist -p <pid>
-
Analyifying Process Threads
volatility -f <memory_dump> --profile=<profile> threads -p <pid>
-
Analyzing Process PEB
volatility -f <memory_dump> --profile=<profile> psscan
-
Analyzing Process Environment Variables
volatility -f <memory_dump> --profile=<profile> envars -p <pid>
-
Analyzing Process Handles
volatility -f <memory_dump> --profile=<profile> handles -p <pid>
-
Analyzing Process DLLs
volatility -f <memory_dump> --profile=<profile> dlllist -p <pid>
-
Analyzing Process Threads
volatility -f <memory_dump> --profile=<profile> threads -p <pid>
-
Analyzing Process PEB
volatility -f <memory_dump> --profile=<profile> psscan
-
Analyzing Process Environment Variables
volatility -f <memory_dump> --profile=<profile> envars -p <pid>
-
Analyzing Process Handles
volatility -f <memory_dump> --profile=<profile> handles -p <pid>
-
Analyzing Process DLLs
volatility -f <memory_dump> --profile=<profile> dlllist -p <pid>
-
Analyzing Process Threads
volatility -f <memory_dump> --profile=<profile> threads -p <pid>
-
Analyzing Process PEB
volatility -f <memory_dump> --profile=<profile> psscan
-
Analyzing Process Environment Variables
volatility -f <memory_dump> --profile=<profile> envars -p <pid>
-
Analyzing Process Handles
volatility -f <memory_dump> --profile=<profile> handles -p <pid>
-
Analyzing Process DLLs
volatility -f <memory_dump> --profile=<profile> dlllist -p <pid>
-
Analyzing Process Threads
volatility -f <memory_dump> --profile=<profile> threads -p <pid>
-
Analyzing Process PEB
volatility -f <memory_dump> --profile=<profile> psscan
-
Analyzing Process Environment Variables
volatility -f <memory_dump> --profile=<profile> envars -p <pid>
volatility --profile=Win7SP1x86_23418 printkey -K "Software\Microsoft\Windows NT\CurrentVersion" -f file.dmp
# Get Run binaries registry value
volatility -f file.dmp --profile=Win7SP1x86 printkey -o 0x9670e9d0 -K 'Software\Microsoft\Windows\CurrentVersion\Run'
{% endtab %} {% endtabs %}
Despejar
#Dump a hive
volatility --profile=Win7SP1x86_23418 hivedump -o 0x9aad6148 -f file.dmp #Offset extracted by hivelist
#Dump all hives
volatility --profile=Win7SP1x86_23418 hivedump -f file.dmp
Sistema de Arquivos
Montagem
{% tabs %} {% tab title="vol3" %}
#See vol2
{% endtab %}
{% tab title="vol2" %}### Folha de Dicas do Volatility
Comandos Básicos
volatility -f <file> imageinfo
: Verifica o perfil do dump de memória.volatility -f <file> --profile=<profile> <plugin>
: Executa um plugin específico no dump de memória.volatility -f <file> --profile=<profile> pslist
: Lista os processos em execução.volatility -f <file> --profile=<profile> pstree
: Exibe a árvore de processos.volatility -f <file> --profile=<profile> cmdline -p <pid>
: Mostra o comando executado por um processo específico.volatility -f <file> --profile=<profile> filescan
: Escaneia por arquivos abertos.volatility -f <file> --profile=<profile> netscan
: Lista as conexões de rede.volatility -f <file> --profile=<profile> connections
: Mostra as conexões de rede.volatility -f <file> --profile=<profile> malfind
: Identifica malware na memória.volatility -f <file> --profile=<profile> dlllist -p <pid>
: Lista as DLLs carregadas por um processo.volatility -f <file> --profile=<profile> procdump -p <pid> -D <output_directory>
: Faz dump de um processo específico.volatility -f <file> --profile=<profile> memdump -p <pid> -D <output_directory>
: Faz dump da memória de um processo.volatility -f <file> --profile=<profile> cmdline
: Lista os comandos executados.volatility -f <file> --profile=<profile> hivelist
: Lista os hives do registro.volatility -f <file> --profile=<profile> printkey -o <offset>
: Exibe a chave de registro em um determinado deslocamento.voljson -f <file> --profile=<profile> <plugin>
: Exporta a saída do plugin em formato JSON.
Plugins Úteis
malfind
: Identifica malware na memória.pstree
: Exibe a árvore de processos.cmdline
: Lista os comandos executados.filescan
: Escaneia por arquivos abertos.netscan
: Lista as conexões de rede.connections
: Mostra as conexões de rede.dlllist
: Lista as DLLs carregadas por um processo.procdump
: Faz dump de um processo específico.memdump
: Faz dump da memória de um processo.
Dicas
- Sempre especifique o perfil do sistema operacional ao usar o Volatility.
- Verifique a documentação do Volatility para obter mais informações sobre os plugins disponíveis.
- Use a saída dos plugins para identificar atividades suspeitas na memória.
{% endtab %}
volatility --profile=SomeLinux -f file.dmp linux_mount
volatility --profile=SomeLinux -f file.dmp linux_recover_filesystem #Dump the entire filesystem (if possible)
Análise de despejo de memória
{% tabs %} {% tab title="vol3" %}
./vol.py -f file.dmp windows.filescan.FileScan #Scan for files inside the dump
./vol.py -f file.dmp windows.dumpfiles.DumpFiles --physaddr <0xAAAAA> #Offset from previous command
{% endtab %}
{% tab title="vol2" %}A seguir estão alguns comandos comuns do Volatility que podem ser úteis durante a análise de um dump de memória:
- imageinfo: exibe informações gerais sobre o dump de memória.
- pslist: lista os processos em execução no dump de memória.
- pstree: exibe os processos em formato de árvore.
- dlllist: lista as DLLs carregadas em cada processo.
- handles: exibe os identificadores de objetos abertos por processo.
- cmdline: exibe os argumentos da linha de comando de cada processo.
- filescan: escaneia a memória em busca de estruturas de dados de arquivos.
- dumpfiles: extrai arquivos do dump de memória.
- malfind: identifica possíveis malwares na memória.
- apihooks: lista os ganchos de API presentes na memória.
- ldrmodules: lista os módulos carregados em cada processo.
- svcscan: lista os serviços presentes na memória.
- connections: exibe informações sobre conexões de rede.
- sockets: lista os sockets de rede abertos.
- connscan: escaneia a memória em busca de objetos de conexão.
- autoruns: lista os programas configurados para serem executados automaticamente.
- printkey: exibe informações sobre uma determinada chave do registro.
- hivelist: lista os hives do registro presentes na memória.
- hashdump: extrai hashes de senhas do dump de memória.
- kdbgscan: identifica o endereço do depurador do kernel.
- modscan: escaneia a memória em busca de módulos do kernel carregados.
- ssdt: exibe a Tabela de Despacho de Serviços do Sistema.
- gdt: exibe a Tabela de Descritores Globais.
- idt: exibe a Tabela de Despacho de Interrupções.
- callbacks: lista os callbacks de notificação registrados.
- driverirp: lista os IRPs manipulados por drivers.
- devicetree: exibe a árvore de dispositivos.
- printers: lista as impressoras instaladas.
- privs: lista os privilégios do sistema.
- getsids: lista os SIDs dos processos.
- psxview: exibe processos ocultos.
- mbrparser: analisa o Registro Mestre de Inicialização.
- yarascan: escaneia a memória em busca de padrões usando Yara.
- memmap: exibe um mapa de memória do sistema.
- vadinfo: exibe informações sobre regiões de memória virtuais.
- vaddump: extrai uma região de memória virtual específica.
- vadtree: exibe as regiões de memória virtuais em formato de árvore.
- vadwalk: exibe as páginas de memória em uma região de memória virtual.
- vadlist: lista as regiões de memória virtuais.
- vadstrings: extrai strings de uma região de memória virtual.
- vadroot: exibe a raiz da árvore de regiões de memória virtuais.
- dlldump: extrai uma DLL específica do dump de memória.
- memdump: extrai uma região de memória física.
- memstrings: extrai strings ASCII e Unicode da memória.
- memmap: exibe um mapa de memória do sistema.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
- mftparser: analisa a Tabela de Arquivos Mestres.
volatility --profile=Win7SP1x86_23418 filescan -f file.dmp #Scan for files inside the dump
volatility --profile=Win7SP1x86_23418 dumpfiles -n --dump-dir=/tmp -f file.dmp #Dump all files
volatility --profile=Win7SP1x86_23418 dumpfiles -n --dump-dir=/tmp -Q 0x000000007dcaa620 -f file.dmp
volatility --profile=SomeLinux -f file.dmp linux_enumerate_files
volatility --profile=SomeLinux -f file.dmp linux_find_file -F /path/to/file
volatility --profile=SomeLinux -f file.dmp linux_find_file -i 0xINODENUMBER -O /path/to/dump/file
Tabela Mestre de Arquivos
{% tabs %} {% tab title="vol3" %}
# I couldn't find any plugin to extract this information in volatility3
{% endtab %}
{% tab title="vol2" %}O Volatility é uma ferramenta poderosa para análise de dumps de memória. Abaixo estão alguns comandos úteis para análise de dumps de memória com o Volatility:
-
Identificar o perfil do sistema operacional:
volatility -f memdump.mem imageinfo
-
Listar processos em execução:
volatility -f memdump.mem pslist
-
Analisar conexões de rede:
volatility -f memdump.mem connections
-
Analisar registros de registro:
volatility -f memdump.mem hivelist volatility -f memdump.mem printkey -o OFFSET
-
Analisar arquivos abertos:
volatility -f memdump.mem filescan
-
Analisar módulos carregados:
volatility -f memdump.mem ldrmodules
-
Analisar cache DNS:
volatility -f memdump.mem cachedump
-
Analisar tokens de acesso:
volatility -f memdump.mem tokens
-
Analisar handles abertos:
volatility -f memdump.mem handles
-
Analisar pools de etiquetas:
volatility -f memdump.mem poolpeek
-
Analisar tarefas e threads:
volatility -f memdump.mem pstree
-
Analisar registros de eventos:
volatility -f memdump.mem evnets
-
Analisar drivers de kernel:
volatility -f memdump.mem driverscan
-
Analisar objetos de processo:
volatility -f memdump.mem psxview
-
Analisar registros de serviço:
volatility -f memdump.mem svcscan
-
Analisar portas de rede:
volatility -f memdump.mem netscan
-
Analisar informações de segurança:
volatility -f memdump.mem getsids
-
Analisar registros de tarefas agendadas:
volatility -f memdump.mem getsids
-
Analisar registros de tarefas agendadas:
volatility -f memdump.mem malfind
-
Analisar arquivos executáveis:
volatility -f memdump.mem impscan
-
Analisar registros de tarefas agendadas:
volatility -f memdump.mem malfind
-
Analisar arquivos executáveis:
volatility -f memdump.mem impscan
-
Analisar registros de tarefas agendadas:
volatility -f memdump.mem malfind
-
Analisar arquivos executáveis:
volatility -f memdump.mem impscan
-
Analisar registros de tarefas agendadas:
volatility -f memdump.mem malfind
-
Analisar arquivos executáveis:
volatility -f memdump.mem impscan
-
Analisar registros de tarefas agendadas:
volatility -f memdump.mem malfind
-
Analisar arquivos executáveis:
volatility -f memdump.mem impscan
volatility --profile=Win7SP1x86_23418 mftparser -f file.dmp
{% endtab %} {% endtabs %}
O sistema de arquivos NTFS utiliza um componente crítico conhecido como tabela de arquivos mestre (MFT). Esta tabela inclui pelo menos uma entrada para cada arquivo em um volume, cobrindo também o próprio MFT. Detalhes vitais sobre cada arquivo, como tamanho, carimbos de data/hora, permissões e dados reais, são encapsulados dentro das entradas do MFT ou em áreas externas ao MFT, mas referenciadas por essas entradas. Mais detalhes podem ser encontrados na documentação oficial.
#vol3 allows to search for certificates inside the registry
./vol.py -f file.dmp windows.registry.certificates.Certificates
{% endtab %}
{% tab title="vol2" %}### Folha de Dicas do Volatility
Comandos Básicos
- volatility -f memdump.mem imageinfo: Verificar informações básicas do dump de memória.
- volatility -f memdump.mem pslist: Listar os processos em execução.
- volatility -f memdump.mem pstree: Exibir os processos em formato de árvore.
- volatility -f memdump.mem psscan: Escanear processos ocultos.
- volatility -f memdump.mem dlllist -p PID: Listar as DLLs carregadas por um processo específico.
- volatility -f memdump.mem filescan: Escanear arquivos abertos.
- volatility -f memdump.mem cmdline -p PID: Exibir o comando usado para iniciar um processo específico.
- volatility -f memdump.mem connections: Listar as conexões de rede.
- volatility -f memdump.mem netscan: Escanear portas de rede abertas.
- volatility -f memdump.mem timeliner: Criar uma linha do tempo dos eventos do sistema.
- volatility -f memdump.mem malfind: Encontrar possíveis injeções de código malicioso na memória.
- volatility -f memdump.mem hivelist: Listar os hives do registro do Windows.
- volatility -f memdump.mem printkey -o hiveoffset: Exibir o conteúdo de uma chave de registro.
- volatility -f memdump.mem userassist: Recuperar informações sobre programas usados recentemente.
Plugins Adicionais
- volatility -f memdump.mem --profile=PROFILE pluginname: Executar um plugin específico com um perfil personalizado.
- volatility --info | grep -i windows: Listar plugins relacionados ao Windows disponíveis.
- volatility --plugins=PLUGINS_FOLDER: Especificar um diretório de plugins personalizado.
Análise Avançada
- volatility -f memdump.mem --profile=PROFILE ...: Utilizar opções avançadas para análise personalizada.
- volatility --plugins=PLUGINS_FOLDER --profile=PROFILE ...: Combinar plugins personalizados com perfis específicos.
Referências Úteis
{% endtab %}
#vol2 allos you to search and dump certificates from memory
#Interesting options for this modules are: --pid, --name, --ssl
volatility --profile=Win7SP1x86_23418 dumpcerts --dump-dir=. -f file.dmp
Malware
{% tabs %} {% tab title="vol3" %}
./vol.py -f file.dmp windows.malfind.Malfind [--dump] #Find hidden and injected code, [dump each suspicious section]
#Malfind will search for suspicious structures related to malware
./vol.py -f file.dmp windows.driverirp.DriverIrp #Driver IRP hook detection
./vol.py -f file.dmp windows.ssdt.SSDT #Check system call address from unexpected addresses
./vol.py -f file.dmp linux.check_afinfo.Check_afinfo #Verifies the operation function pointers of network protocols
./vol.py -f file.dmp linux.check_creds.Check_creds #Checks if any processes are sharing credential structures
./vol.py -f file.dmp linux.check_idt.Check_idt #Checks if the IDT has been altered
./vol.py -f file.dmp linux.check_syscall.Check_syscall #Check system call table for hooks
./vol.py -f file.dmp linux.check_modules.Check_modules #Compares module list to sysfs info, if available
./vol.py -f file.dmp linux.tty_check.tty_check #Checks tty devices for hooks
{% endtab %}
{% tab title="vol2" %}Volatility Cheat Sheet
Basic Forensic Methodology
-
Memory Dump Analysis
- Identify Profile:
volatility -f memory_dump.raw imageinfo
- List Processes:
volatility -f memory_dump.raw --profile=PROFILE pslist
- Dump Process:
volatility -f memory_dump.raw --profile=PROFILE memdump -p PID -D .
- Analyze DLLs:
volatility -f memory_dump.raw --profile=PROFILE dlllist -p PID
- Analyze Handles:
volatility -f memory_dump.raw --profile=PROFILE handles -p PID
- Analyze Registry:
voljson -f memory_dump.raw --profile=PROFILE printkey -K "ControlSet001\Services"
- Analyze Network Connections:
volatility -f memory_dump.raw --profile=PROFILE connections
- Analyze Timelime:
volatility -f memory_dump.raw --profile=PROFILE timeliner
- Analyze Malware Artifacts:
volatility -f memory_dump.raw --profile=PROFILE malfind
- Identify Profile:
-
File System Analysis
- List Files:
volatility -f memory_dump.raw --profile=PROFILE filescan
- Extract File:
volatility -f memory_dump.raw --profile=PROFILE dumpfiles -Q ADDRESS -D .
- List Files:
-
Registry Analysis
- List Hives:
volatility -f memory_dump.raw --profile=PROFILE hivelist
- Dump Hive:
volatility -f memory_dump.raw --profile=PROFILE printkey -o OFFSET
- List Hives:
-
Network Analysis
- List Sockets:
volatility -f memory_dump.raw --profile=PROFILE sockscan
- Extract PCAP:
volatility -f memory_dump.raw --profile=PROFILE tcpstream -D . -f IP_ADDRESS
- List Sockets:
-
Process Analysis
- Analyze Process:
volatility -f memory_dump.raw --profile=PROFILE pstree
- Analyze Vad:
volatility -f memory_dump.raw --profile=PROFILE vadtree
- Analyze Process:
-
Malware Analysis
- Detect Rootkits:
volatility -f memory_dump.raw --profile=PROFILE rootkit
- Detect Hidden Processes:
volatility -f memory_dump.raw --profile=PROFILE psxview
- Detect Hidden Modules:
volatility -f memory_dump.raw --profile=PROFILE ldrmodules
- Detect Rootkits:
-
Other Artifacts
- Analyze Shimcache:
volatility -f memory_dump.raw --profile=PROFILE shimcache
- Analyze LSA Secrets:
volatility -f memory_dump.raw --profile=PROFILE lsadump
- Analyze User Assist:
volatility -f memory_dump.raw --profile=PROFILE userassist
- Analyze Shimcache:
Advanced Forensic Methodology
-
Timeline Analysis
- Generate Timeline:
volatility -f memory_dump.raw --profile=PROFILE timeliner --output=body --output-file=timeline.csv
- Generate Timeline:
-
Memory Analysis
- Analyze Memory:
volatility -f memory_dump.raw --profile=PROFILE memmap
- Analyze Memory:
-
Process Analysis
- Analyze Process:
volatility -f memory_dump.raw --profile=PROFILE pstotal
- Analyze Handles:
volatility -f memory_dump.raw --profile=PROFILE handles
- Analyze Process:
-
Network Analysis
- Analyze Connections:
volatility -f memory_dump.raw --profile=PROFILE connscan
- Analyze HTTP Sessions:
volatility -f memory_dump.raw --profile=PROFILE iehistory
- Analyze Connections:
-
Malware Analysis
- Analyze Malware:
volatility -f memory_dump.raw --profile=PROFILE malsysproc
- Analyze Malware:
-
Other Artifacts
- Analyze PSScan:
volatility -f memory_dump.raw --profile=PROFILE psscan
- Analyze Driver Modules:
volatility -f memory_dump.raw --profile=PROFILE driverscan
- Analyze PSScan:
volatility --profile=Win7SP1x86_23418 -f file.dmp malfind [-D /tmp] #Find hidden and injected code [dump each suspicious section]
volatility --profile=Win7SP1x86_23418 -f file.dmp apihooks #Detect API hooks in process and kernel memory
volatility --profile=Win7SP1x86_23418 -f file.dmp driverirp #Driver IRP hook detection
volatility --profile=Win7SP1x86_23418 -f file.dmp ssdt #Check system call address from unexpected addresses
volatility --profile=SomeLinux -f file.dmp linux_check_afinfo
volatility --profile=SomeLinux -f file.dmp linux_check_creds
volatility --profile=SomeLinux -f file.dmp linux_check_fop
volatility --profile=SomeLinux -f file.dmp linux_check_idt
volatility --profile=SomeLinux -f file.dmp linux_check_syscall
volatility --profile=SomeLinux -f file.dmp linux_check_modules
volatility --profile=SomeLinux -f file.dmp linux_check_tty
volatility --profile=SomeLinux -f file.dmp linux_keyboard_notifiers #Keyloggers
{% endtab %} {% endtabs %}
Escaneando com yara
Use este script para baixar e mesclar todas as regras de malware yara do github: https://gist.github.com/andreafortuna/29c6ea48adf3d45a979a78763cdc7ce9
Crie o diretório rules e execute-o. Isso criará um arquivo chamado malware_rules.yar que contém todas as regras yara para malware.
wget https://gist.githubusercontent.com/andreafortuna/29c6ea48adf3d45a979a78763cdc7ce9/raw/4ec711d37f1b428b63bed1f786b26a0654aa2f31/malware_yara_rules.py
mkdir rules
python malware_yara_rules.py
#Only Windows
./vol.py -f file.dmp windows.vadyarascan.VadYaraScan --yara-file /tmp/malware_rules.yar
#All
./vol.py -f file.dmp yarascan.YaraScan --yara-file /tmp/malware_rules.yar
{% endtab %}
{% tab title="vol2" %}A seguir estão alguns comandos comuns do Volatility que podem ser úteis durante a análise de um dump de memória:
- imageinfo: exibe informações gerais sobre o dump de memória.
- pslist: lista os processos em execução no dump de memória.
- pstree: exibe os processos em forma de árvore.
- dlllist: lista as DLLs carregadas em cada processo.
- handles: exibe os identificadores de objetos abertos por cada processo.
- filescan: procura por arquivos abertos pelos processos.
- cmdline: exibe os argumentos de linha de comando passados para os processos.
- consoles: lista os consoles alocados para cada processo.
- malfind: procura por possíveis indicadores de malware na memória.
- yarascan: executa uma varredura com regras YARA na memória.
- dumpfiles: extrai arquivos do dump de memória.
- memdump: extrai a memória de um processo específico.
- mbrparser: analisa o Registro Mestre de Inicialização (MBR).
- apihooks: exibe os ganchos de API em cada processo.
- ldrmodules: lista os módulos carregados em cada processo.
- modscan: procura por módulos do kernel carregados na memória.
- ssdt: exibe a Tabela de Despacho de Serviços do Sistema (SSDT).
- callbacks: lista os callbacks registrados no kernel.
- devicetree: exibe a árvore de dispositivos do kernel.
- driverirp: lista as estruturas de solicitação de pacote (IRP) de drivers.
- printkey: exibe as chaves do Registro do Windows.
- hivelist: lista os hives do Registro do Windows carregados na memória.
- hivedump: extrai um hive do Registro do Windows.
- hashdump: extrai hashes de senha do SAM ou do sistema.
- userassist: exibe informações sobre programas usados com frequência.
- getsids: lista os SIDs (Security Identifiers) dos processos.
- getsids2: lista os SIDs dos processos e dos threads.
- getsids3: lista os SIDs dos processos, threads e sessões.
- getsids4: lista os SIDs dos processos, threads, sessões e portas.
- atomscan: procura por objetos de atom na memória.
- atomscan2: procura por objetos de atom na memória e exibe detalhes adicionais.
- atomscan3: procura por objetos de atom na memória e exibe detalhes adicionais, incluindo referências cruzadas.
- atomscan4: procura por objetos de atom na memória e exibe detalhes adicionais, incluindo referências cruzadas e conteúdo de string.
- atomscan5: procura por objetos de atom na memória e exibe detalhes adicionais, incluindo referências cruzadas, conteúdo de string e referências de processo.
- atomscan6: procura por objetos de atom na memória e exibe detalhes adicionais, incluindo referências cruzadas, conteúdo de string, referências de processo e manipuladores de objeto.
- atomscan7: procura por objetos de atom na memória e exibe detalhes adicionais, incluindo referências cruzadas, conteúdo de string, referências de processo, manipuladores de objeto e referências de thread.
- atomscan8: procura por objetos de atom na memória e exibe detalhes adicionais, incluindo referências cruzadas, conteúdo de string, referências de processo, manipuladores de objeto, referências de thread e referências de arquivo.
- atomscan9: procura por objetos de atom na memória e exibe detalhes adicionais, incluindo referências cruzadas, conteúdo de string, referências de processo, manipuladores de objeto, referências de thread, referências de arquivo e referências de chave de registro.
- atomscan10: procura por objetos de atom na memória e exibe detalhes adicionais, incluindo referências cruzadas, conteúdo de string, referências de processo, manipuladores de objeto, referências de thread, referências de arquivo, referências de chave de registro e referências de serviço.
- atomscan11: procura por objetos de atom na memória e exibe detalhes adicionais, incluindo referências cruzadas, conteúdo de string, referências de processo, manipuladores de objeto, referências de thread, referências de arquivo, referências de chave de registro, referências de serviço e referências de token.
- atomscan12: procura por objetos de atom na memória e exibe detalhes adicionais, incluindo referências cruzadas, conteúdo de string, referências de processo, manipuladores de objeto, referências de thread, referências de arquivo, referências de chave de registro, referências de serviço, referências de token e referências de objeto de segurança.
- atomscan13: procura por objetos de atom na memória e exibe detalhes adicionais, incluindo referências cruzadas, conteúdo de string, referências de processo, manipuladores de objeto, referências de thread, referências de arquivo, referências de chave de registro, referências de serviço, referências de token, referências de objeto de segurança e referências de objeto de diretório.
- atomscan14: procura por objetos de atom na memória e exibe detalhes adicionais, incluindo referências cruzadas, conteúdo de string, referências de processo, manipuladores de objeto, referências de thread, referências de arquivo, referências de chave de registro, referências de serviço, referências de token, referências de objeto de segurança, referências de objeto de diretório e referências de objeto de driver.
- atomscan15: procura por objetos de atom na memória e exibe detalhes adicionais, incluindo referências cruzadas, conteúdo de string, referências de processo, manipuladores de objeto, referências de thread, referências de arquivo, referências de chave de registro, referências de serviço, referências de token, referências de objeto de segurança, referências de objeto de diretório, referências de objeto de driver e referências de objeto de dispositivo.
- atomscan16: procura por objetos de atom na memória e exibe detalhes adicionais, incluindo referências cruzadas, conteúdo de string, referências de processo, manipuladores de objeto, referências de thread, referências de arquivo, referências de chave de registro, referências de serviço, referências de token, referências de objeto de segurança, referências de objeto de diretório, referências de objeto de driver, referências de objeto de dispositivo e referências de objeto de arquivo.
- atomscan17: procura por objetos de atom na memória e exibe detalhes adicionais, incluindo referências cruzadas, conteúdo de string, referências de processo, manipuladores de objeto, referências de thread, referências de arquivo, referências de chave de registro, referências de serviço, referências de token, referências de objeto de segurança, referências de objeto de diretório, referências de objeto de driver, referências de objeto de dispositivo, referências de objeto de arquivo e referências de objeto de porta.
- atomscan18: procura por objetos de atom na memória e exibe detalhes adicionais, incluindo referências cruzadas, conteúdo de string, referências de processo, manipuladores de objeto, referências de thread, referências de arquivo, referências de chave de registro, referências de serviço, referências de token, referências de objeto de segurança, referências de objeto de diretório, referências de objeto de driver, referências de objeto de dispositivo, referências de objeto de arquivo, referências de objeto de porta e referências de objeto de soquete.
- atomscan19: procura por objetos de atom na memória e exibe detalhes adicionais, incluindo referências cruzadas, conteúdo de string, referências de processo, manipuladores de objeto, referências de thread, referências de arquivo, referências de chave de registro, referências de serviço, referências de token, referências de objeto de segurança, referências de objeto de diretório, referências de objeto de driver, referências de objeto de dispositivo, referências de objeto de arquivo, referências de objeto de porta, referências de objeto de soquete e referências de objeto de arquivo mapeado.
- atomscan20: procura por objetos de atom na memória e exibe detalhes adicionais, incluindo referências cruzadas, conteúdo de string, referências de processo, manipuladores de objeto, referências de thread, referências de arquivo, referências de chave de registro, referências de serviço, referências de token, referências de objeto de segurança, referências de objeto de diretório, referências de objeto de driver, referências de objeto de dispositivo, referências de objeto de arquivo, referências de objeto de porta, referências de objeto de soquete, referências de objeto de arquivo mapeado e referências de objeto de soquete mapeado. {% endtab %}
wget https://gist.githubusercontent.com/andreafortuna/29c6ea48adf3d45a979a78763cdc7ce9/raw/4ec711d37f1b428b63bed1f786b26a0654aa2f31/malware_yara_rules.py
mkdir rules
python malware_yara_rules.py
volatility --profile=Win7SP1x86_23418 yarascan -y malware_rules.yar -f ch2.dmp | grep "Rule:" | grep -v "Str_Win32" | sort | uniq
MISC
Plugins externos
Se deseja usar plugins externos, certifique-se de que as pastas relacionadas aos plugins sejam o primeiro parâmetro utilizado.
./vol.py --plugin-dirs "/tmp/plugins/" [...]
{% endtab %}
{% tab title="vol2" %}A seguir estão alguns comandos úteis do Volatility para análise de despejo de memória:
- imageinfo: exibe informações gerais sobre a imagem de memória.
- pslist: lista os processos em execução.
- pstree: exibe os processos em formato de árvore.
- psscan: verifica os processos ocultos.
- dlllist: lista as DLLs carregadas em cada processo.
- handles: exibe os identificadores de objeto aberto para cada processo.
- cmdline: mostra os argumentos da linha de comando de cada processo.
- consoles: lista os consoles associados a cada processo.
- malfind: procura por possíveis malwares na memória.
- apihooks: identifica possíveis ganchos de API.
- ldrmodules: lista os módulos carregados em cada processo.
- svcscan: verifica os serviços do Windows.
- connections: exibe as conexões de rede.
- sockets: lista os sockets de rede.
- devicetree: mostra a árvore de dispositivos.
- modscan: verifica módulos do kernel.
- ssdt: exibe a Tabela de Despacho de Serviços do Sistema.
- callbacks: lista os callbacks do kernel.
- driverirp: exibe as estruturas de solicitação de pacote (IRP) do driver.
- printkey: exibe as subchaves e valores de uma chave de registro.
- privs: lista os privilégios do sistema.
- getsids: exibe os SIDs dos processos.
- dumpfiles: extrai arquivos do espaço de endereço de um processo.
- memmap: exibe os mapeamentos de memória.
- memdump: cria um despejo de memória de um processo específico.
- yarascan: executa uma varredura YARA na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por poss
volatilitye --plugins="/tmp/plugins/" [...]
{% endtab %} {% endtabs %}
Autoruns
Baixe em https://github.com/tomchop/volatility-autoruns
volatility --plugins=volatility-autoruns/ --profile=WinXPSP2x86 -f file.dmp autoruns
Mutexes
{% tabs %} {% tab title="vol3" %}
./vol.py -f file.dmp windows.mutantscan.MutantScan
{% endtab %}
{% tab title="vol2" %}A seguir estão alguns comandos comuns do Volatility que podem ser úteis durante a análise de um dump de memória:
- imageinfo: exibe informações gerais sobre a imagem de memória.
- pslist: lista os processos em execução.
- pstree: exibe os processos em formato de árvore.
- dlllist: lista as DLLs carregadas em cada processo.
- handles: exibe os handles abertos por cada processo.
- filescan: escaneia a memória em busca de arquivos.
- cmdline: exibe os argumentos da linha de comando de cada processo.
- consoles: lista os consoles associados a cada processo.
- malfind: encontra possíveis malwares na memória.
- apihooks: identifica possíveis ganchos de API.
- ldrmodules: lista os módulos carregados em cada processo.
- svcscan: escaneia a memória em busca de serviços.
- connections: exibe informações de conexões de rede.
- sockets: lista os sockets de rede.
- devicetree: exibe a árvore de dispositivos.
- modscan: escaneia a memória em busca de módulos do kernel.
- ssdt: exibe a Tabela de Despacho de Serviços do Sistema.
- callbacks: lista os callbacks do kernel.
- gdt: exibe a Tabela de Descritores Globais.
- idt: exibe a Tabela de Descritores de Interrupção.
- driverscan: escaneia a memória em busca de drivers.
- printkey: exibe as chaves do Registro de impressão.
- privs: lista os privilégios de cada processo.
- yarascan: escaneia a memória em busca de padrões usando Yara.
- dumpfiles: extrai arquivos da memória.
- dumpregistry: extrai o Registro do Windows da memória.
- memmap: exibe um mapa de memória.
- vadinfo: exibe informações sobre regiões de memória virtuais.
- vaddump: extrai uma região de memória virtual específica.
- memstrings: extrai sequências de caracteres da memória.
- memdump: faz o dump de uma região de memória específica.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- malfind: encontra possíveis malwares na memória.
- **malfind
volatility --profile=Win7SP1x86_23418 mutantscan -f file.dmp
volatility --profile=Win7SP1x86_23418 -f file.dmp handles -p <PID> -t mutant
Links Simbólicos
{% tabs %} {% tab title="vol3" %}
./vol.py -f file.dmp windows.symlinkscan.SymlinkScan
{% endtab %}
{% tab title="vol2" %}## Folha de dicas do Volatility
Comandos básicos
imageinfo
: exibe informações básicas sobre a imagem de memóriapslist
: lista os processos em execuçãopstree
: exibe os processos em formato de árvorepsscan
: escaneia todos os processosdlllist
: lista as DLLs carregadas por cada processocmdline
: exibe os argumentos da linha de comando de um processofilescan
: escaneia os handles de arquivohandles
: exibe os handles de arquivo de um processovadinfo
: exibe informações sobre regiões de memória alocadasvadtree
: exibe as regiões de memória alocadas em formato de árvoremalfind
: encontra possíveis injeções de malware em processosyarascan
: escaneia a memória em busca de padrões com o Yara
Plugins adicionais
malfind
: encontra possíveis injeções de malware em processosyarascan
: escaneia a memória em busca de padrões com o Yaratimeliner
: cria uma linha do tempo dos processos e suas atividadesdumpfiles
: extrai arquivos do espaço de endereço de um processomemdump
: cria um dump da memória de um processoapihooks
: detecta possíveis ganchos de API em processosldrmodules
: lista os módulos carregados em cada processomodscan
: escaneia módulos do kernel em busca de rootkitsssdt
: exibe a Tabela de Despacho de Serviços do Sistemacallbacks
: exibe os callbacks registrados no kerneldevicetree
: exibe a árvore de dispositivos do kerneldriverirp
: exibe as rotinas de tratamento de solicitação de E/S de drivers
Exemplos de uso
vol.py -f mem.raw imageinfo
: exibe informações sobre a imagem de memóriavol.py -f mem.raw pslist
: lista os processos em execuçãovol.py -f mem.raw --profile=Win7SP1x64 pstree
: exibe os processos em formato de árvore em um sistema Windows 7 SP1 de 64 bitsvol.py -f mem.raw cmdline -p 1234
: exibe os argumentos da linha de comando do processo com PID 1234vol.py -f mem.raw malfind
: procura por possíveis injeções de malware em processosvol.py -f mem.raw yarascan -Y "malware_rules.yar"
: escaneia a memória em busca de padrões definidos no arquivo de regras "malware_rules.yar"
{% endtab %}
volatility --profile=Win7SP1x86_23418 -f file.dmp symlinkscan
Bash
É possível ler do histórico do bash na memória. Você também poderia fazer dump do arquivo .bash_history, mas se estiver desativado, você ficará feliz em saber que pode usar este módulo de volatilidade.
./vol.py -f file.dmp linux.bash.Bash
{% endtab %}
{% tab title="vol2" %}O Volatility é uma ferramenta poderosa para análise de dumps de memória. Abaixo estão alguns comandos úteis para análise de dumps de memória com o Volatility:
-
Identificar o perfil do sistema operacional:
volatility -f memdump.mem imageinfo
-
Listar processos em execução:
volatility -f memdump.mem pslist
-
Analisar conexões de rede:
volatility -f memdump.mem connections
-
Analisar registros de registro:
volatility -f memdump.mem hivelist volatility -f memdump.mem printkey -o OFFSET
-
Analisar arquivos abertos:
volatility -f memdump.mem filescan
-
Analisar módulos carregados:
volatility -f memdump.mem ldrmodules
-
Analisar cache DNS:
volatility -f memdump.mem cachedump
-
Analisar tokens de acesso:
volatility -f memdump.mem tokens
-
Analisar handles de arquivos:
volatility -f memdump.mem handles
-
Analisar drivers de kernel:
volatility -f memdump.mem driverscan
-
Analisar processos e threads:
volatility -f memdump.mem pstree
-
Analisar pools de etiquetas:
volatility -f memdump.mem poolscanner
-
Analisar registros de eventos:
volatility -f memdump.mem evtlogs
-
Analisar serviços e drivers:
volatility -f memdump.mem svcscan
-
Analisar portas e sockets:
volatility -f memdump.mem sockets
-
Analisar tarefas agendadas:
volatility -f memdump.mem getsids
-
Analisar SID e usuários:
volatility -f memdump.mem getsids
-
Analisar cache de impressão:
volatility -f memdump.mem printd
-
Analisar cache de registro:
volatility -f memdump.mem printkey -o OFFSET
-
Analisar cache de serviço:
volatility -f memdump.mem servicehooks
-
Analisar cache de arquivos:
volatility -f memdump.mem filescan
-
Analisar cache de DLLs:
volatility -f memdump.mem dlllist
-
Analisar cache de drivers:
volatility -f memdump.mem driverscan
-
Analisar cache de módulos:
volatility -f memdump.mem modscan
-
Analisar cache de processos:
volatility -f memdump.mem psxview
-
Analisar cache de sockets:
volatility -f memdump.mem sockscan
-
Analisar cache de tarefas:
volatility -f memdump.mem malfind
-
Analisar cache de VAD:
volatility -f memdump.mem vadinfo
-
Analisar cache de VADs:
volatility -f memdump.mem vadtree
-
Analisar cache de VADs detalhado:
volatility -f memdump.mem vadwalk
-
Analisar cache de VADs detalhado (mais informações):
volatility -f memdump.mem vadinfo -o OFFSET
-
Analisar cache de VADs detalhado (mais informações):
volatility -f memdump.mem vadtree -o OFFSET
-
Analisar cache de VADs detalhado (mais informações):
volatility -f memdump.mem vadwalk -o OFFSET
-
Analisar cache de VADs detalhado (mais informações):
volatility -f memdump.mem vadinfo -o OFFSET
-
Analisar cache de VADs detalhado (mais informações):
volatility -f memdump.mem vadtree -o OFFSET
-
Analisar cache de VADs detalhado (mais informações):
volatility -f memdump.mem vadwalk -o OFFSET
-
Analisar cache de VADs detalhado (mais informações):
volatility -f memdump.mem vadinfo -o OFFSET
-
Analisar cache de VADs detalhado (mais informações):
volatility -f memdump.mem vadtree -o OFFSET
-
Analisar cache de VADs detalhado (mais informações):
volatility -f memdump.mem vadwalk -o OFFSET
-
Analisar cache de VADs detalhado (mais informações):
volatility -f memdump.mem vadinfo -o OFFSET
-
Analisar cache de VADs detalhado (mais informações):
volatility -f memdump.mem vadtree -o OFFSET
-
Analisar cache de VADs detalhado (mais informações):
volatility -f memdump.mem vadwalk -o OFFSET
-
Analisar cache de VADs detalhado (mais informações):
volatility -f memdump.mem vadinfo -o OFFSET
-
Analisar cache de VADs detalhado (mais informações):
volatility -f memdump.mem vadtree -o OFFSET
-
Analisar cache de VADs detalhado (mais informações):
volatility -f memdump.mem vadwalk -o OFFSET
volatility --profile=Win7SP1x86_23418 -f file.dmp linux_bash
Linha do Tempo
{% tabs %} {% tab title="vol3" %}
./vol.py -f file.dmp timeLiner.TimeLiner
{% endtab %}
{% tab title="vol2" %}A seguir estão alguns comandos úteis do Volatility para análise de despejo de memória:
- imageinfo: Exibe informações gerais sobre o arquivo de despejo de memória.
- pslist: Lista os processos em execução no sistema.
- pstree: Exibe os processos em forma de árvore.
- psscan: Escaneia todos os processos ativos.
- dlllist: Lista os módulos DLL carregados em cada processo.
- handles: Exibe os identificadores de objetos abertos por cada processo.
- cmdline: Mostra os argumentos da linha de comando de cada processo.
- consoles: Lista os consoles associados a cada processo.
- filescan: Escaneia os arquivos abertos por processos.
- netscan: Exibe detalhes sobre sockets de rede.
- connections: Lista as conexões de rede.
- sockets: Exibe detalhes sobre os sockets.
- svcscan: Lista os serviços do Windows.
- modscan: Escaneia os módulos do kernel.
- malfind: Identifica possíveis malwares na memória.
- apihooks: Detecta possíveis ganchos de API.
- ldrmodules: Lista os módulos carregados em cada processo.
- devicetree: Exibe a árvore de dispositivos.
- driverirp: Lista as IRPs (Pacotes de Solicitação de E/S) manipuladas por drivers.
- ssdt: Exibe a Tabela de Despacho de Serviços do Sistema.
- gdt: Exibe a Tabela de Descritores Globais.
- idt: Exibe a Tabela de Descritores de Interrupção.
- callbacks: Lista os callbacks registrados.
- mutantscan: Escaneia os objetos de mutante.
- atomscan: Escaneia os objetos de átomo.
- deskscan: Escaneia os objetos de área de trabalho.
- drivermodule: Exibe informações sobre um módulo de driver específico.
- vadinfo: Exibe informações sobre regiões de memória virtuais.
- vaddump: Faz o dump de uma região de memória virtual específica.
- memmap: Exibe um mapa de memória física.
- memdump: Faz o dump de um intervalo de memória física.
- memstrings: Extrai strings ASCII e Unicode da memória.
- yarascan: Escaneia a memória em busca de padrões YARA.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- malfind: Identifica possíveis malwares na memória.
- **malfind
volatility --profile=Win7SP1x86_23418 -f timeliner
Drivers
{% tabs %} {% tab title="vol3" %}
./vol.py -f file.dmp windows.driverscan.DriverScan
{% endtab %}
{% tab title="vol2" %}A seguir estão alguns comandos úteis do Volatility para análise de despejo de memória:
- imageinfo: exibe informações gerais sobre a imagem de memória.
- pslist: lista os processos em execução.
- pstree: exibe os processos em formato de árvore.
- psscan: verifica os processos ocultos.
- dlllist: lista as DLLs carregadas em cada processo.
- handles: exibe os identificadores de objeto aberto para cada processo.
- cmdline: exibe os argumentos da linha de comando de cada processo.
- consoles: lista os consoles associados a cada processo.
- filescan: verifica os arquivos mapeados na memória.
- svcscan: lista os serviços do Windows.
- connections: exibe as conexões de rede.
- malfind: procura por possíveis malwares na memória.
- apihooks: identifica possíveis ganchos de API.
- ldrmodules: lista os módulos carregados em cada processo.
- modscan: verifica os módulos do kernel.
- ssdt: exibe a Tabela de Despacho de Serviço do Sistema.
- callbacks: lista os callbacks do kernel.
- driverirp: exibe os IRPs de driver do kernel.
- devicetree: exibe a árvore de dispositivos.
- printkey: exibe as chaves do Registro de impressão.
- privs: lista os privilégios do processo.
- getsids: exibe os SIDs associados a cada processo.
- hivelist: lista os hives do Registro.
- hashdump: extrai hashes de senha da memória.
- kdbgscan: verifica a presença do KDBG.
- kpcrscan: verifica a presença do KPCR.
- gdt: exibe a Tabela de Descritores Globais.
- idt: exibe a Tabela de Descritores de Interrupção.
- ss: exibe a Tabela de Seletores de Segmento.
- modules: lista os módulos do kernel.
- moddump: extrai um módulo específico.
- vaddump: extrai um driver específico.
- vadinfo: exibe informações sobre um VAD específico.
- vadtree: exibe a árvore VAD de um processo.
- vadwalk: exibe a lista VAD de um processo.
- yarascan: executa uma varredura YARA na memória.
- yarascan: executa uma varredura YARA na memória.
- memmap: exibe um mapa de memória.
- memdump: extrai uma região de memória.
- memstrings: extrai strings ASCII e Unicode da memória.
- memhistory: exibe as alterações de memória.
- memdiff: compara duas imagens de memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória.
- malfind: procura por possíveis malwares na memória
volatility --profile=Win7SP1x86_23418 -f file.dmp driverscan
Obter área de transferência
#Just vol2
volatility --profile=Win7SP1x86_23418 clipboard -f file.dmp
Obter histórico do IE
#Just vol2
volatility --profile=Win7SP1x86_23418 iehistory -f file.dmp
Obter texto do bloco de notas
#Just vol2
volatility --profile=Win7SP1x86_23418 notepad -f file.dmp
Captura de tela
#Just vol2
volatility --profile=Win7SP1x86_23418 screenshot -f file.dmp
Registro Mestre de Inicialização (MBR)
volatility --profile=Win7SP1x86_23418 mbrparser -f file.dmp
O Master Boot Record (MBR) desempenha um papel crucial na gestão das partições lógicas de um meio de armazenamento, que são estruturadas com diferentes sistemas de arquivos. Ele não apenas mantém informações de layout da partição, mas também contém código executável atuando como um carregador de inicialização. Esse carregador de inicialização inicia diretamente o processo de carregamento da segunda etapa do SO (consulte carregador de inicialização de segunda etapa) ou trabalha em harmonia com o registro de inicialização do volume (VBR) de cada partição. Para conhecimento mais aprofundado, consulte a página da Wikipedia sobre MBR.
Referências
- https://andreafortuna.org/2017/06/25/volatility-my-own-cheatsheet-part-1-image-identification/
- https://scudette.blogspot.com/2012/11/finding-kernel-debugger-block.html
- https://or10nlabs.tech/cgi-sys/suspendedpage.cgi
- https://www.aldeid.com/wiki/Windows-userassist-keys * https://learn.microsoft.com/en-us/windows/win32/fileio/master-file-table
- https://answers.microsoft.com/en-us/windows/forum/all/uefi-based-pc-protective-mbr-what-is-it/0fc7b558-d8d4-4a7d-bae2-395455bb19aa
RootedCON é o evento de cibersegurança mais relevante na Espanha e um dos mais importantes na Europa. Com a missão de promover o conhecimento técnico, este congresso é um ponto de encontro fervilhante para profissionais de tecnologia e cibersegurança em todas as disciplinas.
{% embed url="https://www.rootedcon.com/" %}
Aprenda hacking AWS do zero ao herói com htARTE (HackTricks AWS Red Team Expert)!
Outras maneiras de apoiar o HackTricks:
- Se você deseja ver sua empresa anunciada no HackTricks ou baixar o HackTricks em PDF, verifique os PLANOS DE ASSINATURA!
- Adquira o swag oficial PEASS & HackTricks
- Descubra A Família PEASS, nossa coleção exclusiva de NFTs
- Junte-se ao 💬 grupo Discord ou ao grupo telegram ou siga-nos no Twitter 🐦 @hacktricks_live.
- Compartilhe seus truques de hacking enviando PRs para os repositórios HackTricks e HackTricks Cloud.