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.

273 lines
16 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: EXEC (fichier exécutable)
Machine: Advanced Micro Devices X86-64
Version: 0x1
Adresse du point d'entrée: 0x400390
Début des en-têtes de programme : 64 (octets dans le fichier)
Début des en-têtes de section : 3936 (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: 8
Taille des en-têtes de section: 64 (octets)
Nombre d'en-têtes de section: 38
Table d'index des chaînes d'en-tête de section: 35
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 0000000000400200 00000200
000000000000001c 0000000000000000 A 0 0 1
[ 2] .note.ABI-tag NOTE 000000000040021c 0000021c
0000000000000020 0000000000000000 A 0 0 4
[ 3] .note.gnu.bu[...] NOTE 000000000040023c 0000023c
0000000000000024 0000000000000000 A 0 0 4
[ 4] .gnu.hash GNU_HASH 0000000000400260 00000260
000000000000001c 0000000000000000 A 5 0 8
[ 5] .dynsym DYNSYM 0000000000400280 00000280
0000000000000048 0000000000000018 A 6 1 8
[ 6] .dynstr STRTAB 00000000004002c8 000002c8
0000000000000038 0000000000000000 A 0 0 1
[ 7] .gnu.version VERSYM 0000000000400300 00000300
0000000000000006 0000000000000002 A 5 0 2
[ 8] .gnu.version_r VERNEED 0000000000400308 00000308
0000000000000020 0000000000000000 A 6 1 8
[ 9] .rela.dyn RELA 0000000000400328 00000328
0000000000000018 0000000000000018 A 5 0 8
[10] .rela.plt RELA 0000000000400340 00000340
0000000000000018 0000000000000018 A 5 12 8
[11] .init PROGBITS 0000000000400358 00000358
0000000000000018 0000000000000000 AX 0 0 4
[12] .plt PROGBITS 0000000000400370 00000370
0000000000000020 0000000000000010 AX 0 0 4
[13] .text PROGBITS 0000000000400390 00000390
0000000000000208 0000000000000000 AX 0 0 16
[14] .fini PROGBITS 0000000000400598 00000598
000000000000000e 0000000000000000 AX 0 0 4
[15] .rodata PROGBITS 00000000004005a8 000005a8
0000000000000010 0000000000000000 A 0 0 8
[16] .eh_frame_hdr PROGBITS 00000000004005b8 000005b8
000000000000002c 0000000000000000 A 0 0 4
[17] .eh_frame PROGBITS 00000000004005e8 000005e8
000000000000008c 0000000000000000 A 0 0 8
[18] .ctors PROGBITS 0000000000600678 00000678
0000000000000010 0000000000000000 WA 0 0 8
[19] .dtors PROGBITS 0000000000600688 00000688
0000000000000010 0000000000000000 WA 0 0 8
[20] .jcr PROGBITS 0000000000600698 00000698
0000000000000008 0000000000000000 WA 0 0 8
[21] .dynamic DYNAMIC 00000000006006a0 000006a0
0000000000000190 0000000000000010 WA 6 0 8
[22] .got PROGBITS 0000000000600830 00000830
0000000000000008 0000000000000008 WA 0 0 8
[23] .got.plt PROGBITS 0000000000600838 00000838
0000000000000020 0000000000000008 WA 0 0 8
[24] .data PROGBITS 0000000000600858 00000858
0000000000000004 0000000000000000 WA 0 0 4
[25] .bss NOBITS 0000000000600860 0000085c
0000000000000010 0000000000000000 WA 0 0 8
[26] .comment PROGBITS 0000000000000000 0000085c
000000000000002c 0000000000000001 MS 0 0 1
[27] .debug_aranges PROGBITS 0000000000000000 00000888
0000000000000060 0000000000000000 0 0 1
[28] .debug_pubnames PROGBITS 0000000000000000 000008e8
0000000000000035 0000000000000000 0 0 1
[29] .debug_info PROGBITS 0000000000000000 0000091d
00000000000001a7 0000000000000000 0 0 1
[30] .debug_abbrev PROGBITS 0000000000000000 00000ac4
0000000000000163 0000000000000000 0 0 1
[31] .debug_line PROGBITS 0000000000000000 00000c27
0000000000000089 0000000000000000 0 0 1
[32] .debug_str PROGBITS 0000000000000000 00000cb0
000000000000007a 0000000000000001 MS 0 0 1
[33] .debug_loc PROGBITS 0000000000000000 00000d2a
000000000000006a 0000000000000000 0 0 1
[34] .debug_ranges PROGBITS 0000000000000000 00000d94
0000000000000060 0000000000000000 0 0 1
[35] .shstrtab STRTAB 0000000000000000 00000df4
0000000000000167 0000000000000000 0 0 1
[36] .symtab SYMTAB 0000000000000000 000018e0
00000000000006d8 0000000000000018 37 55 8
[37] .strtab STRTAB 0000000000000000 00001fb8
00000000000001eb 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 0x0000000000400040 0x0000000000400040
0x00000000000001c0 0x00000000000001c0 R E 0x8
INTERP 0x0000000000000200 0x0000000000400200 0x0000000000400200
0x000000000000001c 0x000000000000001c R 0x1
[Réquisition de l'interpréteur de programme: /lib64/ld-linux-x86-64.so.2]
LOAD 0x0000000000000000 0x0000000000400000 0x0000000000400000
0x0000000000000674 0x0000000000000674 R E 0x200000
LOAD 0x0000000000000678 0x0000000000600678 0x0000000000600678
0x00000000000001e4 0x00000000000001f8 RW 0x200000
DYNAMIC 0x00000000000006a0 0x00000000006006a0 0x00000000006006a0
0x0000000000000190 0x0000000000000190 RW 0x8
NOTE 0x000000000000021c 0x000000000040021c 0x000000000040021c
0x0000000000000044 0x0000000000000044 R 0x4
GNU_EH_FRAME 0x00000000000005b8 0x00000000004005b8 0x00000000004005b8
0x000000000000002c 0x000000000000002c R 0x4
GNU_STACK 0x0000000000000000 0x0000000000000000 0x0000000000000000
0x0000000000000000 0x0000000000000000 RW 0x8
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 .ctors .dtors .jcr .dynamic .got .got.plt .data .bss
04 .dynamic
05 .note.ABI-tag .note.gnu.build-id
06 .eh_frame_hdr
07
Dynamic section at offset 0x6a0 contains 20 entries:
Étiquettes Type Nom/Valeur
0x0000000000000001 (NEEDED) Bibliothèque partagée : [libc.so.6]
0x000000000000000c (INIT) 0x400358
0x000000000000000d (FINI) 0x400598
0x000000006ffffef5 (GNU_HASH) 0x400260
0x0000000000000005 (STRTAB) 0x4002c8
0x0000000000000006 (SYMTAB) 0x400280
0x000000000000000a (STRSZ) 56 (octets)
0x000000000000000b (SYMENT) 24 (octets)
0x0000000000000015 (DEBUG) 0x0
0x0000000000000003 (PLTGOT) 0x600838
0x0000000000000002 (PLTRELSZ) 24 (octets)
0x0000000000000014 (PLTREL) RELA
0x0000000000000017 (JMPREL) 0x400340
0x0000000000000007 (RELA) 0x400328
0x0000000000000008 (RELASZ) 24 (octets)
0x0000000000000009 (RELAENT) 24 (octets)
0x000000006ffffffe (VERNEED) 0x400308
0x000000006fffffff (VERNEEDNUM) 1
0x000000006ffffff0 (VERSYM) 0x400300
0x0000000000000000 (NULL) 0x0
Section de réadressage '.rela.dyn' à l'adresse de décalage 0x328 contient 1 entrée :
Décalage Info Type Val.-symboles Noms-symb.+ Addenda
000000600830 000100000006 R_X86_64_GLOB_DAT 0000000000000000 __gmon_start__ + 0
Section de réadressage '.rela.plt' à l'adresse de décalage 0x340 contient 1 entrée :
Décalage Info Type Val.-symboles Noms-symb.+ Addenda
000000600850 000200000007 R_X86_64_JUMP_SLO 0000000000000000 __libc_start_main@GLIBC_2.2.5 + 0
Pas d'information de déroulement spécifique au processeur à décoder
La table de symboles « .dynsym » contient 3 entrées :
Num: Valeur Tail Type Lien Vis Ndx Nom
0: 0000000000000000 0 NOTYPE LOCAL DEFAULT UND
1: 0000000000000000 0 NOTYPE WEAK DEFAULT UND __gmon_start__
2: 0000000000000000 0 FUNC GLOBAL DEFAULT UND [...]@GLIBC_2.2.5 (2)
La table de symboles « .symtab » contient 73 entrées :
Num: Valeur Tail Type Lien Vis Ndx Nom
0: 0000000000000000 0 NOTYPE LOCAL DEFAULT UND
1: 0000000000400200 0 SECTION LOCAL DEFAULT 1 .interp
2: 000000000040021c 0 SECTION LOCAL DEFAULT 2 .note.ABI-tag
3: 000000000040023c 0 SECTION LOCAL DEFAULT 3 .note.gnu.build-id
4: 0000000000400260 0 SECTION LOCAL DEFAULT 4 .gnu.hash
5: 0000000000400280 0 SECTION LOCAL DEFAULT 5 .dynsym
6: 00000000004002c8 0 SECTION LOCAL DEFAULT 6 .dynstr
7: 0000000000400300 0 SECTION LOCAL DEFAULT 7 .gnu.version
8: 0000000000400308 0 SECTION LOCAL DEFAULT 8 .gnu.version_r
9: 0000000000400328 0 SECTION LOCAL DEFAULT 9 .rela.dyn
10: 0000000000400340 0 SECTION LOCAL DEFAULT 10 .rela.plt
11: 0000000000400358 0 SECTION LOCAL DEFAULT 11 .init
12: 0000000000400370 0 SECTION LOCAL DEFAULT 12 .plt
13: 0000000000400390 0 SECTION LOCAL DEFAULT 13 .text
14: 0000000000400598 0 SECTION LOCAL DEFAULT 14 .fini
15: 00000000004005a8 0 SECTION LOCAL DEFAULT 15 .rodata
16: 00000000004005b8 0 SECTION LOCAL DEFAULT 16 .eh_frame_hdr
17: 00000000004005e8 0 SECTION LOCAL DEFAULT 17 .eh_frame
18: 0000000000600678 0 SECTION LOCAL DEFAULT 18 .ctors
19: 0000000000600688 0 SECTION LOCAL DEFAULT 19 .dtors
20: 0000000000600698 0 SECTION LOCAL DEFAULT 20 .jcr
21: 00000000006006a0 0 SECTION LOCAL DEFAULT 21 .dynamic
22: 0000000000600830 0 SECTION LOCAL DEFAULT 22 .got
23: 0000000000600838 0 SECTION LOCAL DEFAULT 23 .got.plt
24: 0000000000600858 0 SECTION LOCAL DEFAULT 24 .data
25: 0000000000600860 0 SECTION LOCAL DEFAULT 25 .bss
26: 0000000000000000 0 SECTION LOCAL DEFAULT 26 .comment
27: 0000000000000000 0 SECTION LOCAL DEFAULT 27 .debug_aranges
28: 0000000000000000 0 SECTION LOCAL DEFAULT 28 .debug_pubnames
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 SECTION LOCAL DEFAULT 33 .debug_loc
34: 0000000000000000 0 SECTION LOCAL DEFAULT 34 .debug_ranges
35: 00000000004003bc 0 FUNC LOCAL DEFAULT 13 call_gmon_start
36: 0000000000000000 0 FILE LOCAL DEFAULT ABS crtstuff.c
37: 0000000000600678 0 OBJECT LOCAL DEFAULT 18 __CTOR_LIST__
38: 0000000000600688 0 OBJECT LOCAL DEFAULT 19 __DTOR_LIST__
39: 0000000000600698 0 OBJECT LOCAL DEFAULT 20 __JCR_LIST__
40: 00000000004003e0 0 FUNC LOCAL DEFAULT 13 __do_global_dtors_aux
41: 0000000000600860 1 OBJECT LOCAL DEFAULT 25 completed.6347
42: 0000000000600868 8 OBJECT LOCAL DEFAULT 25 dtor_idx.6349
43: 0000000000400450 0 FUNC LOCAL DEFAULT 13 frame_dummy
44: 0000000000000000 0 FILE LOCAL DEFAULT ABS crtstuff.c
45: 0000000000600680 0 OBJECT LOCAL DEFAULT 18 __CTOR_END__
46: 0000000000400670 0 OBJECT LOCAL DEFAULT 17 __FRAME_END__
47: 0000000000600698 0 OBJECT LOCAL DEFAULT 20 __JCR_END__
48: 0000000000400560 0 FUNC LOCAL DEFAULT 13 __do_global_ctors_aux
49: 0000000000000000 0 FILE LOCAL DEFAULT ABS hello.c
50: 0000000000000000 0 FILE LOCAL DEFAULT ABS world.c
51: 0000000000600838 0 OBJECT LOCAL DEFAULT 23 _GLOBAL_OFFSET_TABLE_
52: 0000000000600674 0 NOTYPE LOCAL DEFAULT 18 __init_array_end
53: 0000000000600674 0 NOTYPE LOCAL DEFAULT 18 __init_array_start
54: 00000000006006a0 0 OBJECT LOCAL DEFAULT 21 _DYNAMIC
55: 0000000000600858 0 NOTYPE WEAK DEFAULT 24 data_start
56: 00000000004004c0 2 FUNC GLOBAL DEFAULT 13 __libc_csu_fini
57: 0000000000400390 0 FUNC GLOBAL DEFAULT 13 _start
58: 0000000000000000 0 NOTYPE WEAK DEFAULT UND __gmon_start__
59: 0000000000000000 0 NOTYPE WEAK DEFAULT UND _Jv_RegisterClasses
60: 0000000000400598 0 FUNC GLOBAL DEFAULT 14 _fini
61: 0000000000000000 0 FUNC GLOBAL DEFAULT UND __libc_start_mai[...]
62: 00000000004005a8 4 OBJECT GLOBAL DEFAULT 15 _IO_stdin_used
63: 0000000000600858 0 NOTYPE GLOBAL DEFAULT 24 __data_start
64: 00000000004004a0 28 FUNC GLOBAL DEFAULT 13 say
65: 00000000004005b0 0 OBJECT GLOBAL HIDDEN 15 __dso_handle
66: 0000000000600690 0 OBJECT GLOBAL HIDDEN 19 __DTOR_END__
67: 00000000004004d0 137 FUNC GLOBAL DEFAULT 13 __libc_csu_init
68: 000000000060085c 0 NOTYPE GLOBAL DEFAULT ABS __bss_start
69: 0000000000600870 0 NOTYPE GLOBAL DEFAULT ABS _end
70: 000000000060085c 0 NOTYPE GLOBAL DEFAULT ABS _edata
71: 0000000000400480 21 FUNC GLOBAL DEFAULT 13 main
72: 0000000000400358 0 FUNC GLOBAL DEFAULT 11 _init
La section des symboles de version « .gnu.version » contient 3 entrées :
Adr: 0x0000000000400300 Décalage: 0x00000300 Lien: 5 (.dynsym)
000: 0 (*local*) 0 (*local*) 2 (GLIBC_2.2.5)
La section de dépendances de version « .gnu.version_r » contient 1 entrée :
Adr: 0x0000000000400308 Décalage: 0x00000308 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.18
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: db03668155e9b48be8ffea92dc7611425f862afa