Aula 2   Antianálise

Aula 2 Antianálise

Introdução

Visão geral da seção: Nesta seção, o professor Jorge Alves introduz o assunto anti-análise e explica como as técnicas antimal dificultam a análise de malwares.

Técnicas Antimal

Compactação de Executável ou Empacotamento

  • Consiste na criação de um arquivo executável e alto extraível.
  • O arquivo executável é comprimido a partir de um algoritmo de compactação.
  • O arquivo compactado é combinado com o código de compressão para que seja possível descompactar o executável original durante a execução do arquivo empacotado.
  • Essa técnica foi criada para diminuir o espaço ocupado pelo arquivo executável e reduzir o tempo e largura de banda necessários para enviar o arquivo pela rede.
  • Os atacantes começaram a usar essa técnica para dificultar a análise estática, modificando os valores do código original e as assinaturas do executável.

Ofuscação

  • É uma técnica usada para tornar o código-fonte mais difícil de entender.
  • Pode ser feita por meio da renomeação das variáveis, funções e classes, bem como pela inserção de instruções desnecessárias no código.
  • Dificulta a análise dinâmica porque torna mais difícil acompanhar as informações em tempo real.

Anti-debugging

  • São técnicas usadas pelos desenvolvedores para impedir que os depuradores analisem seus programas enquanto estão sendo executados.
  • Algumas dessas técnicas incluem detecção da presença do depurador, interrupções aleatórias e instruções de salto condicional.

Anti-vm/sandbox

  • São técnicas usadas para detectar se o programa está sendo executado em um ambiente virtualizado ou sandbox.
  • Algumas dessas técnicas incluem a verificação do hardware, a detecção de drivers específicos e a análise do comportamento do sistema operacional.

Conclusão

As técnicas antimal são usadas pelos desenvolvedores de malware para dificultar a análise dos programas maliciosos. Essas técnicas incluem compactação de executável, ofuscação, anti-debugging e anti-vm/sandbox. É importante que os analistas de segurança estejam cientes dessas técnicas para poderem identificar e analisar adequadamente os malwares.

Ferramentas de análise de malware

Visão geral da seção: Nesta seção, o palestrante discute ferramentas específicas para extração de arquivos originais e identificação de compactadores. Ele também fala sobre técnicas utilizadas para dificultar a engenharia reversa.

Identificação de compactadores

  • É possível utilizar ferramentas específicas para extrair arquivos originais sem precisar executá-los.
  • A análise estática é possibilitada quando o compactador é identificado.
  • A compressão é um dificultador na análise.

Identificação do compilador

  • A ferramenta Portable Executable (PEiD) pode ser usada para descobrir qual foi o compilador usado na criação do executável.

Técnica de ofuscação

  • A técnica de ofuscação foi criada originalmente para evitar que programas comerciais fossem crackeados.
  • Hoje em dia, essa técnica também é utilizada para dificultar a análise de malware.

Métodos anti-análise

Eliminação de informação simbólica

  • A eliminação das strings exibidas durante a execução do software é um dos métodos anti-craquem.
  • Também é possível eliminar informações simbólicas dentro dos arquivos pontos já gerados da codificação Java.

Criação de função

  • É possível criar uma função que codifica e decodifica as strings em tempo de execução.

Criptografia e Procedimentos Forenses

Visão Geral da Seção: Nesta seção, o palestrante discute a criptografia de software e o procedimento operacional padrão para análise forense de um antivírus.

Criptografia de Software

  • A criptografia é usada para impedir a compreensão do fluxo lógico de execução do software.
  • O método Anti-the-bug é usado para detectar a presença de bugs em um software malicioso.
  • As somas de verificação são criadas dentro do código malicioso para detectar a presença do bug.
  • O antibi bug funciona inserindo um breakpoint ou cheque no código binário para fazer depuração.

Procedimento Operacional Padrão

  • Não se pode executar o software antivírus diretamente no disco rígido que está sendo analisado, pois isso pode modificar o disco e perder sua integridade jurídica.
  • Para fins forenses, deve-se criar uma imagem física do disco e montá-la em modo leitura.
  • A detecção de máquinas virtuais é usada como técnica de ambiente controlado para análise de malware.

Ambiente virtualizado e endereço MAC

Visão geral da seção: Nesta seção, o instrutor explica como os malwares podem modificar seu comportamento normal em um ambiente virtualizado. Ele também discute como o malware verifica o endereço físico da interface de rede (endereço MAC) para identificar se está sendo analisado.

Ambiente virtualizado

  • Malwares podem modificar seu comportamento normal em um ambiente virtualizado criado para análise.
  • Isso torna difícil obter uma análise fidedigna do malware.
  • Quando você virtualiza qualquer sistema operacional, o endereço MAC é alterado pelo virtualizador para evitar conflitos com a placa de rede física real.

Endereço MAC

  • O endereço MAC é composto por 6 bytes, sendo que os três primeiros identificam o fabricante da interface de rede.
  • O malware conhece fabricantes conhecidos de interfaces físicas de rede.
  • Para verificar se está sendo analisado, o malware verifica os primeiros bytes do endereço MAC da interface de rede.

Funcionamento do malware

  • Quando o malware percebe que está sendo analisado, ele começa a funcionar de forma diferente do que foi projetado para funcionar.
  • O código do malware tem uma forma própria de entender que está sendo analisado.

Transforme qualquer vídeo em um resumo como este

Vídeos do YouTube, reuniões, aulas — com transcrição, busca e chat.