摘要:
概述 有时候输入的字符串并不是保存在栈上的,这样没法直接在栈上布置地址去控制printf函数的参数,这种情况下的利用相对比较复杂。 程序在调用时会将rbp压入栈中或者将一些指针变量存在栈中等操作,所以栈上会有很多保存着栈上地址的指针,而且容易找到三个指针p1、p2、p3,形成p1指向p2、p2指向p 阅读全文
摘要:
综述 通过格式化字符串漏洞可以进行任意内存的读写。由于函数参数通过栈进行传递,因此使用%X$p(X为任意正整数)可以泄露栈上的数据。并且,在能对栈上数据进行控制的情况下,可以事先将想泄露的地址写在栈上,再使用%X$p,就可以以字符串格式输出想泄露的地址。 除此之外,由于"%n"可以将已经成功输出的字 阅读全文