Analisador de Cabeçalhos de Secção PE
Analise cabeçalhos de secção de ficheiros Portable Executable (PE) para inspecionar nomes de secção, tamanhos, flags de características e entropia. Sinaliza automaticamente secções suspeitas, incluindo regiões RWX, nomes não padrão e dados de entropia elevada (empacotados ou cifrados). Carregue qualquer ficheiro .exe, .dll, .sys ou .ocx para análise instantânea.
Por que usar o nosso Analisador de Cabeçalhos de Secção PE?
- Análise completa do cabeçalho PE: o analisador de secções PE interpreta cabeçalhos DOS, cabeçalhos de ficheiro COFF e todos os cabeçalhos de secção do seu executável PE. Extraia o tipo de máquina, a marca temporal, os flags de características, os tamanhos virtuais, os tamanhos de dados em bruto e os endereços virtuais de qualquer ficheiro .exe, .dll, .sys ou .ocx - tudo no seu navegador e sem enviar nada para um servidor.
- Deteção automática de sinais suspeitos: cada secção é verificada automaticamente face a problemas de segurança conhecidos: as permissões W+E (RWX) são marcadas como perigosas, os nomes de secção não padrão são realçados, as secções de código graváveis geram avisos e as secções com entropia anormalmente elevada são marcadas para investigação.
- Análise de entropia por secção: o analisador de secções PE calcula a entropia de Shannon de cada secção de forma independente. As secções de baixa entropia (.text, .rdata) indicam código normal, enquanto as secções com entropia acima de 7,0 bits/byte sugerem empacotamento, cifra ou compressão - indicadores frequentes de malware ou ofuscação.
- Análise 100% privada no navegador: toda a análise PE, o cálculo de entropia e a análise acontecem inteiramente no seu navegador com JavaScript. Os seus ficheiros binários nunca saem do seu dispositivo. Sem conta, sem rastreamento e sem armazenamento de dados. Exporte o relatório de análise completo como JSON para os seus registos.
Casos de uso comuns do Analisador de Secções PE
- Deteção de malware e packers: os analistas de segurança usam a análise de secções PE para identificar malware empacotado ou ofuscado. Os executáveis empacotados mostram frequentemente nomes de secção não padrão (UPX0, UPX1, .aspack), flags de permissões W+X e entropia uniformemente alta em todas as secções. O analisador de secções PE torna estes padrões imediatamente visíveis.
- Desenvolvimento de exploits e engenharia reversa: os engenheiros reversos analisam as características das secções PE para compreender a disposição da memória, encontrar code caves para injetar shellcode, identificar secções de código graváveis para exploração e mapear a estrutura do executável antes de uma análise mais profunda com depuradores e desmontadores.
- Validação e integridade de ficheiros binários: verifique se um ficheiro PE tem cabeçalhos de secção bem formados com as características esperadas. Detete cabeçalhos corrompidos ou adulterados, secções em falta, alinhamentos invulgares ou tamanhos virtuais e em bruto que não coincidem, o que pode indicar corrupção do ficheiro ou manipulação intencional.
- Formação em análise de malware: os estudantes que aprendem análise de malware e engenharia reversa de binários usam a análise de secções PE para compreender a estrutura dos executáveis. As visualizações interativas mostram ficheiros PE reais com mapas de calor de entropia e descodificação de características.
- Verificação de proteção de software e anti-adulteração: os programadores e engenheiros de segurança verificam que os seus mecanismos de proteção estão aplicados corretamente. Confirme que packers, protetores e ofuscadores produzem as características de secção esperadas com os perfis de entropia adequados.
- Forense digital e resposta a incidentes: os investigadores forenses analisam ficheiros PE durante a resposta a incidentes para triar rapidamente executáveis suspeitos. A análise de secções fornece indicadores rápidos de empacotamento, injeção ou modificação sem exigir engenharia reversa completa.
O que é um cabeçalho de secção PE?
O formato Portable Executable (PE) é o formato de ficheiro executável padrão usado pelo Windows para .exe, .dll, .sys e outros ficheiros executáveis. Um ficheiro PE está dividido em secções, cada uma com um cabeçalho de secção de 40 bytes que descreve o nome da secção, o tamanho virtual, o tamanho dos dados em bruto, o endereço de memória e os flags de características. Estes flags definem as permissões de memória (leitura, escrita, execução), o tipo de conteúdo (código, dados inicializados, dados não inicializados) e atributos especiais (descartável, partilhado). O analisador de secções PE descodifica cada campo destes cabeçalhos e calcula a entropia por secção para análise de segurança.
Como funciona o nosso Analisador de Secções PE
- Carregue o seu ficheiro PE - selecione qualquer ficheiro .exe, .dll, .sys, .ocx ou .scr. O parser lê o ficheiro como bytes diretamente no seu navegador com a API FileReader, sem enviar dados para nenhum servidor.
- Analise os cabeçalhos PE: o analisador localiza o cabeçalho DOS (magia MZ), lê e_lfanew para encontrar a assinatura PE, analisa o cabeçalho de ficheiro COFF (máquina, secções, marca temporal, características) e depois percorre cada cabeçalho de secção em intervalos de 40 bytes. O nome de cada secção, os tamanhos, os endereços, os ponteiros de relocalização e os flags de características são descodificados.
- Cálculo de entropia e sinalização: para cada secção com dados em bruto, o analisador calcula a entropia de Shannon contando a frequência de bytes e avaliando -Σp(i)log₂(p(i)). As secções são verificadas por um motor de regras: combinações de permissões W+E, nomes de secção não padrão, entropia anormalmente alta e padrões de código gravável despoletam sinais de suspeita.
Flags de características principais explicados
- IMAGE_SCN_MEM_EXECUTE (0x10000000): a secção contém código executável. Normal nas secções .text. Quando combinado com WRITE, cria uma secção RWX altamente suspeita e comum em malware empacotado.
- IMAGE_SCN_MEM_WRITE (0x40000000): a secção pode ser escrita em tempo de execução. Esperado nas secções .data e .bss. Suspeito quando combinado com EXECUTE ou quando aparece em secções com nome de código.
- IMAGE_SCN_CNT_CODE (0x00000020): a secção contém instruções executáveis. Padrão nas secções .text. Se uma secção tiver CODE sem EXECUTE, ou EXECUTE sem CODE, pode indicar uma configuração de secção invulgar.
- IMAGE_SCN_MEM_DISCARDABLE (0x02000000): a secção pode ser descartada após o carregamento. Comum nas secções .reloc e .debug. Normalmente não surge em secções de código ou dados. Indica que a secção só é necessária durante o carregamento inicial.
Privacidade, segurança e notas de utilização
O analisador de secções PE processa todos os ficheiros inteiramente no seu navegador com JavaScript. Nenhum dado é alguma vez carregado para qualquer servidor, guardado em qualquer base de dados ou partilhado com terceiros. Não há limite de tamanho de ficheiro - a única restrição é a memória disponível do seu navegador. Para executáveis muito grandes (mais de 100 MB), a análise pode demorar um pouco, mas concluirá sem qualquer comunicação com servidores. Exporte o relatório de análise completo como JSON para integrar com outras ferramentas ou guardar nos seus registos. O analisador suporta os formatos PE32 (32 bits) e PE32+ (64 bits), incluindo ficheiros produzidos por todos os principais compiladores (MSVC, GCC/MinGW, Clang, NASM, Go, Rust).
Perguntas frequentes
Uma secção PE (Portable Executable) é um bloco contíguo de memória dentro de um ficheiro executável Windows (.exe, .dll, .sys) que contém um tipo específico de dados, como código, dados inicializados, recursos ou tabelas de importação. Cada secção tem um cabeçalho de 40 bytes que define o seu nome, tamanho virtual, tamanho de dados em bruto, endereço e flags de permissões. Analisar estes cabeçalhos revela informação crítica sobre a estrutura do executável e potenciais problemas de segurança.
Várias características tornam uma secção suspeita: (1) permissões W+E (RWX) que combinam escrita e execução - um sinal de alarme comum em malware empacotado; (2) nomes de secção não padrão como .aspack ou .UPX0, indicando packers de terceiros; (3) entropia anormalmente elevada (acima de 7,0 bits/byte), sugerindo payloads cifrados ou comprimidos; (4) secções de código graváveis, onde as permissões de execução se combinam com as de escrita.
A entropia mede a aleatoriedade dos dados, num intervalo de 0 a 8 bits/byte. As secções de código normais (.text) têm normalmente entropia entre 4,5 e 6,5. As secções com entropia acima de 7,0 sugerem fortemente empacotamento, cifra ou compressão. Os executáveis empacotados mostram frequentemente entropia uniformemente alta em todas as secções.
O analisador processa qualquer ficheiro com um cabeçalho PE válido: .exe (executáveis), .dll (bibliotecas), .sys (controladores), .ocx (controlos ActiveX), .scr (proteções de ecrã) e .cpl (itens do painel de controlo). São suportados os formatos PE32 (32 bits) e PE32+ (64 bits), incluindo ficheiros produzidos pelos compiladores MSVC, GCC, Clang, Go, Rust e Delphi.
Uma secção RWX combina as permissões de leitura, escrita e execução. Isto permite que o código escreva novas instruções em memória e as execute - um padrão clássico para injeção de shellcode e desempacotamento em tempo de execução. As funcionalidades de segurança modernas do Windows (DEP, ACG) impedem especificamente a criação de memória RWX em tempo de execução.
Sim, o analisador sinaliza automaticamente padrões consistentes com packers conhecidos: UPX (secções UPX0, UPX1), ASPack (.aspack com W+E), MPRESS (secções .MPRSS), Themida (.themida, entropia muito elevada), VMProtect (.vmp0, .vmp1) e Enigma (nomes aleatorizados). As combinações RWX e os nomes não padrão são marcas de packers personalizados.
As características de secção são um campo de bits de 32 bits. Os flags principais incluem: Execute (0x10000000), Read (0x20000000), Write (0x40000000), Code (0x00000020), Initialized Data (0x00000040) e Uninitialized Data (0x00000080). Uma secção .text normal tem 0x60000020 (CODE + EXECUTE + READ), enquanto uma secção RWX suspeita tem 0xE0000020 (CODE + EXECUTE + READ + WRITE).
Sim, totalmente. O analisador de secções PE processa todos os ficheiros inteiramente no seu navegador com JavaScript. Os seus ficheiros executáveis nunca saem do seu dispositivo e nunca são enviados para nenhum servidor. Não é necessária conta, não se guardam dados e não há rastreamento.
As secções PE padrão incluem: .text (código executável), .data (dados inicializados), .rdata (dados só de leitura, tabelas de importação/exportação), .bss (dados não inicializados), .rsrc (recursos), .reloc (relocalizações de base), .tls (armazenamento local de threads), .pdata (tratamento de exceções), .idata (tabelas de importação), .edata (tabelas de exportação) e .debug (informação de depuração).