1 |
2016-12-21 7:06 GMT-05:00 Anthony G. Basile <basile@××××××××××××××.edu>: |
2 |
> |
3 |
> First, can you run `readelf -l` on libuClibc-0.1.0.19.so and several |
4 |
> binaries that fail. |
5 |
|
6 |
drener@×.pedro 0 ~ |
7 |
$ readelf -l /lib/libuClibc-0.1.0.19.so |
8 |
|
9 |
Elf file type is DYN (Shared object file) |
10 |
Entry point 0x14bc0 |
11 |
There are 10 program headers, starting at offset 64 |
12 |
|
13 |
Program Headers: |
14 |
Type Offset VirtAddr PhysAddr |
15 |
FileSiz MemSiz Flags Align |
16 |
PHDR 0x0000000000000040 0x0000000000000040 0x0000000000000040 |
17 |
0x0000000000000230 0x0000000000000230 R E 8 |
18 |
INTERP 0x000000000006b610 0x000000000006b610 0x000000000006b610 |
19 |
0x0000000000000016 0x0000000000000016 R 10 |
20 |
[Requesting program interpreter: /lib/ld64-uClibc.so.0] |
21 |
LOAD 0x0000000000000000 0x0000000000000000 0x0000000000000000 |
22 |
0x0000000000081d78 0x0000000000081d78 R E 200000 |
23 |
LOAD 0x0000000000081f20 0x0000000000281f20 0x0000000000281f20 |
24 |
0x00000000000015b4 0x000000000001ab48 RW 200000 |
25 |
DYNAMIC 0x0000000000082760 0x0000000000282760 0x0000000000282760 |
26 |
0x0000000000000190 0x0000000000000190 RW 8 |
27 |
TLS 0x0000000000081f20 0x0000000000281f20 0x0000000000281f20 |
28 |
0x0000000000000008 0x0000000000000018 R 8 |
29 |
GNU_EH_FRAME 0x000000000006b628 0x000000000006b628 0x000000000006b628 |
30 |
0x0000000000003b8c 0x0000000000003b8c R 4 |
31 |
GNU_STACK 0x0000000000000000 0x0000000000000000 0x0000000000000000 |
32 |
0x0000000000000000 0x0000000000000000 RWE 10 |
33 |
GNU_RELRO 0x0000000000081f20 0x0000000000281f20 0x0000000000281f20 |
34 |
0x00000000000010e0 0x00000000000010e0 R 1 |
35 |
PAX_FLAGS 0x0000000000000000 0x0000000000000000 0x0000000000000000 |
36 |
0x0000000000000000 0x0000000000000000 8 |
37 |
|
38 |
Section to Segment mapping: |
39 |
Segment Sections... |
40 |
00 |
41 |
01 .interp |
42 |
02 .gnu.hash .dynsym .dynstr .rela.dyn .rela.plt .plt .text |
43 |
__libc_freeres_fn .rodata .interp .eh_frame_hdr .eh_frame |
44 |
.gcc_except_table |
45 |
03 .tdata .fini_array .data.rel.ro .dynamic .got .data .bss |
46 |
04 .dynamic |
47 |
05 .tdata .tbss |
48 |
06 .eh_frame_hdr |
49 |
07 |
50 |
08 .tdata .fini_array .data.rel.ro .dynamic .got |
51 |
09 |
52 |
|
53 |
drener@×.pedro 0 ~ |
54 |
$ readelf -l /bin/coreutils |
55 |
readelf: Error: Reading 0x17000300000000 bytes extends past end of |
56 |
file for string table |
57 |
|
58 |
Elf file type is DYN (Shared object file) |
59 |
Entry point 0x12130 |
60 |
There are 9 program headers, starting at offset 64 |
61 |
|
62 |
Program Headers: |
63 |
Type Offset VirtAddr PhysAddr |
64 |
FileSiz MemSiz Flags Align |
65 |
PHDR 0x0000000000000040 0x0000000000000040 0x0000000000000040 |
66 |
0x00000000000001f8 0x00000000000001f8 R E 8 |
67 |
INTERP 0x0000000000000238 0x0000000000000238 0x0000000000000238 |
68 |
0x0000000000000016 0x0000000000000016 R 1 |
69 |
[Requesting program interpreter: /lib/ld64-uClibc.so.0] |
70 |
LOAD 0x0000000000000000 0x0000000000000000 0x0000000000000000 |
71 |
0x000000000011a2bc 0x000000000011a2bc R E 200000 |
72 |
LOAD 0x000000000011b0f0 0x000000000031b0f0 0x000000000031b0f0 |
73 |
0x000000000000a900 0x000000000001efb0 RW 200000 |
74 |
DYNAMIC 0x0000000000124000 0x0000000000324000 0x0000000000324000 |
75 |
0x0000000000000240 0x0000000000000240 RW 8 |
76 |
readelf: Error: no .dynamic section in the dynamic segment |
77 |
GNU_EH_FRAME 0x0000000000109b4c 0x0000000000109b4c 0x0000000000109b4c |
78 |
0x0000000000002d24 0x0000000000002d24 R 4 |
79 |
GNU_STACK 0x0000000000000000 0x0000000000000000 0x0000000000000000 |
80 |
0x0000000000000000 0x0000000000000000 RW 8 |
81 |
GNU_RELRO 0x000000000011b0f0 0x000000000031b0f0 0x000000000031b0f0 |
82 |
0x0000000000009f10 0x0000000000009f10 R 1 |
83 |
PAX_FLAGS 0x0000000000000000 0x0000000000000000 0x0000000000000000 |
84 |
0x0000000000000000 0x0000000000000000 8 |
85 |
|
86 |
drener@×.pedro 0 ~ |
87 |
$ readelf -l /bin/coreutils |
88 |
readelf: Error: Reading 0x17000300000000 bytes extends past end of |
89 |
file for string table |
90 |
|
91 |
Elf file type is DYN (Shared object file) |
92 |
Entry point 0x12130 |
93 |
There are 9 program headers, starting at offset 64 |
94 |
|
95 |
Program Headers: |
96 |
Type Offset VirtAddr PhysAddr |
97 |
FileSiz MemSiz Flags Align |
98 |
PHDR 0x0000000000000040 0x0000000000000040 0x0000000000000040 |
99 |
0x00000000000001f8 0x00000000000001f8 R E 8 |
100 |
INTERP 0x0000000000000238 0x0000000000000238 0x0000000000000238 |
101 |
0x0000000000000016 0x0000000000000016 R 1 |
102 |
[Requesting program interpreter: /lib/ld64-uClibc.so.0] |
103 |
LOAD 0x0000000000000000 0x0000000000000000 0x0000000000000000 |
104 |
0x000000000011a2bc 0x000000000011a2bc R E 200000 |
105 |
LOAD 0x000000000011b0f0 0x000000000031b0f0 0x000000000031b0f0 |
106 |
0x000000000000a900 0x000000000001efb0 RW 200000 |
107 |
DYNAMIC 0x0000000000124000 0x0000000000324000 0x0000000000324000 |
108 |
0x0000000000000240 0x0000000000000240 RW 8 |
109 |
readelf: Error: no .dynamic section in the dynamic segment |
110 |
GNU_EH_FRAME 0x0000000000109b4c 0x0000000000109b4c 0x0000000000109b4c |
111 |
0x0000000000002d24 0x0000000000002d24 R 4 |
112 |
GNU_STACK 0x0000000000000000 0x0000000000000000 0x0000000000000000 |
113 |
0x0000000000000000 0x0000000000000000 RW 8 |
114 |
GNU_RELRO 0x000000000011b0f0 0x000000000031b0f0 0x000000000031b0f0 |
115 |
0x0000000000009f10 0x0000000000009f10 R 1 |
116 |
PAX_FLAGS 0x0000000000000000 0x0000000000000000 0x0000000000000000 |
117 |
0x0000000000000000 0x0000000000000000 8 |