Heap block overlap
本文最后更新于 2025年12月24日 晚上
参考
chunk的结构(堆)
prev_size:若前一个物理相邻的chunk是free chunk,则表示其大小。否则用于存储前一个chunk的数据

- x8664下prev_size 和 size+A+M+P 各自占8个字节
- i386下prev_size 和 size+A+M+P 各自占4个字节
- chunk的起始大小为:Initial_size = prev_size + (size+A+M+P) == 0x10 (x64)/0x8(x32)
- chunk的最小大小为
- (x64):0x20 (0x21) [Initial_size+0x10]
- (x32):0x10 (0x11) [Initial_size+0x8]
Heap block overlap
https://tforevery.github.io/PWN/HEAP/Heap-block-overlap/