{"id":21950,"date":"2025-02-17T11:01:29","date_gmt":"2025-02-17T14:01:29","guid":{"rendered":"https:\/\/www.ethicalhacker.com.br\/site\/?p=21950"},"modified":"2025-02-23T19:25:01","modified_gmt":"2025-02-23T22:25:01","slug":"forense-digital-com-linux-tecnicas-praticas-parte-2","status":"publish","type":"post","link":"https:\/\/www.ethicalhacker.com.br\/site\/2025\/02\/exploits\/forense-digital-com-linux-tecnicas-praticas-parte-2\/","title":{"rendered":"Forense Digital com Linux &#8211; T\u00e9cnicas Pr\u00e1ticas &#8211; Parte 2"},"content":{"rendered":"\n<p style=\"text-align: justify;\">A an\u00e1lise de mem\u00f3ria RAM com o <strong>Volatility<\/strong> \u00e9 uma t\u00e9cnica poderosa para identificar atividades maliciosas em sistemas comprometidos. Neste exemplo pr\u00e1tico, vamos simular a an\u00e1lise de um dump de mem\u00f3ria RAM para detectar uma anomalia, como um processo malicioso ou uma conex\u00e3o de rede suspeita.<\/p>\n<p>\u00a0<\/p>\n<p>\u00a0<\/p>\n<p>\u00a0<\/p>\n<p><strong>Cen\u00e1rio de exemplo<\/strong><\/p>\n<p style=\"text-align: justify;\">Imagine que um servidor Linux foi comprometido, e voc\u00ea suspeita que um atacante tenha injetado um processo malicioso na mem\u00f3ria RAM. Voc\u00ea possui um dump de mem\u00f3ria (<code>dump_memoria.img<\/code>) e deseja analis\u00e1-lo usando o Volatility para identificar poss\u00edveis anomalias.<\/p>\n<p>\u00a0<\/p>\n<p><strong>Passo 1: Prepara\u00e7\u00e3o do Ambiente<\/strong><\/p>\n<p><strong>1.1 Instale o Volatility:<\/strong><\/p>\n<p>Se voc\u00ea ainda n\u00e3o tem o Volatility instalado, siga estas etapas:<\/p>\n<div class=\"md-code-block\">\n<pre><span class=\"token function\">sudo<\/span> <span class=\"token function\">apt<\/span> update\n<span class=\"token function\">sudo<\/span> <span class=\"token function\">apt<\/span> <span class=\"token function\">install<\/span> volatility<br \/><br \/><\/pre>\n<\/div>\n<p><strong>1.2 Verifique o perfil do sistema:<\/strong><\/p>\n<p>O Volatility requer um perfil correspondente ao sistema operacional do dump de mem\u00f3ria. Para identificar o perfil correto, use o comando:<\/p>\n<div class=\"md-code-block\">\n<pre>volatility <span class=\"token parameter variable\">-f<\/span> dump_memoria.img imageinfo<br \/><br \/><\/pre>\n<\/div>\n<p><strong>Sa\u00edda no Shell:<\/strong><\/p>\n<div class=\"md-code-block\">\n<pre>Suggested Profile(s) : LinuxUbuntu_5_4_0-42-genericx64<br \/><br \/><\/pre>\n<\/div>\n<p><strong>Passo 2: Listar Processos em Execu\u00e7\u00e3o<\/strong><\/p>\n<p>O primeiro passo \u00e9 listar todos os processos em execu\u00e7\u00e3o no momento do dump de mem\u00f3ria. Isso pode revelar processos maliciosos ou suspeitos.<\/p>\n<p>\u00a0<\/p>\n<p><strong>Comando:<\/strong><\/p>\n<div class=\"md-code-block\">\n<pre>volatility <span class=\"token parameter variable\">-f<\/span> dump_memoria.img <span class=\"token parameter variable\">--profile<\/span><span class=\"token operator\">=<\/span>LinuxUbuntu_5_4_0-42-genericx64 linux_pslist<br \/><br \/><\/pre>\n<\/div>\n<p><strong>Sa\u00edda no Shell:<\/strong><\/p>\n<div class=\"md-code-block\">\n<pre>Offset             Name                 PID    PPID   UID    GID    DTB                \n------------------ -------------------- ------ ------ ------ ------ ------------------ \n0xffff88003c8a0000 systemd              1      0      0      0      0x0000000000000000 <br \/>\n0xffff88003c8a1000 bash                 1234   1      1000   1000   0x0000000000000000 <br \/>\n0xffff88003c8a2000 sshd                 5678   1      0      0      0x0000000000000000 <br \/>\n0xffff88003c8a3000 malware              9999   1      0      0      0x0000000000000000 <br \/><br \/><\/pre>\n<\/div>\n<p><strong>An\u00e1lise:<\/strong><\/p>\n<ul>\n<li>\n<p>O processo <code>malware<\/code> com PID <code>9999<\/code> parece suspeito, pois n\u00e3o \u00e9 um processo comum do sistema.<\/p>\n<\/li>\n<li>\n<p>O UID <code>0<\/code> indica que o processo est\u00e1 sendo executado como root, o que aumenta a gravidade da amea\u00e7a.<\/p>\n<\/li>\n<\/ul>\n<p>\u00a0<\/p>\n<p><strong>Passo 3: Analisar Conex\u00f5es de Rede<\/strong><\/p>\n<p style=\"text-align: justify;\">Processos maliciosos frequentemente estabelecem conex\u00f5es de rede para se comunicar com servidores de comando e controle (C2). Podemos usar o plugin <code>linux_netstat<\/code> para listar conex\u00f5es de rede ativas.<\/p>\n<p>\u00a0<\/p>\n<p><strong>Comando:<\/strong><\/p>\n<div class=\"md-code-block\">\n<pre>volatility <span class=\"token parameter variable\">-f<\/span> dump_memoria.img <span class=\"token parameter variable\">--profile<\/span><span class=\"token operator\">=<\/span>LinuxUbuntu_5_4_0-42-genericx64 linux_netstat<br \/><br \/><\/pre>\n<\/div>\n<p><strong>Sa\u00edda no Shell:<\/strong><\/p>\n<div class=\"md-code-block\">\n<pre>Proto  Local Address          Foreign Address        State       PID   Process Name\n------ --------------------- --------------------- ----------- ------ ------------\nTCP    192.168.1.100:22       192.168.1.1:54321      ESTABLISHED 5678  sshd\nTCP    192.168.1.100:4444     10.0.0.1:80            ESTABLISHED 9999  malware<br \/><br \/><\/pre>\n<\/div>\n<p><strong>An\u00e1lise:<\/strong><\/p>\n<ul>\n<li>\n<p>O processo <code>malware<\/code> (PID <code>9999<\/code>) est\u00e1 estabelecendo uma conex\u00e3o com o endere\u00e7o IP <code>10.0.0.1<\/code> na porta <code>80<\/code>.<\/p>\n<\/li>\n<li>\n<p>Essa conex\u00e3o \u00e9 suspeita, pois n\u00e3o \u00e9 uma atividade normal do sistema.<\/p>\n<\/li>\n<\/ul>\n<p>\u00a0<\/p>\n<p><strong>Passo 4: Extrair Informa\u00e7\u00f5es do Processo Malicioso<\/strong><\/p>\n<p style=\"text-align: justify;\">Para investigar mais detalhes sobre o processo malicioso, podemos usar o plugin <code>linux_procdump<\/code> para extrair o bin\u00e1rio do processo da mem\u00f3ria.<\/p>\n<p>\u00a0<\/p>\n<p><strong>Comando:<\/strong><\/p>\n<div class=\"md-code-block\">\n<pre>volatility <span class=\"token parameter variable\">-f<\/span> dump_memoria.img <span class=\"token parameter variable\">--profile<\/span><span class=\"token operator\">=<\/span>LinuxUbuntu_5_4_0-42-genericx64 linux_procdump <br \/><span class=\"token parameter variable\">-p<\/span> <span class=\"token number\">9999<\/span> <span class=\"token parameter variable\">-D<\/span> output\/<br \/><br \/><\/pre>\n<\/div>\n<p><strong>Sa\u00edda no Shell:<\/strong><\/p>\n<div class=\"md-code-block\">\n<pre>Process Name        PID    Address            Size     Path\n------------------- ------ ------------------ -------- --------------------------\nmalware             9999   0x0000555555554000 4096     output\/malware.9999.exe<br \/><br \/><\/pre>\n<\/div>\n<p><strong>An\u00e1lise:<\/strong><\/p>\n<ul>\n<li>\n<p>O bin\u00e1rio do processo malicioso foi extra\u00eddo para o arquivo <code>output\/malware.9999.exe<\/code>.<\/p>\n<\/li>\n<li>\n<p>Esse arquivo pode ser analisado posteriormente com ferramentas como <code>strings<\/code>, <code>Ghidra<\/code> ou enviado para an\u00e1lise em sandboxes.<\/p>\n<\/li>\n<\/ul>\n<p>\u00a0<\/p>\n<p><strong>Passo 5: Verificar M\u00f3dulos de Kernel Carregados<\/strong><\/p>\n<p>Processos maliciosos podem carregar m\u00f3dulos de kernel para ocultar suas atividades. Podemos usar o plugin <code>linux_lsmod<\/code> para listar os m\u00f3dulos carregados.<\/p>\n<p>\u00a0<\/p>\n<p><strong>Comando:<\/strong><\/p>\n<div class=\"md-code-block\">\n<pre>volatility <span class=\"token parameter variable\">-f<\/span> dump_memoria.img <span class=\"token parameter variable\">--profile<\/span><span class=\"token operator\">=<\/span>LinuxUbuntu_5_4_0-42-genericx64 linux_lsmod<\/pre>\n<\/div>\n<p><strong>Sa\u00edda no Shell:<\/strong><\/p>\n<div class=\"md-code-block\">\n<pre>Name                 Size     RefCount\n------------------- -------- ---------\nmalware_module       8192     1<\/pre>\n<\/div>\n<p><strong>An\u00e1lise:<\/strong><\/p>\n<ul>\n<li>\n<p>O m\u00f3dulo <code>malware_module<\/code> foi carregado e est\u00e1 ativo no kernel.<\/p>\n<\/li>\n<li>\n<p>Esse m\u00f3dulo pode ser usado para ocultar o processo malicioso ou suas atividades.<\/p>\n<\/li>\n<\/ul>\n<p>\u00a0<\/p>\n<p><strong>Passo 6: Documentar as evid\u00eancias<\/strong><\/p>\n<p>Ap\u00f3s identificar as anomalias, documente todas as evid\u00eancias encontradas, incluindo:<\/p>\n<ul>\n<li>\n<p>Processos suspeitos.<\/p>\n<\/li>\n<li>\n<p>Conex\u00f5es de rede an\u00f4malas.<\/p>\n<\/li>\n<li>\n<p>Bin\u00e1rios extra\u00eddos.<\/p>\n<\/li>\n<li>\n<p>M\u00f3dulos de kernel suspeitos.<\/p>\n<\/li>\n<\/ul>\n<p>\u00a0<\/p>\n<p><strong>Conclus\u00e3o<\/strong><\/p>\n<p style=\"text-align: justify;\">Neste exemplo pr\u00e1tico, utilizamos o Volatility para analisar um dump de mem\u00f3ria RAM e identificar uma anomalia, um processo malicioso (<code>malware<\/code>) com conex\u00f5es de rede suspeitas e um m\u00f3dulo de kernel carregado. Essas t\u00e9cnicas s\u00e3o essenciais para investigar incidentes de seguran\u00e7a e entender como os atacantes operam em sistemas comprometidos.<\/p>\n<p style=\"text-align: justify;\">Lembre-se de que a an\u00e1lise de mem\u00f3ria \u00e9 apenas uma parte do processo de forense digital. Combine essas t\u00e9cnicas com outras ferramentas e m\u00e9todos para obter uma vis\u00e3o completa do incidente.<\/p>\n<p>\u00a0<\/p>\n<p><strong>Refer\u00eancias Bibliogr\u00e1ficas<\/strong><\/p>\n<p><strong>An\u00e1lise de Mem\u00f3ria RAM com Volatility<\/strong><\/p>\n<ul>\n<li>\n<p><strong>Documenta\u00e7\u00e3o do Volatility<\/strong>: Manual oficial da ferramenta.<\/p>\n<ul>\n<li>\n<p>Dispon\u00edvel em:\u00a0<a href=\"https:\/\/www.volatilityfoundation.org\/\" target=\"_blank\" rel=\"noopener noreferrer\">https:\/\/www.volatilityfoundation.org\/<\/a><\/p>\n<\/li>\n<\/ul>\n<\/li>\n<li>\n<p><strong>Guia de An\u00e1lise de Mem\u00f3ria<\/strong>: T\u00e9cnicas de an\u00e1lise de mem\u00f3ria RAM.<\/p>\n<ul>\n<li>\n<p>Dispon\u00edvel em:\u00a0<a href=\"https:\/\/volatility-labs.blogspot.com\/\" target=\"_blank\" rel=\"noopener noreferrer\">https:\/\/volatility-labs.blogspot.com\/<\/a><\/p>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n","protected":false},"excerpt":{"rendered":"<p>A an\u00e1lise de mem\u00f3ria RAM com o Volatility \u00e9 uma t\u00e9cnica poderosa para identificar atividades maliciosas em sistemas comprometidos. Neste exemplo pr\u00e1tico, vamos simular a an\u00e1lise de um dump de mem\u00f3ria RAM para detectar uma anomalia, como um processo malicioso ou uma conex\u00e3o de rede suspeita. \u00a0 \u00a0 \u00a0 Cen\u00e1rio de exemplo Imagine que um [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":21958,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[89,100,21],"tags":[],"class_list":["post-21950","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-basico","category-diversos","category-exploits"],"_links":{"self":[{"href":"https:\/\/www.ethicalhacker.com.br\/site\/wp-json\/wp\/v2\/posts\/21950","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.ethicalhacker.com.br\/site\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.ethicalhacker.com.br\/site\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.ethicalhacker.com.br\/site\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.ethicalhacker.com.br\/site\/wp-json\/wp\/v2\/comments?post=21950"}],"version-history":[{"count":14,"href":"https:\/\/www.ethicalhacker.com.br\/site\/wp-json\/wp\/v2\/posts\/21950\/revisions"}],"predecessor-version":[{"id":22182,"href":"https:\/\/www.ethicalhacker.com.br\/site\/wp-json\/wp\/v2\/posts\/21950\/revisions\/22182"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.ethicalhacker.com.br\/site\/wp-json\/wp\/v2\/media\/21958"}],"wp:attachment":[{"href":"https:\/\/www.ethicalhacker.com.br\/site\/wp-json\/wp\/v2\/media?parent=21950"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.ethicalhacker.com.br\/site\/wp-json\/wp\/v2\/categories?post=21950"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.ethicalhacker.com.br\/site\/wp-json\/wp\/v2\/tags?post=21950"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}