Baixe o app para aproveitar ainda mais
Prévia do material em texto
Universidade Estadual do Maranhão – UEMA Centro de Ciências Tecnológicas - CCT Engenharia de Computação Computação Forense Luan Felipe Araújo Sousa Despejo de Memória e Autoruns São Luís, 2018 Sumário 1. Despejo ou Dump de Memória ....................................................................... 3 2. Realizando o despejo no Windows sem utilização de software adicional ...... 3 2.1 Análise do Despejo de Memória ............................................................... 6 3. Realizando o despejo no Windows com utilização de software adicional ...... 6 3.1 Análise do Despejo de Memória ............................................................... 8 4. Autoruns ....................................................................................................... 13 Referências ...................................................................................................... 16 3 1. Despejo ou Dump de Memória O despejo de memória ou dump de memória é gravar e reproduzir tudo que estava na memória num certo momento da execução. Com ele é possível analisar erros, verificar se existem malwares na memória RAM e também verificar o que estava sendo feito naquele momento no computador. 2. Realizando o despejo no Windows sem utilização de software adicional Para realização do dump de memória foi utilizado uma máquina virtual com o sistema operacional Windows 7. Antes de realizar o despejo de memória é recomendado que se faça um backup do registro, pois qualquer modificação incorreta ocasionará vários problemas e assim poderá ser restaurado a partir desse backup. Esse backup pode ser feito manualmente utilizando o banco de dados de registro do Windows, o regedit ou criando um ponto de restauração do sistema. Para iniciar o processo de despejo, temos que seguir alguns passos: 1. Acessar Computador; 2. Clicar em Propriedades; 3. Clicar em Configurações Avançadas do Sistema; 4. Clicar na aba Avançado; 5. Ir na seção: Inicialização e Recuperação e clicar em configurações. Ao seguir esses passos aparecerá uma janela, dividida em três áreas: Inicialização do Sistema, Falha do Sistema e Gravando Informações de Depuração e é nessa terceira área que escolheremos entre três tipos de despejo: Despejo de Memória Pequeno, Despejo de Memória do Kernel e Despejo de Memória Completo. Logo abaixo ele nos mostra onde o despejo de memória ficará salvo: %SystemRoot%\MEMORY.DMP. 4 Figura 1: Tela de Inicialização e Recuperação do Windows Ao escolher o despejo completo é necessário fazer uma modificação de um registro do sistema chamado: CrashDumpEnabled e mudar para 1 a subchave desse registro. Abaixo está o passo a passo da modificação: 1. Abrir o regedit: Figura 2: Editor de Registro 5 2. Procurar o registro CrashDumpEnabled: Figura 3: Registros do Computador 3. Clicar com o botão direito no registro e depois em Modificar: Figura 4: Editar registro CrashDumpEnabled 6 4. Mudar para 1 a subchave desse registro: Figura 5: Editando registro CrashDumpEnabled 2.1 Análise do Despejo de Memória Não foi possível realizar a análise do despejo de memória, pois nem a pasta nem o arquivo foram encontrados no computador. Foi realizada a tentativa de mudar o local de salvamento do arquivo e mesmo assim o arquivo não se encontrava no local. 3. Realizando o despejo no Windows com utilização de software adicional Para realizar o despejo de memória será utilizado o software AccessData FTK Imager na versão 3.2.0.0 e para a análise será utilizado o software Volatility na versão 2.6, ambos sendo executados no Windows 10. Abaixo estão os passos de como realizar o despejo de memória com o AccessData FTK Imager: 7 1. Clicar em Capture Memory: Figura 6: Tela de Configuração da Captura de Memória 2. Escolher um nome para o arquivo: Figura 7: Nomeando o arquivo 8 3. Escolher um local onde o arquivo com a extensão .mem vai ser salvo: Figura 8: Escolhendo local para salvar o arquivo 4. Por fim clicar em Capture Memory e esperar terminar o processo: Figura 9: Processo de Captura de Memória 3.1 Análise do Despejo de Memória O Volatility fornece recursos que o depurador de kernel da própria Microsoft não permite, como esculpir históricos de comandos, buffers de entrada / saída do console, objetos USER (memória GUI) e estruturas de dados relacionadas à rede. Com ele também é possível analisar despejos brutos, despejos de memória, arquivos de hibernação, VMware .vmem, arquivos salvos e salvos do VMware (.vmss / .vmsn), despejos do núcleo do 9 VirtualBox, LiME (Linux Memory Extractor), e memória física direta sobre o Firewire. Nessa ocasião o Volatility será usado para saber quais processos estavam sendo executados no momento em que foi gerado o arquivo: dumpdememoria.mem e quais programas estavam abertos no momento . Para utilizar o Volatility e realizar a análise do arquivo de despejo foram necessário os seguintes passos: 1. Abrir o Prompt de Comando (CMD); 2. Já com ele aberto, ir até a pasta em que se encontrar o arquivo de despejo; 3. Digitar o comando para análise de todos os processos em execução seguindo a lista de EPROCESS: volatility_2.6_win64_standalone.exe –f "C:\Users\Luan\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Python 3.7\volatility_2.6_win64_standalone\dumpedememoria.mem" -- profile=Win10x64_14393 pslist , que está no formato: arquivo_executavel_do_volatility.exe -f “local_do_arquivo_de_despejo” – profile=código_relacionado_ao_sistema.operacional_que_foi_feito_dum p pslist . 4. Como resultado, temos: 10 Figura 10: Processos em Execução Figura 11: Processos em Execução 11 Figura 12: Processos em Execução Figura 13: Processos em Execução 12 Após o comando recebemos como saída uma tabela com os campos: Offset, nome do processo, PID que é a identificação do processo, PPID que é a identificação do pai do processo, thds que são as threads, Hnds, Sess, How64, Start e Exit. Analisando a tabela encontramos processos do Google Chrome, Office, AccessData FTK Imager, Onedrive, processos de inicilização e outros. Digitando o comando para análise de conexões de rede : volatility_2.6_win64_standalone.exe –f "C:\Users\Luan\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Python 3.7\volatility_2.6_win64_standalone\dumpedememoria.mem" -- profile=Win10x64_14393 netscan , que está no formato: arquivo_executavel_do_volatility.exe -f “local_do_arquivo_de_despejo” – profile=código_relacionado_ao_sistema.operacional_que_foi_feito_dum p netscan. 5. Como resultado, temos: Figura 14: Lista de Conexões Após o comando recebemos como saída uma tabela com os campos: Offset, tipo de protocolo, endereço local, endereço lógico, estado da conexão (OPEN, CLOSED, LISTENING, ESTABLISHED), PID que é a identificação do processo, owner que é o serviço proprietário daquele processo e o horário que13 o processo foi criado. Analisando a tabela encontramos processos do Google Chrome (chrome.exe), Hospedeiro de Serviços (svhost.exe) e Host do provedor de estrutura de associação de dispositivo (dasHost.exe) que iniciaram e/ou terminaram alguma conexão, bem como o horário em que isso aconteceu. É importante atentar que o fuso horário está de acordo com o Meridiano de Greenwich (UTC+0000) e assim é preciso converter para o fuso horário da região. 4. Autoruns O Autoruns mostra quais são os programas de inicialização automática bem como a lista completa de locais do Registro e do sistema de arquivos disponíveis para a configuração de início automático, mostra quando são inicializados vários aplicativos internos do Windows. Autoruns relata extensões de shell do Explorer, barras de ferramentas, objetos auxiliares do navegador, notificações do Winlogon, serviços de inicialização automática e muito mais. Figura 15: Tela Inicial do Autoruns Os locais de inicialização automática exibidos pelo Autoruns incluem entradas de logon, complementos do Explorer, complementos do Internet Explorer, BHOs, DLLs de Appinit, imagens de execução de boot, DLLs de notificação do Winlogon, Windows Services e Winsock Layered Service Providers. codecs e muito mais. 14 Conta com várias guias para visualizar autostarts de diferentes categorias. Podemos exibir as propriedades de um executável configurado para ser executado automaticamente, selecione-o e use o item de menu Propriedades ou o botão da barra de ferramentas. Figura 16: Acessando propriedades do arquivo Figura 17: Propriedades do Arquivo 15 O menu de opções inclui várias opções de filtragem de exibição, como a exibição de entradas que não sejam do Windows, além de acesso a uma caixa de diálogo de opções de verificação na qual você pode ativar a verificação de assinaturas . Podemos também verificar a existência de vírus no processo, onde ele gera uma hash o identificando, mostra a quantidade de vírus e clicando nessa quantidade somos direcionados ao site Virus Total, onde a sua url é composta pela hash: https://www.virustotal.com/pt/file/380cf38a51172fc8e63fb23b72f932173c3a0bd 086030a471bb46bb14b27dbf3/analysis/. Figura 18: Autoruns Figura 19: Site: Virus Total Desmarcando a caixa de seleção de um arquivo, desabilitamos o seu início automático. 16 Referências Autoruns for Windows. Disponível em:< https://docs.microsoft.com/pt- br/sysinternals/downloads/autoruns >Acesso: 12 de setembro 2018. What Is “Device Association Framework Provider Host” and Why Is It Running on My PC? Disponível em:< https://www.howtogeek.com/270665/what-is- device-association-framework-provider-host-and-why-is-it-running-on-my-pc/ >Acesso: 12 de setembro 2018. Computação Forense análise do dump de memória. Disponível em:< https://blog.tecnologiaesi.com.br/computacao-forense-analise-do-dump- de-memoria-ram/ >Acesso: 12 de setembro 2018. Crash Address Space Disponível em:< https://github.com/volatilityfoundation/volatility/wiki/Crash-Address- Space >Acesso: 12 de setembro 2018. Instalando o Volatility no Windows. Disponível em:< http://periciadigitaldf.blogspot.com/2016/12/instalando-o-volatility-no- windows.html >Acesso: 12 de setembro 2018.
Compartilhar