.ELF

Archivo ELF

Executable and Linkable Format
Hacer una pregunta
RESPUESTA RÁPIDA

Un archivo ELF es el formato ejecutable binario utilizado por Linux, Android, los BSD y la mayoría de los sistemas tipo Unix - el equivalente al EXE de Windows. En Linux se ejecuta directamente; un .elf de homebrew para PS2 se ejecuta en PCSX2, y un .elf de GameCube/Wii se ejecuta en Dolphin. ELF no se ejecuta de forma nativa en Windows o macOS y, como cualquier ejecutable, puede ser malware, así que solo ejecute archivos de fuentes en las que confíe.

Desarrollador: Unix System Laboratories (AT&T); now an open System V / TIS standard Categoría: Archivos ejecutables Estándar abierto MIME: application/x-elf
SE ABRE EN Windows macOS Linux
Relacionado: .APK · .EXE · .VBS · .JAR

En esta página

19k+ extensiones indexadas
Última revisión Aug 26, 2026

¿No está seguro de qué es su archivo?

Suelte cualquier archivo en nuestro identificador - leemos solo los primeros bytes para nombrar el formato.

Identificar un archivo

¿Qué es el formato de archivo ELF?

Los archivos con la extensión .elf almacenan datos binarios estructurados según el estándar Executable and Linkable Format - el formato predeterminado de objetos y ejecutables para Linux, la mayoría de los sistemas tipo Unix y muchas plataformas embebidas. El formato fue introducido con Unix System V Release 4 por Unix System Laboratories y posteriormente ratificado como una especificación portátil de Tool Interface Standard (TIS).

Los archivos ELF pueden almacenar los siguientes tipos de contenido:

  • Archivos ejecutables para aplicaciones y herramientas, a menudo distribuidos como un archivo .bin
  • Archivos de objeto compilados, que normalmente llevan la extensión .o
  • Bibliotecas compartidas - archivos con la extensión .so
  • Core dumps (instantáneas de memoria producidas tras el fallo de un proceso)

El formato se basa en una estructura binaria bien definida. Cada archivo .elf comienza con la secuencia mágica de 4 bytes 7F 45 4C 46 (0x7F seguido de las letras ASCII ELF) en el desplazamiento 0, seguida de campos de encabezado que identifican la arquitectura de destino, el tamaño de palabra (32 bits o 64 bits) y el orden de los bytes (little-endian o big-endian). Dos tablas opcionales - la tabla de encabezado de programa y la tabla de encabezado de sección - describen luego cómo deben cargarse los segmentos en tiempo de ejecución y cómo se organizan las secciones para el enlace.

Aunque el estándar ELF se desarrolló pensando en los sistemas Unix, fue adoptado rápidamente por otras plataformas, incluyendo consolas de videojuegos como la PlayStation 2 y Wii, Android y muchos entornos embebidos. El tipo MIME estándar es application/x-elf. El contenido de un archivo .elf no es legible por humanos; herramientas como readelf y objdump (ambas parte de GNU Binutils) pueden inspeccionar sus encabezados y desensamblar su código sin ejecutarlo.

Seguridad y protección

RIESGO: HIGH

Como cualquier ejecutable, un ELF puede contener malware - las botnets de Linux/IoT (por ejemplo, las variantes de Mirai) se distribuyen como binarios ELF, y un ELF se ejecuta con sus privilegios una vez ejecutado. Solo ejecute archivos ELF de fuentes confiables; no haga «chmod +x» y ejecute descargas aleatorias. Inspeccione los ELF desconocidos de forma segura con readelf/objdump o escanéelos en VirusTotal antes de ejecutarlos. Los archivos .elf de homebrew de consola tienen un riesgo menor (se ejecutan dentro del sandbox de un emulador), pero aun así obténgalos de fuentes de homebrew de buena reputación.

Detalles del formato

en pocas palabras
NOMBRE COMPLETOExecutable and Linkable Format
DESARROLLADORUnix System Laboratories (AT&T); now an open System V / TIS standarddesde 1989 (Unix System V Release 4); adopted as the TIS/System V ABI standard
TIPO MIMEapplication/x-elf
TIPOFormato de ejecutable binario / objeto / biblioteca compartida
ESTÁNDARAbierto · libre de regalías
RELACIONADO.apk.exe.vbs.jar
MAGIC BYTES · FIRMA DE ARCHIVO
OFFSET
00010203
HEX
7F454C46
ASCII
·ELF
Cada archivo ELF comienza con el código mágico de 4 bytes 7F 45 4C 46 (0x7F + «ELF») en el desplazamiento 0. El byte 4 (EI_CLASS) es 1 para 32 bits / 2 para 64 bits; el byte 5 (EI_DATA) es 1 para little-endian / 2 para big-endian; el byte 16 (e_type) indica si es un ejecutable, un objeto reubicable, un objeto compartido (.so) o un volcado de memoria.

Programas que abren archivos ELF

Windows3 apps
PCSX2 (PlayStation 2 emulator) Código abierto Ejecutar un .elf de homebrew/SDK de PS2: File > Run ELF (o inicie el .elf directamente). Solo para binarios ELF de PS2.
Dolphin (GameCube/Wii emulator) Código abierto Abra un .elf de homebrew de GameCube/Wii en Dolphin para ejecutarlo. Solo para binarios ELF de consolas Nintendo.
Ghidra Código abierto Importe el ELF para desensamblarlo y descompilarlo a C legible - para ingeniería inversa/análisis.
macOS1 app
Ghidra Código abierto Importe el ELF para desensamblarlo y descompilarlo a C legible - para ingeniería inversa/análisis.
Linux4 apps
Linux (run it) Integrado Hágalo ejecutable y ejecútelo: «chmod +x ./programa && ./programa». Un ejecutable ELF ES el programa - no hay nada que «ver». Debe coincidir con su arquitectura de CPU.
readelf (GNU binutils) Código abierto Inspeccionar sin ejecutar: «readelf -a archivo.elf» muestra encabezados, secciones, símbolos y la arquitectura de destino.
objdump (GNU binutils) Código abierto Desensamblar: «objdump -d archivo.elf» muestra el código máquina; «objdump -x» muestra todos los encabezados.
Ghidra Código abierto Importe el ELF para desensamblarlo y descompilarlo a C legible - para ingeniería inversa/análisis.

Detalles técnicos

especificación profunda
Número mágico`7F 45 4C 46` (0x7F seguido de ASCII `ELF`) en el desplazamiento de byte 0, presente en cada archivo ELF válido
Tipo MIME`application/x-elf`
Variantes de tamaño de palabra32 bits (EI_CLASS = `01`) y 64 bits (EI_CLASS = `02`), codificados en el desplazamiento 4 del encabezado ELF
Campo de orden de bytesEI_DATA en el desplazamiento 5: `01` = little-endian, `02` = big-endian; determinado por la arquitectura del hardware de destino
Tipos de archivo (e_type)ET_EXEC (ejecutable), ET_REL (objeto reubicable), ET_DYN (objeto compartido o PIE), ET_CORE (volcado de memoria)
Arquitecturas de destinox86, x86-64, ARM, AArch64, MIPS, RISC-V, PowerPC, SPARC y muchas otras, identificadas por el campo `e_machine` en el encabezado ELF
Identificador OS/ABIEl byte EI_OSABI en el desplazamiento 7 especifica la ABI de destino: 0 = System V, 3 = Linux, 9 = FreeBSD, 12 = Solaris
Diseño de la estructuraEncabezado ELF → tabla de encabezado de programa opcional (segmentos de carga en tiempo de ejecución) → datos → tabla de encabezado de sección opcional (secciones en tiempo de enlace)
Secciones con nombre clave`.text` (código), `.data` (datos inicializados), `.bss` (datos inicializados a cero), `.rodata` (constantes), `.symtab` / `.dynsym` (símbolos), `.rel` / `.rela` (reubicaciones)
Enlace dinámicoLos objetos compartidos son resueltos en el momento de la carga por el enlazador de tiempo de ejecución (`ld.so`); la ruta del intérprete requerida se almacena en el encabezado de programa `PT_INTERP`
Información de depuraciónLos datos de depuración DWARF se incrustan en las secciones ELF `.debug_*` y se pueden eliminar de los binarios de producción con el comando `strip`
Ejecutables independientes de la posiciónLos binarios PIE son de tipo ET_DYN y admiten ASLR; el kernel de Linux aleatoriza su dirección de carga base en cada inicio
Herramientas principales de inspección`readelf -a` (encabezados, símbolos, secciones) y `objdump -d` (desensamblado), ambos proporcionados por GNU Binutils
Lanzado1989 (Unix System V Release 4); adopted as the TIS/System V ABI standard
Estándar abiertoSí · libre de regalías
Especificaciónrefspecs.linuxfoundation.org

Conversiones de ELF

Preguntas y respuestas de la comunidad

preguntado por usuarios
Hacer una pregunta rápida
Obtenga ayuda de personas que trabajan con archivos ELF. Sea específico: incluya su sistema y la versión del software.
No se necesita cuenta · respuestas generalmente en un día

Aún no hay preguntas; sea el primero en preguntar sobre los archivos ELF.

Preguntas frecuentes

¿Cómo abro un archivo ELF?
Depende de lo que sea. Un programa ELF de Linux se ejecuta, no se abre: «chmod +x ./archivo && ./archivo». Un .elf de homebrew para PlayStation 2 se ejecuta en PCSX2; un .elf de GameCube/Wii se ejecuta en Dolphin. Para mirar dentro de cualquier ELF sin ejecutarlo, use readelf, objdump o Ghidra.
¿Puedo ejecutar un archivo ELF en Windows?
No de forma nativa - ELF es el formato de Unix/Linux, Windows utiliza EXE/PE. Use WSL (Windows Subsystem for Linux) o una máquina virtual Linux para ejecutar un ELF de Linux, o un emulador (PCSX2/Dolphin) para ejecutar un .elf de homebrew de consola.
¿Es un archivo ELF lo mismo que un EXE?
Son equivalentes en diferentes sistemas: ELF es el formato ejecutable de Linux/Unix, EXE (PE) es el de Windows. No son intercambiables y no se pueden convertir entre sí.
¿Cómo ejecuto un ELF en PCSX2 o Dolphin?
En PCSX2 use «Run ELF» (o inicie el .elf) para homebrew de PS2; en Dolphin abra el .elf directamente para homebrew de GameCube/Wii. Necesita el emulador apropiado para la consola para la que se compiló el ELF.
¿Cómo puedo ver qué hay dentro de un archivo ELF?
Use «readelf -a archivo» para ver encabezados/secciones/símbolos, «objdump -d archivo» para desensamblar, o impórtelo en Ghidra para descompilarlo a C. Esto inspecciona el archivo sin ejecutarlo.
¿Es seguro ejecutar un archivo ELF?
Solo si proviene de una fuente en la que confíe - los binarios ELF pueden ser malware (las botnets de Linux/IoT son ELF). Inspeccione los desconocidos con readelf/VirusTotal primero. Los archivos .elf de homebrew de consola se ejecutan en un entorno aislado (sandbox) dentro de un emulador y tienen un riesgo menor.

Referencias

1Wikipedia - Executable and Linkable Formaten.wikipedia.org
2GNU Binutils - readelf / objdumpwww.gnu.org

Siga explorando

en toda la base de datos

Extensiones principales esta semana

1.AQQAQQ Instant Messenger File
2.BINCD/DVD Disc Image (BIN/CUE)
3.CRDOWNLOADChrome Partial Download File
4.PARTPartial Download File
5.MDMarkdown Document
6.RPMSGRestricted Permission Message
7.NOMEDIAAndroid No-Media Marker File
8.PRO6XProPresenter 6 Bundle File
9.PRDXSoftMaker Presentations Document
10.EXEWindows Executable (Portable Executable)

Extensiones relacionadas

.APKAndroid Package
.EXEWindows Executable (Portable Executable)
.VBSVBScript file (Visual Basic Script)
.JARJava Archive
.EX4MetaTrader 4 Compiled Program (Expert Advisor / Indicator / Script)
.APPXMicrosoft Windows App Package (AppX)

Herramientas de archivo gratuitas

Un identificador de archivos y convertidor de imágenes en el navegador - todo se ejecuta en su dispositivo.

Abrir la caja de herramientas

Explorar extensiones de archivo A-Z