Ich studiere den Haufen Glibc.Warum gibt es in der libc.so-Symboltabelle keine main_arena, während es in malloc.c von glibc2.23 eine gibt?
Es gibt kein main_arena-Symbol in libc.so, auch wenn ich versuche, es mit pwntool auszugeben. Wenn ich jedoch ein Testprogramm debugge, kann ich die main_arena-Struktur drucken.
gdb-peda$ p main_arena
$1 = {
mutex = 0x0,
flags = 0x0,
fastbinsY = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0},
top = 0x0,
last_remainder = 0x0,
bins = {0x0 <repeats 254 times>},
binmap = {0x0, 0x0, 0x0, 0x0},
next = 0x7ffff7dd1b20 <main_arena>,
next_free = 0x0,
attached_threads = 0x1,
system_mem = 0x0,
max_system_mem = 0x0
}
Und außerdem, wenn ich Testprogramm mit -m32 kompiliere, kann main_arena auch nicht gefunden werden.
Vielen Dank. Das ist eine sehr tiefe Antwort! –