supermarket(uaf)!!!!
在这道题目我花费了很长的世界去理解,因为绕进了死圈子
例行检查我就不放了
关键处在于选择5
使用了realloc,却没有让结构体指针node-> description正确指回去
(11条消息) 攻防世界PWN之Supermarket题解_seaaseesa的博客-CSDN博客
这位师傅博客上面有对realloc的具体解析
这道题的思路就是,我们申请一个0x80的堆,然后通过选择5的realloc申请一个0x90的堆
,申请后0x80的堆会被free掉,然后在申请一个0x20大小的堆,这里就形成了一个uaf,我们通过修改0x90堆里面的内容,可以实现对0x20堆里面的description这个指针的修改,让atoi_got的值去覆盖这个指针
那么当我们修改0x20大小堆的内容时,因为指针指向的是atoi_got处所以就可以在此处覆盖system的值从而拿到shell
完整exp如下
结束!