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
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: 405376 (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: 30
Section header string table index: 29
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.bu[...] NOTE 0000000000000270 00000270
0000000000000024 0000000000000000 A 0 0 4
[ 2] .gnu.hash GNU_HASH 0000000000000298 00000298
0000000000000024 0000000000000000 A 3 0 8
[ 3] .dynsym DYNSYM 00000000000002c0 000002c0
0000000000000510 0000000000000018 A 4 1 8
[ 4] .dynstr STRTAB 00000000000007d0 000007d0
0000000000000340 0000000000000000 A 0 0 1
[ 5] .gnu.version VERSYM 0000000000000b10 00000b10
000000000000006c 0000000000000002 A 3 0 2
[ 6] .gnu.version_r VERNEED 0000000000000b80 00000b80
00000000000000e0 0000000000000000 A 4 3 8
[ 7] .rela.dyn RELA 0000000000000c60 00000c60
0000000000003888 0000000000000018 A 3 0 8
[ 8] .rela.plt RELA 00000000000044e8 000044e8
0000000000000030 0000000000000018 AI 3 23 8
[ 9] .init PROGBITS 0000000000005000 00005000
000000000000001b 0000000000000000 AX 0 0 4
[10] .plt PROGBITS 0000000000005020 00005020
0000000000000030 0000000000000010 AX 0 0 16
[11] .plt.got PROGBITS 0000000000005050 00005050
0000000000000008 0000000000000008 AX 0 0 8
[12] .text PROGBITS 0000000000005060 00005060
000000000003b8d7 0000000000000000 AX 0 0 16
[13] .fini PROGBITS 0000000000040938 00040938
000000000000000d 0000000000000000 AX 0 0 4
[14] .rodata PROGBITS 0000000000041000 00041000
0000000000008e20 0000000000000000 A 0 0 16
[15] .eh_frame_hdr PROGBITS 0000000000049e20 00049e20
0000000000000e94 0000000000000000 A 0 0 4
[16] .eh_frame PROGBITS 000000000004acb8 0004acb8
0000000000004ee8 0000000000000000 A 0 0 8
[17] .gcc_except_table PROGBITS 000000000004fba0 0004fba0
0000000000000e68 0000000000000000 A 0 0 4
[18] .tbss NOBITS 0000000000051960 00051960
0000000000000050 0000000000000000 WAT 0 0 8
[19] .init_array INIT_ARRAY 0000000000051960 00051960
0000000000000010 0000000000000008 WA 0 0 8
[20] .fini_array FINI_ARRAY 0000000000051970 00051970
0000000000000008 0000000000000008 WA 0 0 8
[21] .data.rel.ro PROGBITS 0000000000051978 00051978
0000000000001ec0 0000000000000000 WA 0 0 8
[22] .dynamic DYNAMIC 0000000000053838 00053838
0000000000000200 0000000000000010 WA 4 0 8
[23] .got PROGBITS 0000000000053a38 00053a38
00000000000005c8 0000000000000008 WA 0 0 8
[24] .data PROGBITS 0000000000054000 00054000
0000000000000060 0000000000000000 WA 0 0 8
[25] .bss NOBITS 0000000000054060 00054060
0000000000000068 0000000000000000 WA 0 0 8
[26] .comment PROGBITS 0000000000000000 00054060
000000000000004f 0000000000000001 MS 0 0 1
[27] .symtab SYMTAB 0000000000000000 000540b0
0000000000003ea0 0000000000000018 28 615 8
[28] .strtab STRTAB 0000000000000000 00057f50
000000000000af1c 0000000000000000 0 0 1
[29] .shstrtab STRTAB 0000000000000000 00062e6c
000000000000010d 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
0x0000000000004518 0x0000000000004518 R 0x1000
LOAD 0x0000000000005000 0x0000000000005000 0x0000000000005000
0x000000000003b945 0x000000000003b945 R E 0x1000
LOAD 0x0000000000041000 0x0000000000041000 0x0000000000041000
0x000000000000fa08 0x000000000000fa08 R 0x1000
LOAD 0x0000000000051960 0x0000000000051960 0x0000000000051960
0x0000000000002700 0x0000000000002768 RW 0x1000
DYNAMIC 0x0000000000053838 0x0000000000053838 0x0000000000053838
0x0000000000000200 0x0000000000000200 RW 0x8
NOTE 0x0000000000000270 0x0000000000000270 0x0000000000000270
0x0000000000000024 0x0000000000000024 R 0x4
TLS 0x0000000000051960 0x0000000000051960 0x0000000000051960
0x0000000000000000 0x0000000000000050 R 0x8
GNU_EH_FRAME 0x0000000000049e20 0x0000000000049e20 0x0000000000049e20
0x0000000000000e94 0x0000000000000e94 R 0x4
GNU_STACK 0x0000000000000000 0x0000000000000000 0x0000000000000000
0x0000000000000000 0x0000000000000000 RW 0x10
GNU_RELRO 0x0000000000051960 0x0000000000051960 0x0000000000051960
0x00000000000026a0 0x00000000000026a0 R 0x1
Section to Segment mapping:
Segment Sections...
00 .note.gnu.build-id .gnu.hash .dynsym .dynstr .gnu.version .gnu.version_r .rela.dyn .rela.plt
01 .init .plt .plt.got .text .fini
02 .rodata .eh_frame_hdr .eh_frame .gcc_except_table
03 .init_array .fini_array .data.rel.ro .dynamic .got .data .bss
04 .dynamic
05 .note.gnu.build-id
06 .tbss
07 .eh_frame_hdr
08
09 .init_array .fini_array .data.rel.ro .dynamic .got
Dynamic section at offset 0x53838 contains 28 entries:
Tag Type Name/Value
0x0000000000000001 (NEEDED) Shared library: [libgcc_s.so.1]
0x0000000000000001 (NEEDED) Shared library: [libc.so.6]
0x0000000000000001 (NEEDED) Shared library: [ld-linux-x86-64.so.2]
0x000000000000000c (INIT) 0x5000
0x000000000000000d (FINI) 0x40938
0x0000000000000019 (INIT_ARRAY) 0x51960
0x000000000000001b (INIT_ARRAYSZ) 16 (bytes)
0x000000000000001a (FINI_ARRAY) 0x51970
0x000000000000001c (FINI_ARRAYSZ) 8 (bytes)
0x000000006ffffef5 (GNU_HASH) 0x298
0x0000000000000005 (STRTAB) 0x7d0
0x0000000000000006 (SYMTAB) 0x2c0
0x000000000000000a (STRSZ) 832 (bytes)
0x000000000000000b (SYMENT) 24 (bytes)
0x0000000000000003 (PLTGOT) 0x53a38
0x0000000000000002 (PLTRELSZ) 48 (bytes)
0x0000000000000014 (PLTREL) RELA
0x0000000000000017 (JMPREL) 0x44e8
0x0000000000000007 (RELA) 0xc60
0x0000000000000008 (RELASZ) 14472 (bytes)
0x0000000000000009 (RELAENT) 24 (bytes)
0x000000000000001e (FLAGS) BIND_NOW
0x000000006ffffffb (FLAGS_1) Flags: NOW
0x000000006ffffffe (VERNEED) 0xb80
0x000000006fffffff (VERNEEDNUM) 3
0x000000006ffffff0 (VERSYM) 0xb10
0x000000006ffffff9 (RELACOUNT) 552
0x0000000000000000 (NULL) 0x0