07 2024 档案
摘要:前提: 最近遇到一个使用read函数但是buff段有字数限制无法进行栈溢出得题目,但是题目中有printf函数,我们可以使用格式化字符串将len值修改,从而进行栈溢出使用libc从而获取shell. 首先我们先看一下程序: 先checksec一下 在看一下file 没有任何保护并且是动态链接 我们发
阅读全文
摘要:原理 基本rop之一,意为call system,控制程序执行系统调用,获取shell。 X32 我们的目的是要把对应获取 shell 的系统调用的参数放到对应的寄存器中。即: execve("/bin/sh",NULL,NULL) 向寄存器存放的参数分别为: 系统调用号,即 eax 应该为 0xb
阅读全文
摘要:ret2csu 个人见解 csu实际上是基于libc的一种泄露函数基地址的做法,其原理还是基于rop链的构造。大多时候我们难以找到每个寄存器对应的gadgets,但是当我们遇到wirte函数泄露的时候却必须要控制三个寄存器(64位首先存入数据的rdi,rsi,rdx),这时候,我们就可以利用 x64
阅读全文