一道简单的通过leave栈迁移实现更长的rop链的题#!/usr/bin/env python # coding=utf-8 from pwn import * ...
此题和BUU&XCTF-hitcontraining_uaf-WP很像,都是UAF,漏洞的原因也很像,漏洞点是#!/usr/bin/env python # coding=utf-8 from pwn import ...
这道题好难的感觉,看了别人的WP做了一天虽然是迷迷糊糊的拿到了flag但是还是有一点不能理解(2021.1.3更新:由于libc的问题被解决,现在基本理解了,如果你也和我一样对最后伪造的两个堆块的大小不理解那么希望这篇文章能帮到你)。主要的漏洞出在delete函数中,这里的检验十分不完善,可以double free,还可以free下标为负数的chunk。所以在这里有两种利用方法,一是通过整数...
写在前面:这篇WP很简陋,我只写了重点堆的利用我也开始一步步的开始“上道”了,这是一道比较简单的堆溢出,主要的难点是程序比较复杂,分析比较麻烦(毕竟我没经历过逆向的洗礼)。简单的来讲就是这个改变说明的函数中进行了realloc重新分配空间却没有更新结构体储存size的变量,于是我们先申请一个较大的discreption在重新申请较小的,由于realloc在处理chunk变小时是直接切割,我们...