Neste artigo irei abordar um tema extremamente importante e interessante na área de segurança da informação: a análise de malware.
Primeiramente devemos compreender que a análise de malware é um processo composto por diversas etapas que tem como objetivo compreender o comportamento de determinado arquivo ou URL suspeita.
Como resultado dessa análise, podemos descobrir como determinado malware funciona e possíveis formas de mitigá-lo.
Até aqui tudo bem, correto? Mas como isso realmente funciona? Bom acompanhe abaixo um breve resumo dessa arte.
Os tipos de análises realizadas em malwares
Basicamente a análise de malware é dividida em 3 tipos, que seguem abaixo:
Análise estática: Neste tipo de análise o código do malware não precisa e normalmente não é executado. É uma análise conduzida de forma mais cautelosa, apenas buscando sinais de intenção maliciosa por parte de determinado arquivo suspeito. Sendo que ela é muito útil para realizar um reconhecimento da infraestrutura maliciosa, tais como bibliotecas utilizadas, arquivos escondidos, domínios ou endereços de IP que fazem parte do vetor de ataque, ou seja são aplicadas técnicas de engenharia reversa para se obter tais resultados.
Análise dinâmica: Já na análise dinâmica, o malware é sim executado, entretanto, dentro de um ambiente totalmente controlado, conhecido como sandbox ou a famosa “caixa de areia”. Esse tipo de análise coloca o malware em ação, possibilitando aos analistas verificarem o comportamento do mesmo, possibilitando assim uma compreensão mais completa do comportamento do arquivo.
Analise híbrida: Como estamos falando em malware, seus desenvolvedores sabem dessas duas técnicas e, em alguns casos, colocam mecanismos de proteção para identificarem um ambiente de sandbox. Portanto, malwares sofisticados podem tentar enganar os dois tipos de análises citados acima, sendo necessário combinar técnicas de análise de malware estática e hibrida.
As principais etapas de uma análise de malware
Análises de propriedades estáticas
Como já citado acima, nesta etapa são analisadas algumas propriedades estáticas de sequências de caracteres que estão incorporadas ao malware. Além de diversos outros dados, como hashes, recursos utilizados, data de criação do arquivo entre outras informações.
Durante essa parte do processo de análise, o código do malware não é executado, porém, é possível saber o grau do indicador de comprometimento que determinado malware pode ter. É possível direcionar se determinada amostra precisa de uma investigação mais profunda ou não.
Analisando o comportamento de um malware
Caso uma amostra seja classificada como “alto risco”, ou até mesmo possua mecanismos para dificultar a análise estática, uma nova etapa é realizada. Durante essa etapa a amostra do malware é colocada em execução em ambientes controlados.
Neste momento os analistas responsáveis procuram entender o funcionamento, sistemas de arquivos, processos e tráfego de rede da amostra em questão. Podendo também realizar uma análise forense de memória para compreender como o malware faz uso da memória.
Esse tipo de teste é muito interessante, pois torna possível verificar possíveis cenários em que determinada amostra pode ativar determinados módulos inertes, mostrando assim a sua real natureza se assim posso dizer.
Automatizando todo o processo
Bom, certamente sabemos que analisar centenas de amostras é quase humanamente impossível, sendo assim existem softwares que realizam um processo automatizado e geram relatórios bem detalhados sobre uma amostra.
Através desses relatórios é possível determinar o funcionamento de determinado malware. Basicamente todo o processo é feito de forma automática e fornecem como resultado respostas rápidas, sendo considerada a melhor maneira de verificar malwares em grande escala.
Engenharia reversa uma verdadeira arte
Sem sombra de dúvidas, a engenharia reversa é uma arte para poucos. Nesse estágio os analistas começam a utilizar técnicas e ferramentas como depuradores, compiladores e ferramentas especializadas em decodificação para literalmente desmontarem um malware.
Através da engenharia reversa ou reversão manual de código é possível compreender como determinado malware foi desenvolvido e possíveis brechas dentro de sua estrutura.
Contudo, essa etapa leva tempo e exige um alto grau de conhecimento. Porém, uma vez que ela for bem realizada, é possível extrair informações extremamente importantes sobre a natureza do malware.
Em quais casos a análise de malware é usada?
Antes de continuar, você precisa ter em mente que: Ataques de malware são lucrativos e cibercriminosos têm criado e utilizado técnicas mais sofisticadas.
Com esses dois pontos chave, podemos compreender que a análise de malware é empregada para criação de métodos de detecção, resposta a incidentes cibernéticos, caça a potenciais ameaças e até mesmo para pesquisas.
No caso da detecção, normalmente a análise é realizada para criar possíveis mecanismos de defesa que possam ser aplicadas a soluções automatizadas (Antivírus por exemplo…).
Já no caso de incidentes, é determinar a possível causa, impacto e recuperação da rede ou sistema afetado, sendo algo crucial dentro de uma Análise Forense Computacional.
Existem mais dois casos muito interessantes: o de “caça a ameaças” ou também conhecido como “Threat Hunter” e a “pesquisa de malwares”. Esses dois casos são muito parecidos, mas com pequenas diferenças entre si.
A atividade “Threat Hunter” consiste na busca investigativa por potenciais ameaças que possam comprometer a segurança de determinada rede. Sendo amplamente utilizada em empresas para buscar possíveis ameaças que possam colocar em risco a segurança e integridade de dados.
Para finalizarmos, não podemos deixar de lado a forma de “Pesquisa”, normalmente conduzida por pesquisadores e grandes empresas que buscam compreender melhor o perfil dos mais recentes malwares. Existem também pesquisadores independentes que conduzem pesquisas e divulgam seus resultados publicamente.
“Você conhece algum pesquisador independente de malware? Comente!”
É possível compreendermos que a análise de malware é uma área muito abrangente e que nos últimos tempos tem se tornado cada vez mais visada.
Episódios recentes, como o caso dos novos ransomwares, ou botnets massivas como a Mirai, demonstraram que compreender como os malwares foram criados é algo obrigatório.
Uma indústria que movimenta milhões de dólares todos os anos
Atualmente, cibercriminosos têm se tornado mais incisivos, o que tornou a indústria da criação de malwares muito concorrida. Chegando a movimentar bilhões de dólares anualmente.
Consequentemente, se você se interessa por essa área, provavelmente vai encontrar um vasto mercado.
Entretanto, é válido lembrar que é necessário se especializar, buscar conteúdos relacionados a Segurança da Informação, Pentest e até mesmo programação.
Espero que tenha gostado desse breve artigo sobre Análise de Malware. Deixe seu comentário abaixo para complementar o conteúdo ou tirar dúvidas.