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.
 
 
 
 
 
 

217 lines
13 KiB

En-tête ELF:
Magique: 7f 45 4c 46 02 01 01 00 00 00 00 00 00 00 00 00
Classe: ELF64
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: DYN (fichier objet partagé)
Machine: Advanced Micro Devices X86-64
Version: 0x1
Adresse du point d'entrée: 0x6e0
Début des en-têtes de programme : 64 (octets dans le fichier)
Début des en-têtes de section : 4408 (octets dans le fichier)
Fanions: 0x0
Taille de cet en-tête: 64 (octets)
Taille de l'en-tête du programme: 56 (octets)
Nombre d'en-tête du programme: 9
Taille des en-têtes de section: 64 (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 Adresse Décalage
Taille TaillEntrée Fanion Lien Info Alignement
[ 0] NULL 0000000000000000 00000000
0000000000000000 0000000000000000 0 0 0
[ 1] .interp PROGBITS 0000000000000238 00000238
000000000000001c 0000000000000000 A 0 0 1
[ 2] .note.ABI-tag NOTE 0000000000000254 00000254
0000000000000020 0000000000000000 A 0 0 4
[ 3] .note.gnu.bu[...] NOTE 0000000000000274 00000274
0000000000000024 0000000000000000 A 0 0 4
[ 4] .gnu.hash GNU_HASH 0000000000000298 00000298
000000000000003c 0000000000000000 A 5 0 8
[ 5] .dynsym DYNSYM 00000000000002d8 000002d8
0000000000000150 0000000000000018 A 6 2 8
[ 6] .dynstr STRTAB 0000000000000428 00000428
00000000000000c9 0000000000000000 A 0 0 1
[ 7] .gnu.version VERSYM 00000000000004f2 000004f2
000000000000001c 0000000000000002 A 5 0 2
[ 8] .gnu.version_r VERNEED 0000000000000510 00000510
0000000000000020 0000000000000000 A 6 1 8
[ 9] .rela.dyn RELA 0000000000000530 00000530
0000000000000108 0000000000000018 A 5 0 8
[10] .rela.plt RELA 0000000000000638 00000638
0000000000000048 0000000000000018 A 5 12 8
[11] .init PROGBITS 0000000000000680 00000680
000000000000001a 0000000000000000 AX 0 0 4
[12] .plt PROGBITS 00000000000006a0 000006a0
0000000000000040 0000000000000010 AX 0 0 16
[13] .text PROGBITS 00000000000006e0 000006e0
0000000000000214 0000000000000000 AX 0 0 16
[14] .fini PROGBITS 00000000000008f4 000008f4
0000000000000009 0000000000000000 AX 0 0 4
[15] .rodata PROGBITS 0000000000000900 00000900
0000000000000004 0000000000000004 AM 0 0 4
[16] .eh_frame_hdr PROGBITS 0000000000000904 00000904
0000000000000044 0000000000000000 A 0 0 4
[17] .eh_frame PROGBITS 0000000000000948 00000948
0000000000000114 0000000000000000 A 0 0 8
[18] .init_array INIT_ARRAY 0000000000200dd0 00000dd0
0000000000000008 0000000000000000 WA 0 0 8
[19] .fini_array FINI_ARRAY 0000000000200dd8 00000dd8
0000000000000008 0000000000000000 WA 0 0 8
[20] .jcr PROGBITS 0000000000200de0 00000de0
0000000000000008 0000000000000000 WA 0 0 8
[21] .data.rel.ro PROGBITS 0000000000200de8 00000de8
0000000000000008 0000000000000000 WA 0 0 8
[22] .dynamic DYNAMIC 0000000000200df0 00000df0
00000000000001d0 0000000000000010 WA 6 0 8
[23] .got PROGBITS 0000000000200fc0 00000fc0
0000000000000040 0000000000000008 WA 0 0 8
[24] .got.plt PROGBITS 0000000000201000 00001000
0000000000000030 0000000000000008 WA 0 0 8
[25] .data PROGBITS 0000000000201030 00001030
000000000000000c 0000000000000000 WA 0 0 4
[26] .bss NOBITS 000000000020103c 0000103c
0000000000000004 0000000000000000 WA 0 0 4
[27] .shstrtab STRTAB 0000000000000000 0000103c
00000000000000fc 0000000000000000 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), l (grand), p (processor specific)
Il n'y a pas de groupe de section dans ce fichier.
En-têtes de programme :
Type Décalage Adr.virt Adr.phys.
Taille fichier Taille mémoire Fanion Alignement
PHDR 0x0000000000000040 0x0000000000000040 0x0000000000000040
0x00000000000001f8 0x00000000000001f8 R E 0x8
INTERP 0x0000000000000238 0x0000000000000238 0x0000000000000238
0x000000000000001c 0x000000000000001c R 0x1
[Réquisition de l'interpréteur de programme: /lib64/ld-linux-x86-64.so.2]
LOAD 0x0000000000000000 0x0000000000000000 0x0000000000000000
0x0000000000000a5c 0x0000000000000a5c R E 0x200000
LOAD 0x0000000000000dd0 0x0000000000200dd0 0x0000000000200dd0
0x000000000000026c 0x0000000000000270 RW 0x200000
DYNAMIC 0x0000000000000df0 0x0000000000200df0 0x0000000000200df0
0x00000000000001d0 0x00000000000001d0 RW 0x8
NOTE 0x0000000000000254 0x0000000000000254 0x0000000000000254
0x0000000000000044 0x0000000000000044 R 0x4
GNU_EH_FRAME 0x0000000000000904 0x0000000000000904 0x0000000000000904
0x0000000000000044 0x0000000000000044 R 0x4
GNU_STACK 0x0000000000000000 0x0000000000000000 0x0000000000000000
0x0000000000000000 0x0000000000000000 RW 0x8
GNU_RELRO 0x0000000000000dd0 0x0000000000200dd0 0x0000000000200dd0
0x0000000000000230 0x0000000000000230 R 0x1
Correspondance section/segment :
Sections de segment...
00
01 .interp
02 .interp .note.ABI-tag .note.gnu.build-id .gnu.hash .dynsym .dynstr .gnu.version .gnu.version_r .rela.dyn .rela.plt .init .plt .text .fini .rodata .eh_frame_hdr .eh_frame
03 .init_array .fini_array .jcr .data.rel.ro .dynamic .got .got.plt .data .bss
04 .dynamic
05 .note.ABI-tag .note.gnu.build-id
06 .eh_frame_hdr
07
08 .init_array .fini_array .jcr .data.rel.ro .dynamic .got
Dynamic section at offset 0xdf0 contains 25 entries:
Étiquettes Type Nom/Valeur
0x0000000000000001 (NEEDED) Bibliothèque partagée : [libc.so.6]
0x000000000000000c (INIT) 0x680
0x000000000000000d (FINI) 0x8f4
0x0000000000000019 (INIT_ARRAY) 0x200dd0
0x000000000000001b (INIT_ARRAYSZ) 8 (octets)
0x000000000000001a (FINI_ARRAY) 0x200dd8
0x000000000000001c (FINI_ARRAYSZ) 8 (octets)
0x000000006ffffef5 (GNU_HASH) 0x298
0x0000000000000005 (STRTAB) 0x428
0x0000000000000006 (SYMTAB) 0x2d8
0x000000000000000a (STRSZ) 201 (octets)
0x000000000000000b (SYMENT) 24 (octets)
0x0000000000000015 (DEBUG) 0x0
0x0000000000000003 (PLTGOT) 0x201000
0x0000000000000002 (PLTRELSZ) 72 (octets)
0x0000000000000014 (PLTREL) RELA
0x0000000000000017 (JMPREL) 0x638
0x0000000000000007 (RELA) 0x530
0x0000000000000008 (RELASZ) 264 (octets)
0x0000000000000009 (RELAENT) 24 (octets)
0x000000006ffffffe (VERNEED) 0x510
0x000000006fffffff (VERNEEDNUM) 1
0x000000006ffffff0 (VERSYM) 0x4f2
0x000000006ffffff9 (RELACOUNT) 6
0x0000000000000000 (NULL) 0x0
Section de réadressage '.rela.dyn' à l'adresse de décalage 0x530 contient 11 entrées :
Décalage Info Type Val.-symboles Noms-symb.+ Addenda
000000200dd0 000000000008 R_X86_64_RELATIVE 7c0
000000200dd8 000000000008 R_X86_64_RELATIVE 780
000000200de8 000000000008 R_X86_64_RELATIVE 200de8
000000200fc0 000000000008 R_X86_64_RELATIVE 8f0
000000200fd8 000000000008 R_X86_64_RELATIVE 860
000000200fe0 000000000008 R_X86_64_RELATIVE 7f0
000000200fc8 000200000006 R_X86_64_GLOB_DAT 0000000000000000 _ITM_deregisterTM[...] + 0
000000200fd0 000400000006 R_X86_64_GLOB_DAT 0000000000000000 __gmon_start__ + 0
000000200fe8 000500000006 R_X86_64_GLOB_DAT 0000000000000000 _Jv_RegisterClasses + 0
000000200ff0 000600000006 R_X86_64_GLOB_DAT 0000000000000000 _ITM_registerTMCl[...] + 0
000000200ff8 000700000006 R_X86_64_GLOB_DAT 0000000000000000 __cxa_finalize@GLIBC_2.2.5 + 0
Section de réadressage '.rela.plt' à l'adresse de décalage 0x638 contient 3 entrées :
Décalage Info Type Val.-symboles Noms-symb.+ Addenda
000000201018 000300000007 R_X86_64_JUMP_SLO 0000000000000000 __libc_start_main@GLIBC_2.2.5 + 0
000000201020 000400000007 R_X86_64_JUMP_SLO 0000000000000000 __gmon_start__ + 0
000000201028 000700000007 R_X86_64_JUMP_SLO 0000000000000000 __cxa_finalize@GLIBC_2.2.5 + 0
Pas d'information de déroulement spécifique au processeur à décoder
La table de symboles « .dynsym » contient 14 entrées :
Num: Valeur Tail Type Lien Vis Ndx Nom
0: 0000000000000000 0 NOTYPE LOCAL DEFAULT UND
1: 0000000000000238 0 SECTION LOCAL DEFAULT 1 .interp
2: 0000000000000000 0 NOTYPE WEAK DEFAULT UND _ITM_deregisterT[...]
3: 0000000000000000 0 FUNC GLOBAL DEFAULT UND [...]@GLIBC_2.2.5 (2)
4: 0000000000000000 0 NOTYPE WEAK DEFAULT UND __gmon_start__
5: 0000000000000000 0 NOTYPE WEAK DEFAULT UND _Jv_RegisterClasses
6: 0000000000000000 0 NOTYPE WEAK DEFAULT UND _ITM_registerTMC[...]
7: 0000000000000000 0 FUNC WEAK DEFAULT UND [...]@GLIBC_2.2.5 (2)
8: 000000000020103c 0 NOTYPE GLOBAL DEFAULT 25 _edata
9: 0000000000201040 0 NOTYPE GLOBAL DEFAULT 26 _end
10: 0000000000000860 137 FUNC GLOBAL DEFAULT 13 __libc_csu_init
11: 000000000020103c 0 NOTYPE GLOBAL DEFAULT 26 __bss_start
12: 00000000000007f0 35 FUNC GLOBAL DEFAULT 13 main
13: 00000000000008f0 2 FUNC GLOBAL DEFAULT 13 __libc_csu_fini
Histogramme de la longueur de la liste des baquets « .gnu.hash » (total de 3 baquets) :
Long. Nombre % de couverture totale
0 0 ( 0.0%)
1 1 ( 33.3%) 16.7%
2 1 ( 33.3%) 50.0%
3 1 ( 33.3%) 100.0%
La section des symboles de version « .gnu.version » contient 14 entrées :
Adr: 0x00000000000004f2 Décalage: 0x000004f2 Lien: 5 (.dynsym)
000: 0 (*local*) 0 (*local*) 0 (*local*) 2 (GLIBC_2.2.5)
004: 0 (*local*) 0 (*local*) 0 (*local*) 2 (GLIBC_2.2.5)
008: 1 (*global*) 1 (*global*) 1 (*global*) 1 (*global*)
00c: 1 (*global*) 1 (*global*)
La section de dépendances de version « .gnu.version_r » contient 1 entrée :
Adr: 0x0000000000000510 Décalage: 0x00000510 Lien: 6 (.dynstr)
000000: Version: 1 Fichier: libc.so.6 Compteur: 1
0x0010: Nom: GLIBC_2.2.5 Fanions: aucun Version: 2
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: 2.6.32
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: ce0e41f162cbf84ae91267c5a902c6963bfd34be