roderick

读万卷书,行万里路!

纸上得来终觉浅,绝知此事要躬行!

ciscn_2019_ne_3

总结一道很无语的rop的题目,由于在puts调用中会卡在[ebp - 0x46c]这样的语句,所以只能把栈往抬高,避免访问到不可写的内存区域。 如

ciscn_2019_c_7

总结主要是限制了UAF的chunk的大小为0x20,并且限制了add的次数,就很难受,并且题目用的还是calloc,没有使用tcache。最

linkctf_2018.7_babypie

总结baby中的baby,记录下exp,水一篇博客。 Exp 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 from pwncli import * cli_script() p:tube = gift['io'] elf:ELF = gift['elf'] libc: ELF = gift['libc'] p.sendafter("Input your Name:\n", "a" * 0x29) p.recvuntil("a" * 0x29) msg =

jarvisoj_itemboard

总结基础的UAF的题,只记录下exp吧。 Exp 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 from pwncli import * cli_script() p:tube = gift['io'] elf:ELF = gift['elf']

bbctf_2020_write

总结题目可以任意地址写任意值,但是没有退出,因此可以考虑劫持rtld_global结构体中的一些函数指针。 利用exit函数的两个hook,同

gwctf_2019_jiandan_pwn1

总结题如其名,虽然简单,但是有个小坑,就是栈溢出的过程中,会把索引给覆盖掉,所以要注意索引的值: 即这里的v4为索引,在rbp的下方,溢出的时

RedPacket_SoEasyPwn

总结根据本题,学习与收获有: 总结一个特殊的largebin attack,其实也不特殊,照着源码就能看出来,但是往往很少有题目这么考。即在往堆

GKCTF-2021-checkin

总结根据本题,学习与收获有: 如果程序的栈溢出只覆盖到rbp,那么大概率也是考栈迁移,只是刚好当前函数结束后会执行依次leave; ret,然后
0%