.ELF

Fichier ELF

Executable and Linkable Format
Poser une question
RÉPONSE RAPIDE

Un fichier ELF est le format exécutable binaire utilisé par Linux, Android, les BSD et la plupart des systèmes de type Unix - l'équivalent du EXE sous Windows. Sur Linux, vous l'exécutez directement ; un .elf homebrew PS2 s'exécute dans PCSX2, un .elf GameCube/Wii s'exécute dans Dolphin. ELF ne s'exécute pas nativement sur Windows ou macOS, et comme tout exécutable, il peut s'agir d'un logiciel malveillant, n'exécutez donc que des fichiers provenant de sources fiables.

Développeur : Unix System Laboratories (AT&T); now an open System V / TIS standard Catégorie : Fichiers exécutables Standard ouvert MIME: application/x-elf
S'OUVRE SUR Windows macOS Linux
Lié : .APK · .EXE · .VBS · .JAR

Sur cette page

19k+ extensions indexées
Dernière révision le Aug 26, 2026

Pas sûr de la nature de votre fichier ?

Déposez n'importe quel fichier dans notre identificateur - nous lisons juste les premiers octets pour nommer le format.

Identifier un fichier

Qu'est-ce que le format de fichier ELF ?

Les fichiers avec l'extension .elf stockent des données binaires structurées selon la norme Executable and Linkable Format - le format par défaut des exécutables et des fichiers objets pour Linux, la plupart des systèmes Unix et de nombreuses plateformes embarquées. Le format a été introduit avec Unix System V Release 4 par Unix System Laboratories et ratifié plus tard comme une spécification portable Tool Interface Standard (TIS).

Les fichiers ELF peuvent stocker les types de contenu suivants :

  • Fichiers exécutables pour applications et outils, souvent distribués sous forme de fichier .bin
  • Fichiers objets compilés, portant généralement l'extension .o
  • Bibliothèques partagées - fichiers avec l'extension .so
  • Core dumps (instantanés de la mémoire produits après le plantage d'un processus)

Le format est construit autour d'une structure binaire bien définie. Chaque fichier .elf commence par la séquence magique de 4 octets 7F 45 4C 46 (0x7F suivi des lettres ASCII ELF) à l'offset 0, suivie de champs d'en-tête qui identifient l'architecture cible, la taille des mots (32 bits ou 64 bits) et l'ordre des octets (petit-boutiste ou gros-boutiste). Deux tables optionnelles - la table des en-têtes de programme et la table des en-têtes de section - décrivent ensuite comment les segments doivent être chargés au moment de l'exécution et comment les sections sont organisées pour l'édition de liens.

Bien que la norme ELF ait été développée pour les systèmes Unix, elle a été rapidement adoptée par d'autres plateformes, y compris des consoles de jeux telles que la PlayStation 2 et la Wii, Android et de nombreux environnements embarqués. Le type MIME standard est application/x-elf. Le contenu d'un fichier .elf n'est pas lisible par l'homme ; des outils tels que readelf et objdump (faisant tous deux partie de GNU Binutils) peuvent inspecter ses en-têtes et désassembler son code sans l'exécuter.

Sécurité et sûreté

RISQUE : HIGH

Comme tout exécutable, un ELF peut contenir des logiciels malveillants - les botnets Linux/IoT (par exemple les variantes de Mirai) sont distribués sous forme de binaires ELF, et un ELF s'exécute avec vos privilèges une fois lancé. N'exécutez que des fichiers ELF provenant de sources sûres ; ne faites pas de « chmod +x » pour exécuter des téléchargements aléatoires. Inspectez les ELF inconnus en toute sécurité avec readelf/objdump ou analysez-les sur VirusTotal avant de les lancer. Les fichiers .elf homebrew de console présentent moins de risques (ils s'exécutent dans le bac à sable d'un émulateur) mais procurez-vous-les tout de même auprès de sources homebrew réputées.

Détails du format

en bref
NOM COMPLETExecutable and Linkable Format
DÉVELOPPEURUnix System Laboratories (AT&T); now an open System V / TIS standarddepuis 1989 (Unix System V Release 4); adopted as the TIS/System V ABI standard
TYPE MIMEapplication/x-elf
TYPEFormat de binaire exécutable / objet / bibliothèque partagée
STANDARDOuvert · libre de droits
OCTETS MAGIQUES · SIGNATURE DE FICHIER
OFFSET
00010203
HEX
7F454C46
ASCII
·ELF
Chaque fichier ELF commence par la signature magique de 4 octets 7F 45 4C 46 (0x7F + « ELF ») à l'offset 0. L'octet 4 (EI_CLASS) vaut 1 pour 32 bits / 2 pour 64 bits ; l'octet 5 (EI_DATA) vaut 1 pour le petit-boutiste / 2 pour le gros-boutiste ; l'octet 16 (e_type) indique s'il s'agit d'un exécutable, d'un objet relogeable, d'un objet partagé (.so) ou d'un core dump.

Programmes qui ouvrent les fichiers ELF

Windows3 apps
PCSX2 (PlayStation 2 emulator) Open-source Exécuter un .elf homebrew/SDK PS2 : Fichier > Run ELF (ou lancez le .elf directement). Pour les binaires ELF PS2 uniquement.
Dolphin (GameCube/Wii emulator) Open-source Ouvrez un .elf homebrew GameCube/Wii dans Dolphin pour l'exécuter. Pour les binaires ELF de consoles Nintendo uniquement.
Ghidra Open-source Importez l'ELF pour le désassembler et le décompiler en C lisible - pour l'ingénierie inverse ou l'analyse.
macOS1 app
Ghidra Open-source Importez l'ELF pour le désassembler et le décompiler en C lisible - pour l'ingénierie inverse ou l'analyse.
Linux4 apps
Linux (run it) Intégré Rendez-le exécutable et lancez-le : « chmod +x ./programme && ./programme ». Un exécutable ELF EST le programme - il n'y a rien à « visualiser ». Il doit correspondre à l'architecture de votre processeur.
readelf (GNU binutils) Open-source Inspecter sans exécuter : « readelf -a fichier.elf » affiche les en-têtes, les sections, les symboles et l'architecture cible.
objdump (GNU binutils) Open-source Désassembler : « objdump -d fichier.elf » affiche le code machine ; « objdump -x » affiche tous les en-têtes.
Ghidra Open-source Importez l'ELF pour le désassembler et le décompiler en C lisible - pour l'ingénierie inverse ou l'analyse.

Détails techniques

spécifications approfondies
Nombre magique`7F 45 4C 46` (0x7F suivi de l'ASCII `ELF`) à l'offset d'octet 0, présent dans chaque fichier ELF valide
Type MIME`application/x-elf`
Variantes de taille de mot32 bits (EI_CLASS = `01`) et 64 bits (EI_CLASS = `02`), encodés à l'offset 4 dans l'en-tête ELF
Champ d'ordre des octetsEI_DATA à l'offset 5 : `01` = petit-boutiste, `02` = gros-boutiste ; déterminé par l'architecture matérielle cible
Types de fichiers (e_type)ET_EXEC (exécutable), ET_REL (objet relogeable), ET_DYN (objet partagé ou PIE), ET_CORE (core dump)
Architectures ciblesx86, x86-64, ARM, AArch64, MIPS, RISC-V, PowerPC, SPARC et bien d'autres, identifiées par le champ `e_machine` dans l'en-tête ELF
Identifiant OS/ABIL'octet EI_OSABI à l'offset 7 spécifie l'ABI cible : 0 = System V, 3 = Linux, 9 = FreeBSD, 12 = Solaris
Disposition de la structureEn-tête ELF → table des en-têtes de programme optionnelle (segments de chargement à l'exécution) → données → table des en-têtes de section optionnelle (sections au moment du lien)
Sections nommées clés`.text` (code), `.data` (données initialisées), `.bss` (données initialisées à zéro), `.rodata` (constantes), `.symtab` / `.dynsym` (symboles), `.rel` / `.rela` (relogements)
Liaison dynamiqueLes objets partagés sont résolus au moment du chargement par le lieur d'exécution (`ld.so`) ; le chemin de l'interprète requis est stocké dans l'en-tête de programme `PT_INTERP`
Informations de débogageLes données de débogage DWARF sont intégrées dans les sections ELF `.debug_*` et peuvent être supprimées des binaires de production avec la commande `strip`
Exécutables indépendants de la positionLes binaires PIE sont de type ET_DYN et supportent l'ASLR ; le noyau Linux randomise leur adresse de chargement de base à chaque lancement
Outils d'inspection principaux`readelf -a` (en-têtes, symboles, sections) et `objdump -d` (désassemblage), tous deux fournis par GNU Binutils
Publié1989 (Unix System V Release 4); adopted as the TIS/System V ABI standard
Standard ouvertOui · libre de droits
Spécificationrefspecs.linuxfoundation.org

Conversions ELF

Q&R de la communauté

posées par les utilisateurs
Poser une question rapide
Obtenez de l'aide de personnes qui travaillent avec des fichiers ELF. Soyez précis - incluez votre système et la version du logiciel.
Aucun compte requis · réponses généralement sous un jour

Pas encore de questions - soyez le premier à poser une question sur les fichiers ELF.

Foire aux questions

Comment ouvrir un fichier ELF ?
Cela dépend de ce que c'est. Un programme ELF Linux s'exécute, il ne s'ouvre pas : « chmod +x ./fichier && ./fichier ». Un .elf homebrew PlayStation 2 s'exécute dans PCSX2 ; un .elf GameCube/Wii s'exécute dans Dolphin. Pour regarder à l'intérieur d'un ELF sans l'exécuter, utilisez readelf, objdump ou Ghidra.
Puis-je exécuter un fichier ELF sur Windows ?
Pas nativement - ELF est le format Unix/Linux, Windows utilise EXE/PE. Utilisez WSL (Windows Subsystem for Linux) ou une machine virtuelle Linux pour exécuter un ELF Linux, ou un émulateur (PCSX2/Dolphin) pour exécuter un .elf homebrew de console.
Un fichier ELF est-il identique à un EXE ?
Ce sont des équivalents sur des systèmes différents : ELF est le format exécutable Linux/Unix, EXE (PE) est celui de Windows. Ils ne sont pas interchangeables et ne peuvent pas être convertis l'un vers l'autre.
Comment exécuter un ELF dans PCSX2 ou Dolphin ?
Dans PCSX2, utilisez « Run ELF » (ou lancez le .elf) pour le homebrew PS2 ; dans Dolphin, ouvrez directement le .elf pour le homebrew GameCube/Wii. Vous avez besoin de l'émulateur approprié pour la console pour laquelle l'ELF a été conçu.
Comment puis-je voir ce qu'il y a à l'intérieur d'un fichier ELF ?
Utilisez « readelf -a fichier » pour les en-têtes/sections/symboles, « objdump -d fichier » pour désassembler, ou importez-le dans Ghidra pour le décompiler en C. Cela permet d'inspecter le fichier sans l'exécuter.
Est-il sûr d'exécuter un fichier ELF ?
Seulement s'il provient d'une source fiable - les binaires ELF peuvent être des logiciels malveillants (les botnets Linux/IoT sont des ELF). Inspectez les fichiers inconnus avec readelf/VirusTotal d'abord. Les fichiers .elf homebrew de console s'exécutent dans le bac à sable d'un émulateur et présentent moins de risques.

Références

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

Continuer l'exploration

à travers la base de données

Top des extensions cette semaine

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)

Extensions liées

.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)

Outils de fichiers gratuits

Un identificateur de fichier et un convertisseur d'images dans le navigateur - tout s'exécute sur votre appareil.

Ouvrir la boîte à outils

Parcourir les extensions de fichiers A-Z