Forense Digital com Linux – Técnicas Práticas – Parte 9

 

Aplicações práticas em cenários reais

Vamos agora aplicar o Plaso em um cenário prático. Imagine que você está investigando um incidente de segurança em que um atacante comprometeu um servidor. Utilizando o Plaso, você pode:

 

 

  • Identificar o ponto de entrada:

    • Analisar logs de autenticação para detectar logins suspeitos.

    • Verificar se houve execução de scripts ou programas maliciosos.

  • Rastrear atividades do atacante:

    • Reconstruir a linha do tempo das ações realizadas pelo atacante.

    • Identificar arquivos criados, modificados ou excluídos.

  • Coletar evidências para relatórios:

    • Exportar eventos específicos para incluir em relatórios forenses.

    • Utilizar os dados para embasar decisões de resposta a incidentes.

 

Aqui estão as linhas de comando no shell do Linux para aplicar o Plaso (Log2Timeline) no cenário prático descrito, anunciado no artigo “Forense Digital com Linux – Técnicas práticas – parte 8”, conforme informações anteriores:

 

1. Identificar o ponto de entrada

Analisar logs de autenticação para detectar logins suspeitos:

psort.py -o dynamic --filter "parser == 'linux:auth_log'" -w 
auth_logs.csv timeline.plaso

  • Este comando filtra eventos relacionados a logs de autenticação (como /var/log/auth.log) e os exporta para um arquivo CSV chamado auth_logs.csv.

 

Verificar se houve execução de scripts ou programas maliciosos:

psort.py -o dynamic --filter "parser == 'bash:history' OR parser == 'linux:syslog'" -w
executed_scripts.csv timeline.plaso


  • Este comando filtra eventos relacionados ao histórico do Bash (~/.bash_history) e logs do sistema (/var/log/syslog) para identificar a execução de scripts ou programas.

 

2. Rastrear atividades do atacante

Reconstruir a linha do tempo das ações realizadas pelo atacante:

psort.py -o dynamic --filter "user == 'atacante'" -w attacker_timeline.csv timeline.plaso

  • Este comando filtra todos os eventos associados ao usuário atacante e os exporta para um arquivo CSV chamado attacker_timeline.csv.

 

Identificar arquivos criados, modificados ou excluídos:

psort.py -o dynamic --filter "parser == 'filestat'" -w file_activities.csv timeline.plaso

  • Este comando extrai eventos relacionados a operações de arquivos (criação, modificação e exclusão) e os exporta para file_activities.csv.

 

3. Coletar evidências para relatórios

Exportar eventos específicos para incluir em relatórios forenses:

psort.py -o dynamic --filter "timestamp >= '2023-10-01' AND timestamp <= '2023-10-31'" -w 
october_events.csv timeline.plaso

  • Este comando filtra eventos que ocorreram entre 1º de outubro de 2023 e 31 de outubro de 2023 e os exporta para october_events.csv.

 

Utilizar os dados para embasar decisões de resposta a incidentes:

psort.py -o dynamic --filter "event_type == 'file:creation' OR event_type == 'file:deletion'" 
-w critical_file_changes.csv timeline.plaso

  • Este comando filtra apenas eventos de criação e exclusão de arquivos, que podem ser críticos para a investigação, e os exporta para critical_file_changes.csv.

 

Explicação dos comandos

  • psort.py: Ferramenta do Plaso para processar e filtrar eventos armazenados em um arquivo .plaso.

  • -o dynamic: Define o formato de saída como dinâmico, que é adequado para exportação em CSV.

  • --filter: Permite aplicar filtros específicos para extrair apenas os eventos relevantes.

  • -w: Especifica o arquivo de saída onde os resultados serão salvos.

  • timeline.plaso: Arquivo gerado pelo log2timeline.py que contém todos os eventos extraídos.

 

Como utilizar os resultados

  • Os arquivos CSV gerados podem ser abertos em ferramentas como Excel, Google Sheets ou qualquer software de planilhas para análise detalhada.

  • Utilize os dados para identificar padrões, correlacionar eventos e construir um relatório forense completo.

 

Esses comandos permitem que você aplique o Plaso de maneira eficiente em cenários reais de investigação de segurança cibernética.

 

Fonte e imagens: https://www.kali.org/tools/plaso/