Informações Gerais
Horário e Local:
Quinta-feira, 18:10 – 21:30 (Laboratório 1)
Descrição
Em um mundo cada vez mais conectado, o cibercrime evolui em velocidade impressionante, exigindo profissionais capazes de compreender e combater ameaças digitais sofisticadas. O curso de Análise de Malware foi desenvolvido para quem deseja mergulhar no funcionamento interno de softwares maliciosos, explorando técnicas de investigação, engenharia reversa, comportamento em ambiente controlado e mecanismos de evasão usados por atacantes. Com uma abordagem prática e fundamentada, você aprenderá a identificar, dissecar e interpretar malwares em diferentes cenários, adquirindo habilidades essenciais para atuar em segurança da informação, resposta a incidentes e defesa cibernética.
Avaliação
A avaliação será dará através de dois componentes:
- Frequência e Participação(FeP)
- CTF: atividade prática, onde os alunos terão que executar procedimentos de análise de malware e entregar um relatório
A nota final do aluno será calculada da seguinte maneira:
Nota Final = FeP * 0,3 + CTF * 0,7
A situação de aprovação do aluno se dará da seguinte forma:
- Nota_Final < 3: aluno reprovado;
- 3 <= Nota_Final < 7: aluno em prova final;
- Nota_Final >= 7: aluno aprovado.
Ambiente de Análise
No contexto de um curso de análise de malware, trabalhamos com amostras reais de softwares maliciosos. Por essa razão, nunca é possível executá-las em um ambiente de produção ou em sistemas utilizados no dia a dia, sob risco de comprometer a integridade das máquinas físicas e da rede. Para contornar essa limitação, utilizamos máquinas virtuais (VMs), que fornecem um ambiente controlado, seguro e reversível para a realização de experimentos.
A virtualização apresenta uma solução particularmente eficiente, pois permite a criação de redes isoladas e a utilização de snapshots. Estes recursos oferecem a possibilidade de retornar o sistema rapidamente a um estado inicial conhecido, após a execução de um malware, eliminando qualquer modificação persistente.
Contudo, ainda que as VMs ofereçam uma camada de segurança, é fundamental isolar completamente o ambiente de análise. Para isso, a interface de rede deve ser configurada no modo host-only, garantindo que o tráfego gerado pelo malware não alcance a Internet. Além disso, recomenda-se desabilitar recursos como copiar e colar entre o host e as VMs e pastas compartilhadas, de forma a minimizar vetores de escape que poderiam comprometer a máquina física.
Para que a análise seja eficaz, é necessário contar com um conjunto diversificado de ferramentas, tanto para análise estática (inspeção de código sem execução) quanto para análise dinâmica (observação do comportamento em tempo de execução). Algumas ferramentas essenciais incluem:
- PE Studio, CFF Explorer, Detect it Easy (DIE): inspeção e análise de executáveis.
- HashMyFiles: geração e comparação de hashes.
- Process Hacker, System Informer, Process Explorer, Process Monitor: monitoramento de processos e atividades do sistema.
- API Monitor, NTTrace: interceptação e análise de chamadas de API.
- Autoruns, Regshot, Registry Viewer: identificação de persistência e modificações no registro.
- BinText, Strings, YARA: extração e busca de strings em binários.
- Wireshark, Microsoft Network Monitor, Fiddler: captura e análise de tráfego de rede.
- x64DBG (com plugins como ScyllaHide, OllyDumpEx e XAnalyzer): depuração de executáveis.
- IDA Free, Ghidra: engenharia reversa.
- FTK Imager Lite, Volatility Standalone: análise forense de disco e memória.
- Ring3 API Hook Scanner, SSDTView, DriverView: identificação de hooks e drivers carregados.
- Malzilla, SimpleWMIView: inspeção de scripts maliciosos e consultas WMI.
- Notepad++: edição de arquivos com suporte avançado a sintaxes.
Um laboratório de análise robusto também exige recursos computacionais significativos. É necessário amplo espaço de armazenamento para manter múltiplas VMs de diferentes sistemas operacionais, bem como quantidade suficiente de memória RAM para executar duas ou mais máquinas simultaneamente. Em ambientes profissionais, pode ser necessário manter versões antigas de sistemas operacionais, tanto em 32 quanto em 64 bits (Windows XP, Vista, 7, etc.), uma vez que certos malwares são desenvolvidos especificamente para essas plataformas.
No presente curso, adotaremos duas máquinas virtuais principais:
- Windows 11: será utilizada como ambiente de execução dos malwares, com todas as ferramentas listadas previamente instaladas.
- Remnux: uma distribuição Linux especializada em análise de malware, que atuará simultaneamente como default gateway e servidor DNS da máquina Windows. O Remnux já vem equipado com uma ampla gama de ferramentas voltadas para análise de tráfego, desmontagem de código, extração de indicadores e investigação de artefatos maliciosos, o que o torna peça fundamental no laboratório.
Esse arranjo garante um ambiente controlado, isolado e suficientemente equipado para a realização de análises estáticas, dinâmicas, comportamentais e forenses, proporcionando uma visão abrangente do ciclo de vida de um malware.
Você pode criar as máquinas virtuais e instalar os softwares manualmente. Entretanto, para facilitar você pode baixar a máquina Windows pronta e a máquina Remnux através dos links abaixo:
Cronograma
O cronograma abaixo é uma estimativa e pode variar no decorrer do curso.
Bibliografia Sugerida
- Mohanta, Abhijit; Saldanha, Anoop. Malware Analysis and Detection Engineering: Apress, 2020.
- CUCCI, Kyle. Evasive Malware: A Field Guide to Detecting, Analyzing, and Defeating Advanced Threats. San Francisco: No Starch Press, 2024. 488 p. ISBN 978-1-7185-0326-7
- Kleymenov, Alexey; Thabet, Amr. Mastering Malware Analysis, 2nd Edition: Packt, 2022.
- Barker, Dylan. Malware Analysis Techniques: Packt, 2021.
- Sikorski, Michael; Honig, Andrew. Practical Malware Analysis: no starch press, 2012.
- Mercês, Fernando. Fundamento de Engenharia Reversa. Disponível em https://mentebinaria.gitbook.io/engenharia-reversa/(Último acesso: 20/05/2022)