1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
ELF Header:
Magic: 7f 45 4c 46 02 01 01 00 00 00 00 00 00 00 00 00
Class: ELF64
Data: 2's complement, little endian
Version: 1 (current)
OS/ABI: UNIX - System V
ABI Version: 0
Type: DYN (Shared object file)
Machine: Advanced Micro Devices X86-64
Version: 0x1
Entry point address: 0x0
Start of program headers: 64 (bytes into file)
Start of section headers: 51848 (bytes into file)
Flags: 0x0
Size of this header: 64 (bytes)
Size of program headers: 56 (bytes)
Number of program headers: 10
Size of section headers: 64 (bytes)
Number of section headers: 24
Section header string table index: 23
Section Headers:
[Nr] Name Type Address Offset
Size EntSize Flags Link Info Align
[ 0] NULL 0000000000000000 00000000
0000000000000000 0000000000000000 0 0 0
[ 1] .note.gnu.pr[...] NOTE 0000000000000270 00000270
0000000000000030 0000000000000000 A 0 0 8
[ 2] .note.gnu.bu[...] NOTE 00000000000002a0 000002a0
0000000000000024 0000000000000000 A 0 0 4
[ 3] .gnu.hash GNU_HASH 00000000000002c8 000002c8
0000000000000e2c 0000000000000000 A 4 0 8
[ 4] .dynsym DYNSYM 00000000000010f8 000010f8
0000000000003078 0000000000000018 A 5 1 8
[ 5] .dynstr STRTAB 0000000000004170 00004170
00000000000017fd 0000000000000000 A 0 0 1
[ 6] .gnu.version VERSYM 000000000000596e 0000596e
000000000000040a 0000000000000002 A 4 0 2
[ 7] .gnu.version_r VERNEED 0000000000005d78 00005d78
0000000000000020 0000000000000000 A 5 1 8
[ 8] .rela.dyn RELA 0000000000005d98 00005d98
00000000000000a8 0000000000000018 A 4 0 8
[ 9] .init PROGBITS 0000000000006000 00006000
000000000000001b 0000000000000000 AX 0 0 4
[10] .text PROGBITS 0000000000006020 00006020
00000000000000c9 0000000000000000 AX 0 0 16
[11] .fini PROGBITS 00000000000060ec 000060ec
000000000000000d 0000000000000000 AX 0 0 4
[12] .eh_frame PROGBITS 0000000000007000 00007000
0000000000000004 0000000000000000 A 0 0 8
[13] .init_array INIT_ARRAY 0000000000008e38 00007e38
0000000000000008 0000000000000008 WA 0 0 8
[14] .fini_array FINI_ARRAY 0000000000008e40 00007e40
0000000000000008 0000000000000008 WA 0 0 8
[15] .dynamic DYNAMIC 0000000000008e48 00007e48
0000000000000180 0000000000000010 WA 5 0 8
[16] .got PROGBITS 0000000000008fc8 00007fc8
0000000000000020 0000000000000008 WA 0 0 8
[17] .got.plt PROGBITS 0000000000008fe8 00007fe8
0000000000000018 0000000000000008 WA 0 0 8
[18] .data PROGBITS 0000000000009000 00008000
0000000000000008 0000000000000000 WA 0 0 8
[19] .bss NOBITS 0000000000009008 00008008
0000000000000808 0000000000000000 WA 0 0 4
[20] .comment PROGBITS 0000000000000000 00008008
000000000000001b 0000000000000001 MS 0 0 1
[21] .symtab SYMTAB 0000000000000000 00008028
0000000000003138 0000000000000018 22 9 8
[22] .strtab STRTAB 0000000000000000 0000b160
0000000000001842 0000000000000000 0 0 1
[23] .shstrtab STRTAB 0000000000000000 0000c9a2
00000000000000e0 0000000000000000 0 0 1
Key to Flags:
W (write), A (alloc), X (execute), M (merge), S (strings), I (info),
L (link order), O (extra OS processing required), G (group), T (TLS),
C (compressed), x (unknown), o (OS specific), E (exclude),
D (mbind), l (large), p (processor specific)
Program Headers:
Type Offset VirtAddr PhysAddr
FileSiz MemSiz Flags Align
LOAD 0x0000000000000000 0x0000000000000000 0x0000000000000000
0x0000000000005e40 0x0000000000005e40 R 0x1000
LOAD 0x0000000000006000 0x0000000000006000 0x0000000000006000
0x00000000000000f9 0x00000000000000f9 R E 0x1000
LOAD 0x0000000000007000 0x0000000000007000 0x0000000000007000
0x0000000000000004 0x0000000000000004 R 0x1000
LOAD 0x0000000000007e38 0x0000000000008e38 0x0000000000008e38
0x00000000000001d0 0x00000000000009d8 RW 0x1000
DYNAMIC 0x0000000000007e48 0x0000000000008e48 0x0000000000008e48
0x0000000000000180 0x0000000000000180 RW 0x8
NOTE 0x0000000000000270 0x0000000000000270 0x0000000000000270
0x0000000000000030 0x0000000000000030 R 0x8
NOTE 0x00000000000002a0 0x00000000000002a0 0x00000000000002a0
0x0000000000000024 0x0000000000000024 R 0x4
GNU_PROPERTY 0x0000000000000270 0x0000000000000270 0x0000000000000270
0x0000000000000030 0x0000000000000030 R 0x8
GNU_STACK 0x0000000000000000 0x0000000000000000 0x0000000000000000
0x0000000000000000 0x0000000000000000 RW 0x10
GNU_RELRO 0x0000000000007e38 0x0000000000008e38 0x0000000000008e38
0x00000000000001c8 0x00000000000001c8 R 0x1
Section to Segment mapping:
Segment Sections...
00 .note.gnu.property .note.gnu.build-id .gnu.hash .dynsym .dynstr .gnu.version .gnu.version_r .rela.dyn
01 .init .text .fini
02 .eh_frame
03 .init_array .fini_array .dynamic .got .got.plt .data .bss
04 .dynamic
05 .note.gnu.property
06 .note.gnu.build-id
07 .note.gnu.property
08
09 .init_array .fini_array .dynamic .got .got.plt
Dynamic section at offset 0x7e48 contains 20 entries:
Tag Type Name/Value
0x0000000000000001 (NEEDED) Shared library: [libc.so.6]
0x000000000000000c (INIT) 0x6000
0x000000000000000d (FINI) 0x60ec
0x0000000000000019 (INIT_ARRAY) 0x8e38
0x000000000000001b (INIT_ARRAYSZ) 8 (bytes)
0x000000000000001a (FINI_ARRAY) 0x8e40
0x000000000000001c (FINI_ARRAYSZ) 8 (bytes)
0x000000006ffffef5 (GNU_HASH) 0x2c8
0x0000000000000005 (STRTAB) 0x4170
0x0000000000000006 (SYMTAB) 0x10f8
0x000000000000000a (STRSZ) 6141 (bytes)
0x000000000000000b (SYMENT) 24 (bytes)
0x0000000000000007 (RELA) 0x5d98
0x0000000000000008 (RELASZ) 168 (bytes)
0x0000000000000009 (RELAENT) 24 (bytes)
0x000000006ffffffe (VERNEED) 0x5d78
0x000000006fffffff (VERNEEDNUM) 1
0x000000006ffffff0 (VERSYM) 0x596e
0x000000006ffffff9 (RELACOUNT) 3
0x0000000000000000 (NULL) 0x0