Fonte: MaxPixel.net
Introdução
A Cert.br, em sua cartilha de segurança para Internet (2020), conceitua códigos maliciosos (também conhecidos como pragas ou malware) como "programas desenvolvidos para executar ações danosas e atividades maliciosas em equipamentos, como computadores, modems, switches, roteadores e dispositivos móveis (tablets, celulares, smartphones, etc). Um atacante pode instalar um código malicioso após invadir um equipamento ou explorando alguma vulnerabilidade existente nos programas nele instalados". Na referida cartilha, o Centro de Estudos, Resposta e Tratamento de Incidentes de Segurança no Brasil lista os principais tipos de malwares existentes, descrevendo as características de cada tipo, além das ameaças inerentes a cada um. Tal lista, que é cobrada constantemente em concursos públicos de TI e até mesmo em concursos para outras áreas onde a disciplina de Informática é cobrada em edital (as vezes no formato "na letra da lei", isto é, o enunciado e/ou as alternativas são formuladas a partir de cópias dos itens da mesma), é apresentada na íntegra a seguir:
- Vírus - Programa ou parte de um programa de computador, normalmente malicioso, que se propaga inserindo cópias de si mesmo, se tornando parte de outros programas e arquivos (CERT.BR, 2020);
- Cavalo de Troia (Trojan) - Programa que, além de executar funções para as quais foi aparentemente projetado, também executa outras funções, normalmente maliciosas, e sem o conhecimento do usuário (CERT.BR, 2020);
- Ransomware - Programa que torna inacessível os dados armazenados em um equipamento, geralmente usando criptografia, e que exige pagamento de resgate para restabelecer o acesso ao usuário (CERT.BR, 2020);
- Backdoor - Programa que permite o retorno de um invasor a um equipamento comprometido, por meio da inclusão de serviços criados ou modificados para este fim (CERT.BR, 2020);
- Remote Access Trojan (RAT) - Trojan de Acesso Remoto. É um programa que combina as características de trojan e backdoor, já que permite ao atacante acessar o equipamento remotamente e executar ações como se fosse o usuário (CERT.BR, 2020);
- Worm - Programa capaz de se propagar automaticamente pelas redes, explorando vulnerabilidades nos programas instalados e enviando cópias de si mesmo de equipamento para equipamento (CERT.BR, 2020);
- Bot - Programa similar ao worm e que possui mecanismos de comunicação com o invasor que permitem que ele seja remotamente controlado (CERT.BR, 2020);
- Zumbi - Equipamento infectado por um bot. Pode ser controlado remotamente, sem o conhecimento do seu dono (CERT.BR, 2020);
- Botnet - É uma rede formada por centenas ou milhares de equipamentos zumbis e que permite potencializar as ações danosas executadas pelos bots (CERT.BR, 2020);
- Spyware - Programa projetado para monitorar as atividades de um sistema e enviar informações coletadas para terceiros (CERT.BR, 2020);
- Keylogger - Tipo de Spyware capaz de capturar e armazenar as teclas digitadas pelo usuário no teclado do equipamento (CERT.BR, 2020);
- Screenlogger - Tipo de Spyware usado por atacantes para capturar as teclas digitadas pelo usuário em teclados virtuais, disponíveis principalmente em sites de Internet Banking (CERT.BR, 2020);
- Adware - Programa projetado especificamente para apresentar propagandas (CERT.BR, 2020);
- Rootkit - Conjunto de programas e técnicas que permite esconder e assegurar a presença de um invasor ou de outro código malicioso em um equipamento comprometido (CERT.BR, 2020);
Análise de Malware
De acordo com Baker (2022), a Análise de Malware é o processo de entendimento sobre o comportamento e o propósito de um arquivo suspeito ou de uma URL. A saída desta análise contribui com a detecção e a mitigação de ameaças em potencial. Já Zeltser (2021) afirma que a Análise de Malware nada mais é do que a interseção entre a resposta a incidentes, a computação forense, a administração, monitoramento e segurança de sistemas e redes e a engenharia de software.
Principais Estágios da Análise de Malware
Segundo Zelter (2021), a Análise de Malware pode ser resumida em quatro estágios ou fases, ordenadas de forma crescente de acordo com a sua complexidade (do estágio de menor complexidade até a de maior complexidade) na lista a seguir:
- Análise totalmente automatizada: O arquivo suspeito é executado em um ambiente de análise de malware automatizado, chamado sandbox. A partir de tal ambiente, é possível obter relatórios das atividades do arquivo, como sua interação com arquivos de sistema e rede;
- Análise de propriedades estáticas (análise estática): O foco deste estágio está na análise dos metadados e outros detalhes embarcados em um arquivo suspeito, como strings, sem executá-lo. Dessa forma, é possível obter algumas dicas sobre os blocos de código do arquivo que merecem maior atenção, sendo foco de análise mais detalhada nos próximos estágios. Aqui vale um adendo feito por Lopes (2020): A análise estática não é útil contra um programa compactado ou que possua código ofuscado, já que o mesmo precisaria ser descompactado ou ter a(s) técnica(s) de ofuscação descoberta(s) para que a análise estática seja efetivamente realizada, tornando a referida análise mais difícil e desafiadora. Dentre as formas possíveis de se identificar arquivos comprimidos suspeitos, tem-se a análise de entropia. Segundo a IBM (2021) a entropia de um arquivo mede a aleatoriedade dos dados de um arquivo e é usada para determinar se um arquivo contém dados ocultos suspeitos. A escala vai de 0 (não aleatória) a 8 (totalmente aleatória). De acordo com Renovaci (2020), valores altos de entropia são comuns em arquivos comprimidos, cifrados e malwares (80% dos malwares existentes possuem alta entropia);
- Análise de comportamento interativo (análise dinâmica): Nessa fase, o arquivo é executado em um ambiente isolado e controlado (como uma máquina virtual), sendo aplicada uma série de experimentos para o estudo do comportamento do arquivo suspeito. Dentre os experimentos que podem ser executados, Lopes (2020) lista os seguintes: O uso de ferramentas antivírus; O uso de hashes para identificar malwares (É possível submeter um arquivo malicioso para um programa de extração de hash, que irá gerar uma espécie de "impressão digital" do arquivo. Caso o hash extraído seja igual a um hash que identifique um malware, o arquivo malicioso será desmascarado); A coleta de comandos sequenciais, funções e cabeçalhos do arquivo malicioso;
- Engenharia Reversa: Aqui há a análise do código que compõe o arquivo a partir de ferramentas como disassemblers e debuggers, com o objetivo de compreender as capacidades chave e preencher as lacunas que ficaram nos estágios anteriores.
Exercícios
1) [CESPE - 2018 - Polícia Federal - Perito Criminal Federal - Área 3] Existem diversas técnicas para descompilar programas maliciosos. Conforme a característica de um malware, essas técnicas podem ou não ser utilizadas. A respeito desse assunto, julgue o seguinte item.
Existem três técnicas chaves para a análise de malware: análise binária, análise de entropia e análise de strings.
A) Errado
B) Certo
2) Normalmente, quando se verifica que um binário possui alta entropia, é possível que o malware utilize técnicas de compactação, o que torna a análise mais complexa.
A) Errado
B) Certo
A) ErradoB) Certo
4) [Cebraspe (Cespe) - 2021 - MP-AP - Analista Ministerial - Tecnologia da Informação] O botnet consiste em
A) um pedaço de código incorporado em um sistema de software.
B) um tipo de malware que cria uma rede de computadores contaminados
C) um programa que realiza propositalmente atividades secundárias, não percebidas pelo usuário.
D) um programa que coleta informações sobre o usuário do computador e envia essas informações para outra parte
E) uma forma de fraude na Internet praticada comumente por meio de mensagem eletrônica
5) [UFRR - 2019 - UFRR - Técnico de Tecnologia da Informação ] É um tipo de malware feito para extorquir dinheiro de sua vítima. Esse tipo de cyber ataque irá criptografar os arquivos do usuário e exigir um pagamento para que seja enviada a solução de descriptografia dos dados da vítima. O scareware é seu tipo mais comum e usa táticas ameaçadoras ou intimidadoras para induzir as vítimas a pagar.
O texto acima se refere ao:
A) Spyware
B) Botnet
C) Spam
D) DDoS
E) Ransomware
Gabarito
1 - A / 2 - B / 3 - A / 4 - B / 5 - E
Referências
CERT.br. Cartilha de Segurança para Internet - Fascículo Códigos Maliciosos. 2020. Disponível em: <https://cartilha.cert.br/fasciculos/codigos-maliciosos/fasciculo-codigos-maliciosos.pdf>. Acesso em: 26 jan. 2022.
IBM. Analisando arquivos para conteúdo integrado e atividade maliciosa. 2021. Disponível em: <https://www.ibm.com/docs/pt-br/qsip/7.4?topic=content-analyzing-files-embedded-malicious-activity>. Acesso em: 27 jan. 2022.
LOPES, P. Análise de Malware – Minicurso – Conceitos técnicos essenciais. Peritum Consultoria e Treinamento. 2020. Disponível em: <https://periciacomputacional.com/analise-de-malware-minicurso-conceitos-tecnicos-essenciais/>. Acesso em: 27 jan. 2022.
RENOVACI, R. Analise de Malwares — Fundamentos de Analise Estática com PeStudio. 2020. Disponível em: <https://medium.com/@rafaelrenovaci/analise-de-malwares-fundamentos-de-analise-est%C3%A1tica-com-pestudio-46451243c19e>. Acesso em: 27 jan. 2022.
ZELTZER, L. How You Can Start Learning Malware Analysis. SANS. 2021. Disponível em: <https://www.sans.org/blog/how-you-can-start-learning-malware-analysis/>. Acesso em: 26 jan. 2022.