My own elf programs.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

161 lines
8.8 KiB

En-tête ELF:
Magique: 7f 45 4c 46 01 01 01 00 00 00 00 00 00 00 00 00
Classe: ELF32
Données: complément à 2, système à octets de poids faible d'abord (little endian)
Version: 1 (actuelle)
OS/ABI: UNIX - System V
Version ABI: 0
Type: EXEC (fichier exécutable)
Machine: Intel 80386
Version: 0x1
Adresse du point d'entrée: 0x8049070
Début des en-têtes de programme : 52 (octets dans le fichier)
Début des en-têtes de section : 12568 (octets dans le fichier)
Fanions: 0x0
Taille de cet en-tête: 52 (octets)
Taille de l'en-tête du programme: 32 (octets)
Nombre d'en-tête du programme: 12
Taille des en-têtes de section: 40 (octets)
Nombre d'en-têtes de section: 28
Table d'index des chaînes d'en-tête de section: 27
En-têtes de section :
[Nr] Nom Type Adr Décala.Taille ES Fan LN Inf Al
[ 0] NULL 00000000 000000 000000 00 0 0 0
[ 1] .interp PROGBITS 080481b4 0001b4 000013 00 A 0 0 1
[ 2] .note.gnu.bu[...] NOTE 080481c8 0001c8 000024 00 A 0 0 4
[ 3] .note.gnu.pr[...] NOTE 080481ec 0001ec 00001c 00 A 0 0 4
[ 4] .note.ABI-tag NOTE 08048208 000208 000020 00 A 0 0 4
[ 5] .gnu.hash GNU_HASH 08048228 000228 000020 04 A 6 0 4
[ 6] .dynsym DYNSYM 08048248 000248 000040 10 A 7 1 4
[ 7] .dynstr STRTAB 08048288 000288 000045 00 A 0 0 1
[ 8] .gnu.version VERSYM 080482ce 0002ce 000008 02 A 6 0 2
[ 9] .gnu.version_r VERNEED 080482d8 0002d8 000020 00 A 7 1 4
[10] .rel.dyn REL 080482f8 0002f8 000008 08 A 6 0 4
[11] .rel.plt REL 08048300 000300 000008 08 AI 6 24 4
[12] .init PROGBITS 08049000 001000 000024 00 AX 0 0 4
[13] .plt PROGBITS 08049030 001030 000020 04 AX 0 0 16
[14] .plt.sec PROGBITS 08049050 001050 000010 10 AX 0 0 16
[15] .text PROGBITS 08049060 001060 0001a9 00 AX 0 0 16
[16] .fini PROGBITS 0804920c 00120c 000018 00 AX 0 0 4
[17] .rodata PROGBITS 0804a000 002000 00000c 00 A 0 0 4
[18] .eh_frame_hdr PROGBITS 0804a00c 00200c 00004c 00 A 0 0 4
[19] .eh_frame PROGBITS 0804a058 002058 000104 00 A 0 0 4
[20] .init_array INIT_ARRAY 0804bf0c 002f0c 000004 04 WA 0 0 4
[21] .fini_array FINI_ARRAY 0804bf10 002f10 000004 04 WA 0 0 4
[22] .dynamic DYNAMIC 0804bf14 002f14 0000e8 08 WA 7 0 4
[23] .got PROGBITS 0804bffc 002ffc 000004 04 WA 0 0 4
[24] .got.plt PROGBITS 0804c000 003000 000010 04 WA 0 0 4
[25] .data PROGBITS 0804c010 003010 000004 00 WA 0 0 1
[26] .bss NOBITS 0804c014 003014 000004 00 WA 0 0 1
[27] .shstrtab STRTAB 00000000 003014 000104 00 0 0 1
Clé des fanions :
W (écriture), A (allocation), X (exécution), M (fusion), S (chaînes), I (info),
L (ordre des liens), O (traitement supplémentaire par l'OS requis), G (groupe),
T (TLS), C (compressé), x (inconnu), o (spécifique à l'OS), E (exclu),
D (mbind), p (processor specific)
Il n'y a pas de groupe de section dans ce fichier.
En-têtes de programme :
Type Décalage Adr. vir. Adr.phys. T.Fich. T.Mém. Fan Alignement
PHDR 0x000034 0x08048034 0x08048034 0x00180 0x00180 R 0x4
INTERP 0x0001b4 0x080481b4 0x080481b4 0x00013 0x00013 R 0x1
[Réquisition de l'interpréteur de programme: /lib/ld-linux.so.2]
LOAD 0x000000 0x08048000 0x08048000 0x00308 0x00308 R 0x1000
LOAD 0x001000 0x08049000 0x08049000 0x00224 0x00224 R E 0x1000
LOAD 0x002000 0x0804a000 0x0804a000 0x0015c 0x0015c R 0x1000
LOAD 0x002f0c 0x0804bf0c 0x0804bf0c 0x00108 0x0010c RW 0x1000
DYNAMIC 0x002f14 0x0804bf14 0x0804bf14 0x000e8 0x000e8 RW 0x4
NOTE 0x0001c8 0x080481c8 0x080481c8 0x00060 0x00060 R 0x4
GNU_PROPERTY 0x0001ec 0x080481ec 0x080481ec 0x0001c 0x0001c R 0x4
GNU_EH_FRAME 0x00200c 0x0804a00c 0x0804a00c 0x0004c 0x0004c R 0x4
GNU_STACK 0x000000 0x00000000 0x00000000 0x00000 0x00000 RW 0x10
GNU_RELRO 0x002f0c 0x0804bf0c 0x0804bf0c 0x000f4 0x000f4 R 0x1
Correspondance section/segment :
Sections de segment...
00
01 .interp
02 .interp .note.gnu.build-id .note.gnu.property .note.ABI-tag .gnu.hash .dynsym .dynstr .gnu.version .gnu.version_r .rel.dyn .rel.plt
03 .init .plt .plt.sec .text .fini
04 .rodata .eh_frame_hdr .eh_frame
05 .init_array .fini_array .dynamic .got .got.plt .data .bss
06 .dynamic
07 .note.gnu.build-id .note.gnu.property .note.ABI-tag
08 .note.gnu.property
09 .eh_frame_hdr
10
11 .init_array .fini_array .dynamic .got
Dynamic section at offset 0x2f14 contains 24 entries:
Étiquettes Type Nom/Valeur
0x00000001 (NEEDED) Bibliothèque partagée : [libc.so.6]
0x0000000c (INIT) 0x8049000
0x0000000d (FINI) 0x804920c
0x00000019 (INIT_ARRAY) 0x804bf0c
0x0000001b (INIT_ARRAYSZ) 4 (octets)
0x0000001a (FINI_ARRAY) 0x804bf10
0x0000001c (FINI_ARRAYSZ) 4 (octets)
0x6ffffef5 (GNU_HASH) 0x8048228
0x00000005 (STRTAB) 0x8048288
0x00000006 (SYMTAB) 0x8048248
0x0000000a (STRSZ) 69 (octets)
0x0000000b (SYMENT) 16 (octets)
0x00000015 (DEBUG) 0x0
0x00000003 (PLTGOT) 0x804c000
0x00000002 (PLTRELSZ) 8 (octets)
0x00000014 (PLTREL) REL
0x00000017 (JMPREL) 0x8048300
0x00000011 (REL) 0x80482f8
0x00000012 (RELSZ) 8 (octets)
0x00000013 (RELENT) 8 (octets)
0x6ffffffe (VERNEED) 0x80482d8
0x6fffffff (VERNEEDNUM) 1
0x6ffffff0 (VERSYM) 0x80482ce
0x00000000 (NULL) 0x0
Section de réadressage '.rel.dyn' à l'adresse de décalage 0x2f8 contient 1 entrée :
Décalage Info Type Val.-sym Noms-symboles
0804bffc 00000106 R_386_GLOB_DAT 00000000 __gmon_start__
Section de réadressage '.rel.plt' à l'adresse de décalage 0x300 contient 1 entrée :
Décalage Info Type Val.-sym Noms-symboles
0804c00c 00000207 R_386_JUMP_SLOT 00000000 __libc_start_main@GLIBC_2.0
Pas d'information de déroulement spécifique au processeur à décoder
La table de symboles « .dynsym » contient 4 entrées :
Num: Valeur Tail Type Lien Vis Ndx Nom
0: 00000000 0 NOTYPE LOCAL DEFAULT UND
1: 00000000 0 NOTYPE WEAK DEFAULT UND __gmon_start__
2: 00000000 0 FUNC GLOBAL DEFAULT UND __[...]@GLIBC_2.0 (2)
3: 0804a004 4 OBJECT GLOBAL DEFAULT 17 _IO_stdin_used
Histogramme de la longueur de la liste des baquets « .gnu.hash » (total de 2 baquets) :
Long. Nombre % de couverture totale
0 1 ( 50.0%)
1 1 ( 50.0%) 100.0%
La section des symboles de version « .gnu.version » contient 4 entrées :
Adr: 0x00000000080482ce Décalage: 0x000002ce Lien: 6 (.dynsym)
000: 0 (*local*) 0 (*local*) 2 (GLIBC_2.0) 1 (*global*)
La section de dépendances de version « .gnu.version_r » contient 1 entrée :
Adr: 0x00000000080482d8 Décalage: 0x000002d8 Lien: 7 (.dynstr)
000000: Version: 1 Fichier: libc.so.6 Compteur: 1
0x0010: Nom: GLIBC_2.0 Fanions: aucun Version: 2
Affichage des notes trouvées dans: .note.gnu.build-id
Propriétaire Taille des données Description
GNU 0x00000014 NT_GNU_BUILD_ID (chaîne de bits du ID de construction unique)
ID construction: 2fcce91f5c2532f78b00a9f5f565354d2f44bc19
Affichage des notes trouvées dans: .note.gnu.property
Propriétaire Taille des données Description
GNU 0x0000000c NT_GNU_PROPERTY_TYPE_0
Propriétés: x86 feature: IBT, SHSTK
Affichage des notes trouvées dans: .note.ABI-tag
Propriétaire Taille des données Description
GNU 0x00000010 NT_GNU_ABI_TAG (étiquette de version ABI)
OS: Linux, ABI: 3.2.0