use after free 堆!堆!堆!
终于对堆的结构有了一定的了解,开始做堆的题目,恰巧攻防世界xctf中有这么一题可以练练手,还是挺不错的。。。
对于use after free呢,这里有ctf-wiki的学习资料:https://ctf-wiki.github.io/ctf-wiki/pwn/linux/glibc-heap/use_after_free-zh/
写的非常详细,很实用。
拿到题目,下载附件,习惯性的查看保护:

只开了Canary保护,没开PIE,很好。
接下来进入IDA查看程序逻辑:

可以看到,程序有四个功能,1.添加一个note。2.删除一个note。3.打印note的内容。4.退出程序。
可以看到,这是一个典型的菜单题,对于这种题目,相信大家也见的不少了。
我们先看看功能1:

程序会先申请一个大小为0x8的堆指针,然后让你对所要申请的堆编辑大小,最后让你在你所申请的堆中赋值。
再来看看删除功能:

312

被折叠的 条评论
为什么被折叠?



