heap: chunks and bins
chunks
- 在x86_64上chunk多加16字节的metadata,x86上多加8字节的meatadata
- metadata := prev size + size + flags(A,M,P)
prev size: 前面相邻chunk被free,则代表前chunk大小
size:代表chunk大小
P(0x01): Previous in Use ,表示前面的chunk是否已分配在使用,P == 0,该chunk之前的chunk被free
M(0x02): Is MMAPPED,表示该chunk是否来自mmap
A(0x04): Non Main Arena, 表示该chunk是否来自外部的main area - user data:存放了用户数据
bins
fastbins
tcache
参考
- 原文作者:winsun
- 原文链接:https://winsun.github.io/fightsec/post/pwn_11_heap_chunk_bins/
- 版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 4.0 国际许可协议进行许可,非商业转载请注明出处(作者,原文链接),商业转载请联系作者获得授权。