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.
 
 
 
 
 
 

190 lines
11 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: 0x4004c0
Début des en-têtes de programme : 64 (octets dans le fichier)
Début des en-têtes de section : 2856 (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: 27
Table d'index des chaînes d'en-tête de section: 26
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] .hash HASH 0000000000400240 00000240
0000000000000040 0000000000000004 A 4 0 8
[ 4] .dynsym DYNSYM 0000000000400280 00000280
0000000000000108 0000000000000018 A 5 1 8
[ 5] .dynstr STRTAB 0000000000400388 00000388
000000000000007e 0000000000000000 A 0 0 1
[ 6] .gnu.version VERSYM 0000000000400406 00000406
0000000000000016 0000000000000002 A 4 0 2
[ 7] .gnu.version_r VERNEED 0000000000400420 00000420
0000000000000020 0000000000000000 A 5 1 8
[ 8] .rela.dyn RELA 0000000000400440 00000440
0000000000000030 0000000000000018 A 4 0 8
[ 9] .rela.plt RELA 0000000000400470 00000470
0000000000000018 0000000000000018 A 4 11 8
[10] .init PROGBITS 0000000000400488 00000488
0000000000000018 0000000000000000 AX 0 0 4
[11] .plt PROGBITS 00000000004004a0 000004a0
0000000000000020 0000000000000010 AX 0 0 4
[12] .text PROGBITS 00000000004004c0 000004c0
00000000000001a8 0000000000000000 AX 0 0 16
[13] .fini PROGBITS 0000000000400668 00000668
000000000000000e 0000000000000000 AX 0 0 4
[14] .rodata PROGBITS 0000000000400678 00000678
0000000000000004 0000000000000000 A 0 0 4
[15] .eh_frame_hdr PROGBITS 000000000040067c 0000067c
0000000000000024 0000000000000000 A 0 0 4
[16] .eh_frame PROGBITS 00000000004006a0 000006a0
0000000000000094 0000000000000000 A 0 0 8
[17] .ctors PROGBITS 0000000000500738 00000738
0000000000000010 0000000000000000 WA 0 0 8
[18] .dtors PROGBITS 0000000000500748 00000748
0000000000000010 0000000000000000 WA 0 0 8
[19] .jcr PROGBITS 0000000000500758 00000758
0000000000000008 0000000000000000 WA 0 0 8
[20] .dynamic DYNAMIC 0000000000500760 00000760
00000000000001a0 0000000000000010 WA 5 0 8
[21] .got PROGBITS 0000000000500900 00000900
0000000000000008 0000000000000008 WA 0 0 8
[22] .got.plt PROGBITS 0000000000500908 00000908
0000000000000020 0000000000000008 WA 0 0 8
[23] .data PROGBITS 0000000000500928 00000928
0000000000000018 0000000000000000 WA 0 0 8
[24] .bss NOBITS 0000000000500940 00000940
0000000000000008 0000000000000000 WA 0 0 4
[25] .comment PROGBITS 0000000000000000 00000940
0000000000000111 0000000000000000 0 0 1
[26] .shstrtab STRTAB 0000000000000000 00000a51
00000000000000d7 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
0x0000000000000734 0x0000000000000734 R E 0x100000
LOAD 0x0000000000000738 0x0000000000500738 0x0000000000500738
0x0000000000000208 0x0000000000000210 RW 0x100000
DYNAMIC 0x0000000000000760 0x0000000000500760 0x0000000000500760
0x00000000000001a0 0x00000000000001a0 RW 0x8
NOTE 0x000000000000021c 0x000000000040021c 0x000000000040021c
0x0000000000000020 0x0000000000000020 R 0x4
GNU_EH_FRAME 0x000000000000067c 0x000000000040067c 0x000000000040067c
0x0000000000000024 0x0000000000000024 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 .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
06 .eh_frame_hdr
07
Dynamic section at offset 0x760 contains 21 entries:
Étiquettes Type Nom/Valeur
0x0000000000000001 (NEEDED) Bibliothèque partagée : [u.so]
0x0000000000000001 (NEEDED) Bibliothèque partagée : [libc.so.6]
0x000000000000000c (INIT) 0x400488
0x000000000000000d (FINI) 0x400668
0x0000000000000004 (HASH) 0x400240
0x0000000000000005 (STRTAB) 0x400388
0x0000000000000006 (SYMTAB) 0x400280
0x000000000000000a (STRSZ) 126 (octets)
0x000000000000000b (SYMENT) 24 (octets)
0x0000000000000015 (DEBUG) 0x0
0x0000000000000003 (PLTGOT) 0x500908
0x0000000000000002 (PLTRELSZ) 24 (octets)
0x0000000000000014 (PLTREL) RELA
0x0000000000000017 (JMPREL) 0x400470
0x0000000000000007 (RELA) 0x400440
0x0000000000000008 (RELASZ) 48 (octets)
0x0000000000000009 (RELAENT) 24 (octets)
0x000000006ffffffe (VERNEED) 0x400420
0x000000006fffffff (VERNEEDNUM) 1
0x000000006ffffff0 (VERSYM) 0x400406
0x0000000000000000 (NULL) 0x0
Section de réadressage '.rela.dyn' à l'adresse de décalage 0x440 contient 2 entrées :
Décalage Info Type Val.-symboles Noms-symb.+ Addenda
000000500900 000a00000006 R_X86_64_GLOB_DAT 0000000000000000 __gmon_start__ + 0
000000500940 000800000005 R_X86_64_COPY 0000000000500940 a + 0
Section de réadressage '.rela.plt' à l'adresse de décalage 0x470 contient 1 entrée :
Décalage Info Type Val.-symboles Noms-symb.+ Addenda
000000500920 000100000007 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 11 entrées :
Num: Valeur Tail Type Lien Vis Ndx Nom
0: 0000000000000000 0 NOTYPE LOCAL DEFAULT UND
1: 0000000000000000 419 FUNC GLOBAL DEFAULT UND [...]@GLIBC_2.2.5 (2)
2: 0000000000500760 0 OBJECT GLOBAL DEFAULT ABS _DYNAMIC
3: 0000000000400488 0 FUNC GLOBAL DEFAULT 10 _init
4: 0000000000500940 0 NOTYPE GLOBAL DEFAULT ABS __bss_start
5: 0000000000400668 0 FUNC GLOBAL DEFAULT 13 _fini
6: 0000000000500940 0 NOTYPE GLOBAL DEFAULT ABS _edata
7: 0000000000500948 0 NOTYPE GLOBAL DEFAULT ABS _end
8: 0000000000500940 4 FUNC GLOBAL DEFAULT 24 a
9: 0000000000000000 0 NOTYPE WEAK DEFAULT UND _Jv_RegisterClasses
10: 0000000000000000 0 NOTYPE WEAK DEFAULT UND __gmon_start__
Histogramme de la longueur de la liste des baquets (total de 3 baquets) :
Long. Nombre % de couverture totale
0 0 ( 0.0%)
1 1 ( 33.3%) 10.0%
2 0 ( 0.0%) 10.0%
3 0 ( 0.0%) 10.0%
4 1 ( 33.3%) 50.0%
5 1 ( 33.3%) 100.0%
La section des symboles de version « .gnu.version » contient 11 entrées :
Adr: 0x0000000000400406 Décalage: 0x00000406 Lien: 4 (.dynsym)
000: 0 (*local*) 2 (GLIBC_2.2.5) 1 (*global*) 1 (*global*)
004: 1 (*global*) 1 (*global*) 1 (*global*) 1 (*global*)
008: 0 (*local*) 0 (*local*) 0 (*local*)
La section de dépendances de version « .gnu.version_r » contient 1 entrée :
Adr: 0x0000000000400420 Décalage: 0x00000420 Lien: 5 (.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.4.20