读万卷书,行万里路!
纸上得来终觉浅,绝知此事要躬行!
总结根据本题,学习与收获有: 碰到分支比较复杂,流程比较长的题目,首先定位一下有没有泄露出flag的地方,有没有执行system("
解题思路题目还挺有趣的,点在于需要循环进行fmt_attack。栈上某个地址存储着fmt_attack_flag,当其不为0的时候,会直接执
解题思路一道很有趣的虚拟机的题目,抽象实现了一套寄存器、代码段、数据段。解题思路如下: 利用一系列操作,将一个libc的地址放置在寄存器中 打印
解题思路 利用溢出修改指针的洞,将指针修改到stdout结构体上方,修改flag为0xfbad1800,然后修改IO_write_base为_
总结很基础的unlink,只记录下exp,不对题目做过多的分析。注意一点,对于含有tcache bin的glibc版本,需要先把tcache b
总结根据本题,学习与收获有: 一般来说,在libc-2.23.so中,能用unlink的题目,基本可以用unsorted bin attack + IO_FILE劫
总结根据本题,学习与收获有: 一般来说,在libc-2.23.so中,能用unlink的题目,基本可以用unsorted bin attack + IO_FILE劫
简介house of spirit是一种针对fastbin的堆攻击方法,其核心操作是在目标区域伪造fastbin chunk,然后释放该fake ch
解题思路 利用unsorted bin的fd指针,爆破修改低地址的第2个字节,劫持fastbin到stdout,修改flag为0xfbad180
题目分析简单的格式化字符串,修改got@puts为main函数地址制造循环即可: 先制造循环 修改printf@got为system@plt 输入
题目分析 经典的堆的格式化字符串,找一个指针链作为跳板即可。直接上exp。这里我直接使用ebp指针链来攻击。 最终EXP 1 2 3 4 5 6 7 8 9 10 11 12
总结本题比较简单,就是题目流程比较复杂一点,用到的知识点就一个: 当chunk被放置到unsorted bin中时,其fd指针会指向main_a
能在buuctf上打比赛还是很舒服的,两道pwn题比较基础,wp就随便写一下啦! 1、ticket checksec 运行环境为ubuntu16.04,libc
总结根据本题,学习与收获有: 刚开始尝试利用read的返回值来构造execve的syscall,后来发现基本没有办法。后来查了下资料,才知道需
总结根据本题,学习与收获有: tcache_perthread_struct这个结构体也是阔以释放的,并且可以将它释放到unsorted bin
总结根据本题,学习与收获有: 要善于从多个方程组中总结出来未知数和已知数的关系,在同余式中,要善于利用余数、最小公倍数和最大公约数一些性质。大
总结根据本题,学习与收获有: srop用于溢出空间比较大的场景,需要注意:如果将frame的rip设置为syscall;ret,那么rsp指向
总结根据本题,学习与收获有很多,因为本题涉及到的知识点很多,无法一一详述。主要的收获有: house of orange利用一般发生在程序没有free函数的
总结根据本题,学习与收获有: libc的got表一般是可写的,保护一般是Partial RELRO,即.got.plt是可写的。 one_gadg
总结根据本题,学习与收获有: 根据ctfwiki中的前向合并技巧,当不存在一个存储chunk的堆地址的已知地址时,可以利用main_arena