Pointer Redirecting
最后更新于
最后更新于
如果一个函数调用将使用位于堆栈中的字符串的地址,可以利用缓冲区溢出来覆盖此地址,并在二进制文件中放入指向不同字符串的地址。
例如,如果一个**system
函数调用将使用一个字符串的地址来执行命令**,攻击者可以在堆栈中放置不同字符串的地址,export PATH=.:$PATH
,并在当前目录中创建一个以新字符串的第一个字母命名的脚本,因为这将由二进制文件执行。
您可以在以下位置找到一个示例:
32位,更改堆栈中标志字符串的地址,以便通过puts
打印出来
与字符串指针相同,但应用于函数,如果堆栈包含将被调用的函数的地址,则可以更改它(例如调用**system
**)。
您可以在以下位置找到一个示例:
如果您想看到您的公司在HackTricks中做广告或下载PDF格式的HackTricks,请查看!
获取
探索,我们独家收藏品
加入 💬 或 或在Twitter上关注我们 🐦 。
通过向和 github仓库提交PR来分享您的黑客技巧。