Análisis Forense de Ejecutables - Analizador Gratuito de PE/ELF/Mach-O
Análisis Forense de Ejecutables
Carga un ejecutable PE de Windows (.exe/.dll), ELF de Linux o Mach-O de macOS para inspeccionar sus cabeceras, secciones, importaciones y exportaciones, recursos incrustados y cobertura de la firma de código - sin subir nada.
Suelta un binario PE, ELF o Mach-O aquí
.exe .dll .sys .so .o .dylib o cualquier binario ELF/Mach-O - o haz clic para elegirlo desde tu dispositivo
Elegir archivoResumen
Qué es este binario, su plataforma y arquitectura de destino, y qué destaca sobre cómo se compiló.
Cabeceras
Las cabeceras de archivo, opcional/de programa y de comandos de carga que describen cómo el cargador debe mapear y ejecutar este binario, además de marcadores de procedencia como la cabecera Rich de PE, la cadena de comentario del compilador y la detección .NET/CLI.
Secciones
Cada sección o segmento, sus permisos y su entropía de bytes - una sección que es a la vez escribible y ejecutable, o con entropía inusualmente alta, merece una mirada más detenida.
Importaciones
Cada biblioteca y símbolo externo que este binario declara necesitar en tiempo de carga - DLLs y funciones para PE, objetos compartidos necesarios y símbolos dinámicos para ELF, dylibs cargadas para Mach-O.
Exportaciones
Símbolos que este binario pone a disposición de quien lo cargue - nombres, ordinales y reenvíos que redirigen a otro módulo por completo.
Recursos
Información de versión de PE y manifiesto incrustado, decodificados a partir del árbol de directorio de recursos - incluyendo si el nombre de archivo original registrado coincide con el real.
Firma de Código
Si el binario lleva una firma incrustada y a quién nombra como firmante - solo presencia y cobertura. Esta herramienta nunca valida una cadena de certificados ni confirma que una firma realmente se verifique.
Cadenas
Texto legible ASCII y UTF-16 extraído de cualquier parte del archivo, útil para detectar rutas de archivo, URLs y fragmentos de línea de comandos que una vista de solo cabeceras pasaría por alto.
--
Comprendiendo el Análisis Forense de Ejecutables
Tres Formatos, Una Sola Idea
PE de Windows, ELF de Linux y Mach-O de macOS resuelven el mismo problema - describir el código, los datos y las dependencias de un programa para que un cargador del sistema operativo pueda mapearlo en memoria y ejecutarlo - con diseños de cabecera diferentes. PE antepone un stub de DOS antes de su cabecera real por compatibilidad, ELF usa una cabecera compacta de tamaño fijo que nombra cada sección, y Mach-O organiza todo como una secuencia de comandos de carga tipados. Leer las cabeceras directamente, en lugar de confiar en la extensión del archivo, es el primer paso de cualquier análisis real, tal como lo es para cualquier otro formato de archivo.
Por Qué la Entropía por Sección También Importa Aquí
Una sección de código normal se lee con entropía baja a moderada - las instrucciones y las tablas de cadenas están estructuradas, no son aleatorias. Una sección que se lee cerca de 8 bits de entropía por byte en toda su longitud suele estar comprimida o cifrada, que es exactamente lo que hace un "packer" para ocultar el código real de un binario del análisis estático hasta que se descomprime a sí mismo en memoria en tiempo de ejecución. Comparar la entropía sección por sección, en lugar del archivo completo, es lo que hace útil esta señal aquí.
Qué Prueba Realmente una Firma de Código
Una firma de código Authenticode, ELF o Mach-O vincula un binario a quien lo firmó y permite detectar un cambio en el archivo después del hecho - pero una firma solo prueba que el archivo coincide con lo que se firmó, no que el firmante sea confiable ni que la cadena de certificados sea válida actualmente. Esta herramienta informa si hay una firma presente y a quién nombra, nunca si se verifica - una verificación real necesita recorrer una cadena de certificados activa contra un almacén de confianza, algo que ocurre fuera del entorno aislado del navegador en el que se ejecuta esta herramienta.
Por Qué Vale la Pena Leer la Marca de Tiempo de Compilación
La cabecera de un archivo PE registra el momento exacto en que el enlazador lo produjo, y aunque este valor puede falsificarse o ponerse a cero mediante una compilación deliberadamente evasiva, la mayoría de los binarios comunes lo llevan sin modificar. Una marca de tiempo muy en el futuro, situada en el epoch de Unix, o marcadamente inconsistente con otros metadatos del archivo es una señal pequeña pero genuina de que algo en el proceso de compilación no era lo que parece.