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.

313 lines
19 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 : 5472 (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: 36
Table d'index des chaînes d'en-tête de section: 33
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] .comment PROGBITS 0000000000000000 0000103c
000000000000002c 0000000000000001 MS 0 0 1
[28] .debug_aranges PROGBITS 0000000000000000 00001068
0000000000000060 0000000000000000 0 0 1
[29] .debug_info PROGBITS 0000000000000000 000010c8
0000000000000149 0000000000000000 0 0 1
[30] .debug_abbrev PROGBITS 0000000000000000 00001211
00000000000000f3 0000000000000000 0 0 1
[31] .debug_line PROGBITS 0000000000000000 00001304
0000000000000077 0000000000000000 0 0 1
[32] .debug_str PROGBITS 0000000000000000 0000137b
000000000000008c 0000000000000001 MS 0 0 1
[33] .shstrtab STRTAB 0000000000000000 00001407
0000000000000155 0000000000000000 0 0 1
[34] .symtab SYMTAB 0000000000000000 00001e60
0000000000000720 0000000000000018 35 54 8
[35] .strtab STRTAB 0000000000000000 00002580
0000000000000253 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
La table de symboles « .symtab » contient 76 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: 0000000000000254 0 SECTION LOCAL DEFAULT 2 .note.ABI-tag
3: 0000000000000274 0 SECTION LOCAL DEFAULT 3 .note.gnu.build-id
4: 0000000000000298 0 SECTION LOCAL DEFAULT 4 .gnu.hash
5: 00000000000002d8 0 SECTION LOCAL DEFAULT 5 .dynsym
6: 0000000000000428 0 SECTION LOCAL DEFAULT 6 .dynstr
7: 00000000000004f2 0 SECTION LOCAL DEFAULT 7 .gnu.version
8: 0000000000000510 0 SECTION LOCAL DEFAULT 8 .gnu.version_r
9: 0000000000000530 0 SECTION LOCAL DEFAULT 9 .rela.dyn
10: 0000000000000638 0 SECTION LOCAL DEFAULT 10 .rela.plt
11: 0000000000000680 0 SECTION LOCAL DEFAULT 11 .init
12: 00000000000006a0 0 SECTION LOCAL DEFAULT 12 .plt
13: 00000000000006e0 0 SECTION LOCAL DEFAULT 13 .text
14: 00000000000008f4 0 SECTION LOCAL DEFAULT 14 .fini
15: 0000000000000900 0 SECTION LOCAL DEFAULT 15 .rodata
16: 0000000000000904 0 SECTION LOCAL DEFAULT 16 .eh_frame_hdr
17: 0000000000000948 0 SECTION LOCAL DEFAULT 17 .eh_frame
18: 0000000000200dd0 0 SECTION LOCAL DEFAULT 18 .init_array
19: 0000000000200dd8 0 SECTION LOCAL DEFAULT 19 .fini_array
20: 0000000000200de0 0 SECTION LOCAL DEFAULT 20 .jcr
21: 0000000000200de8 0 SECTION LOCAL DEFAULT 21 .data.rel.ro
22: 0000000000200df0 0 SECTION LOCAL DEFAULT 22 .dynamic
23: 0000000000200fc0 0 SECTION LOCAL DEFAULT 23 .got
24: 0000000000201000 0 SECTION LOCAL DEFAULT 24 .got.plt
25: 0000000000201030 0 SECTION LOCAL DEFAULT 25 .data
26: 000000000020103c 0 SECTION LOCAL DEFAULT 26 .bss
27: 0000000000000000 0 SECTION LOCAL DEFAULT 27 .comment
28: 0000000000000000 0 SECTION LOCAL DEFAULT 28 .debug_aranges
29: 0000000000000000 0 SECTION LOCAL DEFAULT 29 .debug_info
30: 0000000000000000 0 SECTION LOCAL DEFAULT 30 .debug_abbrev
31: 0000000000000000 0 SECTION LOCAL DEFAULT 31 .debug_line
32: 0000000000000000 0 SECTION LOCAL DEFAULT 32 .debug_str
33: 0000000000000000 0 FILE LOCAL DEFAULT ABS crtstuff.c
34: 0000000000200de0 0 OBJECT LOCAL DEFAULT 20 __JCR_LIST__
35: 0000000000000710 0 FUNC LOCAL DEFAULT 13 deregister_tm_clones
36: 0000000000000740 0 FUNC LOCAL DEFAULT 13 register_tm_clones
37: 0000000000000780 0 FUNC LOCAL DEFAULT 13 __do_global_dtors_aux
38: 000000000020103c 1 OBJECT LOCAL DEFAULT 26 completed.6137
39: 0000000000200dd8 0 OBJECT LOCAL DEFAULT 19 __do_global_dtor[...]
40: 00000000000007c0 0 FUNC LOCAL DEFAULT 13 frame_dummy
41: 0000000000200dd0 0 OBJECT LOCAL DEFAULT 18 __frame_dummy_in[...]
42: 0000000000000000 0 FILE LOCAL DEFAULT ABS foo.c
43: 0000000000000000 0 FILE LOCAL DEFAULT ABS bar.c
44: 0000000000201034 4 OBJECT LOCAL DEFAULT 25 b1
45: 0000000000000814 20 FUNC LOCAL DEFAULT 13 foo
46: 0000000000000000 0 FILE LOCAL DEFAULT ABS crtstuff.c
47: 0000000000000a58 0 OBJECT LOCAL DEFAULT 17 __FRAME_END__
48: 0000000000200de0 0 OBJECT LOCAL DEFAULT 20 __JCR_END__
49: 0000000000000000 0 FILE LOCAL DEFAULT ABS
50: 0000000000200dd8 0 NOTYPE LOCAL DEFAULT 18 __init_array_end
51: 0000000000200df0 0 OBJECT LOCAL DEFAULT 22 _DYNAMIC
52: 0000000000200dd0 0 NOTYPE LOCAL DEFAULT 18 __init_array_start
53: 0000000000201000 0 OBJECT LOCAL DEFAULT 24 _GLOBAL_OFFSET_TABLE_
54: 00000000000008f0 2 FUNC GLOBAL DEFAULT 13 __libc_csu_fini
55: 0000000000000000 0 NOTYPE WEAK DEFAULT UND _ITM_deregisterT[...]
56: 0000000000201030 0 NOTYPE WEAK DEFAULT 25 data_start
57: 000000000020103c 0 NOTYPE GLOBAL DEFAULT 25 _edata
58: 0000000000000828 44 FUNC GLOBAL DEFAULT 13 bar
59: 00000000000008f4 0 FUNC GLOBAL DEFAULT 14 _fini
60: 0000000000000000 0 FUNC GLOBAL DEFAULT UND __libc_start_mai[...]
61: 0000000000201030 0 NOTYPE GLOBAL DEFAULT 25 __data_start
62: 0000000000000000 0 NOTYPE WEAK DEFAULT UND __gmon_start__
63: 0000000000200de8 0 OBJECT GLOBAL HIDDEN 21 __dso_handle
64: 0000000000000900 4 OBJECT GLOBAL DEFAULT 15 _IO_stdin_used
65: 0000000000201038 4 OBJECT GLOBAL DEFAULT 25 b2
66: 0000000000000860 137 FUNC GLOBAL DEFAULT 13 __libc_csu_init
67: 0000000000201040 0 NOTYPE GLOBAL DEFAULT 26 _end
68: 00000000000006e0 0 FUNC GLOBAL DEFAULT 13 _start
69: 000000000020103c 0 NOTYPE GLOBAL DEFAULT 26 __bss_start
70: 00000000000007f0 35 FUNC GLOBAL DEFAULT 13 main
71: 0000000000000000 0 NOTYPE WEAK DEFAULT UND _Jv_RegisterClasses
72: 0000000000201040 0 OBJECT GLOBAL HIDDEN 25 __TMC_END__
73: 0000000000000000 0 NOTYPE WEAK DEFAULT UND _ITM_registerTMC[...]
74: 0000000000000000 0 FUNC WEAK DEFAULT UND __cxa_finalize@@[...]
75: 0000000000000680 0 FUNC GLOBAL DEFAULT 11 _init
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