heap1,2
@TOC
长城杯比第五空间温柔多了,第五空间一道rop,之后就直接vm,musl都没学过,还有个c++逆向8出来。打完国赛(写了一道简单堆题,orw调一晚上没出来,服了)之后划水时间太长了,8月下旬才开始继续学堆,争取10月底前把vm,musl,mips,arm这种其他架构(不知道算不算)的pwn学习一下。
1.K1ng_in_h3Ap_I
题目给了3个字节libc地址,操作性还是挺强的,借用残留指针可以不用爆破打io_stdout,泄露出完整libc,有libc的话就随便打了。
不过打比赛的时候想着借用残留指针,想到exit_hook里面好像本来就有libc里面的地址,就用unsorted bin attack在前面打一个0x7f,申请过去覆盖exit_hook为one_gadget就好了。
想到用unsorted bin attack,好像思路又宽阔了,unsorted bin attack打出来本来就是libc里面的地址,直接在各种hook里面打出一个0x7f******,覆盖低地址也可以随便打。
这么想的话啥时候万一不能打io的话,1/256爆破两个字节也可以getshell。
不过通用性不强,还是打io比较好,1/16爆破也容易出。
1 | #!/usr/bin/env python3 |
2.K1ng_in_h3Ap_II
tcache dup+orw
国赛的时候silverwolf就卡在这,终于给我学会了。。。
1 | #!/usr/bin/env python3 |
-------------本文结束感谢您的阅读-------------