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
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
ELF Header:
Magic: 7f 45 4c 46 02 01 01 03 00 00 00 00 00 00 00 00
Class: ELF64
Data: 2's complement, little endian
Version: 1 (current)
OS/ABI: UNIX - GNU
ABI Version: 0
Type: DYN (Shared object file)
Machine: Advanced Micro Devices X86-64
Version: 0x1
Entry point address: 0x25e60
Start of program headers: 64 (bytes into file)
Start of section headers: 1985912 (bytes into file)
Flags: 0x0
Size of this header: 64 (bytes)
Size of program headers: 56 (bytes)
Number of program headers: 14
Size of section headers: 64 (bytes)
Number of section headers: 63
Section header string table index: 62
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 0000000000000350 00000350
0000000000000050 0000000000000000 A 0 0 8
[ 2] .note.gnu.bu[...] NOTE 00000000000003a0 000003a0
0000000000000024 0000000000000000 A 0 0 4
[ 3] .note.ABI-tag NOTE 00000000000003c4 000003c4
0000000000000020 0000000000000000 A 0 0 4
[ 4] .gnu.hash GNU_HASH 00000000000003e8 000003e8
00000000000050cc 0000000000000000 A 5 0 8
[ 5] .dynsym DYNSYM 00000000000054b8 000054b8
00000000000127b0 0000000000000018 A 6 1 8
[ 6] .dynstr STRTAB 0000000000017c68 00017c68
000000000000884d 0000000000000000 A 0 0 1
[ 7] .gnu.version VERSYM 00000000000204b6 000204b6
00000000000018a4 0000000000000002 A 5 0 2
[ 8] .gnu.version_d VERDEF 0000000000021d60 00021d60
00000000000005ac 0000000000000000 A 6 41 8
[ 9] .gnu.version_r VERNEED 0000000000022310 00022310
0000000000000040 0000000000000000 A 6 1 8
[10] .rela.dyn RELA 0000000000022350 00022350
0000000000000b28 0000000000000018 A 5 0 8
[11] .rela.plt RELA 0000000000022e78 00022e78
00000000000002a0 0000000000000018 AI 5 28 8
[12] .relr.dyn RELR 0000000000023118 00023118
0000000000000108 0000000000000008 A 0 0 8
[13] .plt PROGBITS 0000000000024000 00024000
00000000000001d0 0000000000000010 AX 0 0 16
[14] .plt.sec PROGBITS 00000000000241d0 000241d0
00000000000001c0 0000000000000010 AX 0 0 16
[15] .text PROGBITS 00000000000243c0 000243c0
000000000016acf9 0000000000000000 AX 0 0 64
[16] .rodata PROGBITS 0000000000190000 00190000
0000000000025de0 0000000000000000 A 0 0 32
[17] .stapsdt.base PROGBITS 00000000001b5de0 001b5de0
0000000000000001 0000000000000000 A 0 0 1
[18] rodata.cst32 PROGBITS 00000000001b5e00 001b5e00
0000000000000060 0000000000000020 AM 0 0 32
[19] .interp PROGBITS 00000000001b5e60 001b5e60
000000000000001e 0000000000000000 A 0 0 16
[20] .eh_frame_hdr PROGBITS 00000000001b5e80 001b5e80
000000000000783c 0000000000000000 A 0 0 4
[21] .eh_frame PROGBITS 00000000001bd6c0 001bd6c0
000000000001fe14 0000000000000000 A 0 0 8
[22] .gcc_except_table PROGBITS 00000000001dd4d4 001dd4d4
00000000000005e7 0000000000000000 A 0 0 1
[23] .tdata PROGBITS 00000000001debe0 001ddbe0
0000000000000010 0000000000000000 WAT 0 0 8
[24] .tbss NOBITS 00000000001debf0 001ddbf0
0000000000000078 0000000000000000 WAT 0 0 8
[25] .init_array INIT_ARRAY 00000000001debf0 001ddbf0
0000000000000010 0000000000000008 WA 0 0 8
[26] .data.rel.ro PROGBITS 00000000001dec00 001ddc00
0000000000002d60 0000000000000000 WA 0 0 32
[27] .dynamic DYNAMIC 00000000001e1960 001e0960
0000000000000230 0000000000000010 WA 6 0 8
[28] .got PROGBITS 00000000001e1b90 001e0b90
0000000000000468 0000000000000008 WA 0 0 8
[29] .data PROGBITS 00000000001e2000 001e1000
00000000000016c8 0000000000000000 WA 0 0 32
[30] .bss NOBITS 00000000001e36e0 001e26c8
0000000000008490 0000000000000000 WA 0 0 32
[31] .comment PROGBITS 0000000000000000 001e26c8
000000000000001b 0000000000000001 MS 0 0 1
[32] .note.stapsdt NOTE 0000000000000000 001e26e4
0000000000001ac4 0000000000000000 0 0 4
[33] .gnu.warning[...] PROGBITS 0000000000000000 001e41c0
000000000000004d 0000000000000000 0 0 32
[34] .gnu.warning[...] PROGBITS 0000000000000000 001e4220
0000000000000032 0000000000000000 0 0 32
[35] .gnu.warning[...] PROGBITS 0000000000000000 001e4260
0000000000000039 0000000000000000 0 0 32
[36] .gnu.warning[...] PROGBITS 0000000000000000 001e42a0
0000000000000038 0000000000000000 0 0 32
[37] .gnu.warning[...] PROGBITS 0000000000000000 001e42e0
0000000000000037 0000000000000000 0 0 32
[38] .gnu.warning[...] PROGBITS 0000000000000000 001e4320
0000000000000039 0000000000000000 0 0 32
[39] .gnu.warning.gets PROGBITS 0000000000000000 001e4360
0000000000000039 0000000000000000 0 0 32
[40] .gnu.warning[...] PROGBITS 0000000000000000 001e43a0
0000000000000052 0000000000000000 0 0 32
[41] .gnu.warning[...] PROGBITS 0000000000000000 001e4400
0000000000000052 0000000000000000 0 0 32
[42] .gnu.warning[...] PROGBITS 0000000000000000 001e4460
000000000000003d 0000000000000000 0 0 32
[43] .gnu.warning[...] PROGBITS 0000000000000000 001e44a0
000000000000003a 0000000000000000 0 0 32
[44] .gnu.warning[...] PROGBITS 0000000000000000 001e44e0
0000000000000030 0000000000000000 0 0 32
[45] .gnu.warning[...] PROGBITS 0000000000000000 001e4520
0000000000000031 0000000000000000 0 0 32
[46] .gnu.warning.gtty PROGBITS 0000000000000000 001e4560
000000000000002d 0000000000000000 0 0 32
[47] .gnu.warning[...] PROGBITS 0000000000000000 001e45a0
0000000000000044 0000000000000000 0 0 32
[48] .gnu.warning[...] PROGBITS 0000000000000000 001e4600
000000000000002f 0000000000000000 0 0 32
[49] .gnu.warning.stty PROGBITS 0000000000000000 001e4640
000000000000002d 0000000000000000 0 0 32
[50] .gnu.warning[...] PROGBITS 0000000000000000 001e4680
0000000000000039 0000000000000000 0 0 32
[51] .gnu.warning[...] PROGBITS 0000000000000000 001e46c0
0000000000000039 0000000000000000 0 0 32
[52] .gnu.warning[...] PROGBITS 0000000000000000 001e4700
000000000000003a 0000000000000000 0 0 32
[53] .gnu.warning[...] PROGBITS 0000000000000000 001e4740
000000000000003c 0000000000000000 0 0 32
[54] .gnu.warning[...] PROGBITS 0000000000000000 001e4780
000000000000003b 0000000000000000 0 0 32
[55] .gnu.warning[...] PROGBITS 0000000000000000 001e47c0
000000000000003d 0000000000000000 0 0 32
[56] .gnu.warning[...] PROGBITS 0000000000000000 001e4800
000000000000003c 0000000000000000 0 0 32
[57] .gnu.warning[...] PROGBITS 0000000000000000 001e4840
000000000000003b 0000000000000000 0 0 32
[58] .gnu.warning[...] PROGBITS 0000000000000000 001e4880
000000000000003b 0000000000000000 0 0 32
[59] .gnu.warning[...] PROGBITS 0000000000000000 001e48c0
000000000000003a 0000000000000000 0 0 32
[60] .gnu.warning[...] PROGBITS 0000000000000000 001e4900
0000000000000031 0000000000000000 0 0 32
[61] .gnu_debuglink PROGBITS 0000000000000000 001e4934
0000000000000014 0000000000000000 0 0 4
[62] .shstrtab STRTAB 0000000000000000 001e4948
000000000000042c 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),
R (retain), D (mbind), l (large), p (processor specific)
Program Headers:
Type Offset VirtAddr PhysAddr
FileSiz MemSiz Flags Align
PHDR 0x0000000000000040 0x0000000000000040 0x0000000000000040
0x0000000000000310 0x0000000000000310 R 0x8
INTERP 0x00000000001b5e60 0x00000000001b5e60 0x00000000001b5e60
0x000000000000001e 0x000000000000001e R 0x10
[Requesting program interpreter: /usr/lib/ld-linux-x86-64.so.2]
LOAD 0x0000000000000000 0x0000000000000000 0x0000000000000000
0x0000000000023220 0x0000000000023220 R 0x1000
LOAD 0x0000000000024000 0x0000000000024000 0x0000000000024000
0x000000000016b0b9 0x000000000016b0b9 R E 0x1000
LOAD 0x0000000000190000 0x0000000000190000 0x0000000000190000
0x000000000004dabb 0x000000000004dabb R 0x1000
LOAD 0x00000000001ddbe0 0x00000000001debe0 0x00000000001debe0
0x0000000000004ae8 0x000000000000cf90 RW 0x1000
DYNAMIC 0x00000000001e0960 0x00000000001e1960 0x00000000001e1960
0x0000000000000230 0x0000000000000230 RW 0x8
NOTE 0x0000000000000350 0x0000000000000350 0x0000000000000350
0x0000000000000050 0x0000000000000050 R 0x8
NOTE 0x00000000000003a0 0x00000000000003a0 0x00000000000003a0
0x0000000000000044 0x0000000000000044 R 0x4
TLS 0x00000000001ddbe0 0x00000000001debe0 0x00000000001debe0
0x0000000000000010 0x0000000000000088 R 0x8
GNU_PROPERTY 0x0000000000000350 0x0000000000000350 0x0000000000000350
0x0000000000000050 0x0000000000000050 R 0x8
GNU_EH_FRAME 0x00000000001b5e80 0x00000000001b5e80 0x00000000001b5e80
0x000000000000783c 0x000000000000783c R 0x4
GNU_STACK 0x0000000000000000 0x0000000000000000 0x0000000000000000
0x0000000000000000 0x0000000000000000 RW 0x10
GNU_RELRO 0x00000000001ddbe0 0x00000000001debe0 0x00000000001debe0
0x0000000000003420 0x0000000000003420 R 0x1
Section to Segment mapping:
Segment Sections...
00
01 .interp
02 .note.gnu.property .note.gnu.build-id .note.ABI-tag .gnu.hash .dynsym .dynstr .gnu.version .gnu.version_d .gnu.version_r .rela.dyn .rela.plt .relr.dyn
03 .plt .plt.sec .text
04 .rodata .stapsdt.base rodata.cst32 .interp .eh_frame_hdr .eh_frame .gcc_except_table
05 .tdata .init_array .data.rel.ro .dynamic .got .data .bss
06 .dynamic
07 .note.gnu.property
08 .note.gnu.build-id .note.ABI-tag
09 .tdata .tbss
10 .note.gnu.property
11 .eh_frame_hdr
12
13 .tdata .init_array .data.rel.ro .dynamic .got
Dynamic section at offset 0x1e0960 contains 30 entries:
Tag Type Name/Value
0x0000000000000001 (NEEDED) Shared library: [ld-linux-x86-64.so.2]
0x000000000000000e (SONAME) Library soname: [libc.so.6]
0x0000000000000019 (INIT_ARRAY) 0x1debf0
0x000000000000001b (INIT_ARRAYSZ) 16 (bytes)
0x000000006ffffef5 (GNU_HASH) 0x3e8
0x0000000000000005 (STRTAB) 0x17c68
0x0000000000000006 (SYMTAB) 0x54b8
0x000000000000000a (STRSZ) 34893 (bytes)
0x000000000000000b (SYMENT) 24 (bytes)
0x0000000070000000 (Processor Specific: 70000000) 0x241d0
0x0000000070000001 (Processor Specific: 70000001) 0x1c0
0x0000000070000003 (Processor Specific: 70000003) 0x10
0x0000000000000003 (PLTGOT) 0x1e1b90
0x0000000000000002 (PLTRELSZ) 672 (bytes)
0x0000000000000014 (PLTREL) RELA
0x0000000000000017 (JMPREL) 0x22e78
0x0000000000000007 (RELA) 0x22350
0x0000000000000008 (RELASZ) 2856 (bytes)
0x0000000000000009 (RELAENT) 24 (bytes)
0x000000006ffffffc (VERDEF) 0x21d60
0x000000006ffffffd (VERDEFNUM) 41
0x000000000000001e (FLAGS) BIND_NOW STATIC_TLS
0x000000006ffffffb (FLAGS_1) Flags: NOW
0x000000006ffffffe (VERNEED) 0x22310
0x000000006fffffff (VERNEEDNUM) 1
0x000000006ffffff0 (VERSYM) 0x204b6
0x0000000000000024 (RELR) 0x23118
0x0000000000000023 (RELRSZ) 264 (bytes)
0x0000000000000025 (RELRENT) 8 (bytes)
0x0000000000000000 (NULL) 0x0