BlackBerry lança ferramenta gratuita de engenharia reversa
Procurando ajudar a combater os ciberataques, a BlackBerry anunciou dia 03/08 o lançamento de sua ferramenta de engenharia reversa de código aberto e gratuita chamada PE Tree, que pode ajudar os especialistas a visualizar arquivos executáveis portáteis (PE).
"O cenário de ameaças à segurança cibernética continua a evoluir e os ataques cibernéticos estão ficando mais sofisticados com potencial para causar maiores danos", disse Eric Milam, vice-presidente de operações de pesquisa da BlackBerry. "À medida que os criminosos cibernéticos avançam no jogo, a comunidade de segurança cibernética precisa de novas ferramentas em seu arsenal para defender e proteger organizações e pessoas. Criamos essa solução para ajudar a comunidade de segurança cibernética nessa luta, onde agora existem mais de 1 bilhão de malware com esse número continuando a crescer mais de 100 milhões de peças por ano. "
A ferramenta interna anteriormente está disponível agora na conta do BlackBerry GitHub e é compatível com os sistemas operacionais Windows, Linux e Mac.
Visão geral
O PE Tree é desenvolvido em Python e suporta os sistemas operacionais Windows®, Linux® e Mac®. Ele pode ser instalado e executado como um aplicativo independente:
Aplicativo independente
… Ou um plug-in IDAPython:
Plug-in IDAPython
Os arquivos PE são analisados usando o módulo pefile de Ero Carrera antes de serem mapeados em uma exibição em árvore, fornecendo um resumo dos seguintes cabeçalhos:
Cabeçalho MZ
Esboço do DOS
Cabeçalhos ricos
NT / arquivo / cabeçalhos opcionais
Diretórios de dados
Seções
Importações
Exportações
Informações de depuração
Carregar configuração
TLS
Recursos
Versão informação
Certificados
Sobreposição
Visão geral do cabeçalho rico s
Dica! - Se o pefile detectar algum problema durante a análise, passe o mouse sobre o ícone de aviso para obter mais detalhes:
avisos de pefile
É possível clicar nos links destacados para realizar uma pesquisa no VirusTotal, incluindo:
Hash de arquivo
Caminho do PDB
Timestamps
Hash / nome da seção
Importar hash / nome
Nome da exportação
Hash de recurso
Série de certificado
Dica! - Os carimbos de data e hora IMAGE_DIRECTORY_ENTRY_DEBUG e IMAGE_EXPORT_DESCRIPTOR são geralmente definidos pelo compilador, mas não "timestomped" pelos autores do malware, o que pode ser útil para pesquisas dinâmicas adicionais.
Além disso, certas partes do arquivo PE podem ser salvas ou exportadas para o CyberChef para processamento adicional, como:
Esboço do DOS
Seções
Recursos
Certificados
Sobreposição
Salvar ou exportar certificado
A "visualização em arco-íris" à esquerda oferece uma visão geral de alto nível da estrutura do arquivo PE, além de transmitir o deslocamento / tamanho / proporção de cada região. Por exemplo, aqui está um PE contendo vários recursos e uma grande sobreposição anexada ao arquivo:
Mapa do arco-íris
É possível clicar em cada região para ir para a visualização em árvore ou clicar com o botão direito do mouse para salvar em arquivo ou exportar para o CyberChef.
Dica! - O mapa do arco-íris também pode ser uma ajuda visual útil ao processar um diretório de arquivos PE, pois facilita localizar composições de arquivos semelhantes e determinar possíveis relacionamentos entre amostras.
IDAPython
A integração do IDA Pro do HeyRays é via um plug-in IDAPython, e permite funcionalidades mais avançadas, como a capacidade de encontrar e despejar arquivos PE de um banco de dados IDA (IDB) e reconstruir importações:
Pesquise no banco de dados IDA por arquivos PE
Ao despejar arquivos PE na memória, o PE Tree adicionará comentários básicos sobre as estruturas de arquivos ao BID, além de renomear as compensações para as funções do IAT, facilitando a exploração e análise de PEs injetados / descompactados de um único BID.
Dica! - A árvore PE também pode ser usada para despejar arquivos PE e reconstruir importações de maneira semelhante ao OllyDumpEx / ImpRec. Por exemplo, desembalando o MPRESS:
Após executar o "Search IDB", o arquivo PE compactado com MPRESS acima foi encontrado com um IAT existente (embora não completo)
Após o dumping, o arquivo PE descompactado contém uma nova tabela de endereços de importação (e completa)
Se a opção "Reconstruir importações" for selecionada, a PE Tree procurará na desmontagem do IDA todas as referências possíveis do IAT e construirá uma nova tabela de nomes de dicas, IDT e IAT (recomendado para PEs descompactados ou carregados dinamicamente). Caso contrário, se "Usar importações existentes" for especificado, a PE Tree tentará reconstruir as importações com base no IAT especificado via DIRECTORY_ENTRY_IMPORT (este é o modo padrão e normalmente recomendado para a maioria dos PEs e DLLs do sistema).
Olhando para o futuro
O PE Tree permanece em desenvolvimento ativo, portanto, espere ver novos recursos com frequência. A próxima versão principal se concentrará no suporte rekall , oferecendo a capacidade de visualizar e despejar processos de um despejo de memória ou sistema ativo :
O futuro ... Despejando processos ativos usando o Rekall!
FONTE: BlackBerry
obs: Texto traduzido, portanto podem conter erros na linguagem PT-BR