avatar
文章
12
标签
11
分类
3
首页
归档
标签
分类
友情链接
  • f0und
  • secreu
  • 0x4A
VACSROP 返回首页
首页
归档
标签
分类
友情链接
  • f0und
  • secreu
  • 0x4A

SROP

发表于2025-10-26|更新于2025-10-30
|浏览量:
文章作者: Vac啊
文章链接: http://vac011.com/2025/10/26/SROP/
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 VAC!
上一篇
从_start到main: __libc_start_main与__libc_start_call_main
下一篇
format string
格式化字符串漏洞格式化字符串漏洞是由于程序在处理用户输入的格式化字符串时,没有正确验证输入内容,导致攻击者可以通过精心构造的格式化字符串来读取或写入内存中的任意数据,从而实现信息泄露或代码执行等攻击。 一般通过以下格式化符触发漏洞: %N$x: 读取寄存器或栈上第N个数据并以十六进制格式输出 %N$p: 读取寄存器或栈上第N个数据并以指针格式输出 %N$s: 读取寄存器或栈上第N个地址并输出该地址指向的字符串;若出现在scanf中且未限制长度,则存在缓冲区溢出漏洞 %N$n: 将已经输出的字符数写入寄存器或栈上第N个地址指向的内存位置 %Nc: 打印一个字符并用空格填充到N个字符 其中使用%N$x和%N$p可以泄露栈上的数据,而使用%N$s结合栈上的地址几乎可以进行任意地址读;使用%Nc与%N$n再结合栈上的地址可以实现任意地址写。 对于栈上构造地址,一般有两种情况: 一是可以直接对栈进行写操作,则可以直接将地址写入栈中; 而当无法直接写入栈时(比如只能向.bss段写入数据),即非栈格式化字符串的情况,则可以通过间接构造的方式来实现任意地址读写:先在栈中找到一个可控栈指针,...
avatar
Vac啊
I quit, so what
文章
12
标签
11
分类
3
Follow Me
公告
This is my Blog
最新文章
_IO_FILE_plus2025-10-30
heap2025-10-30
从_start到main: __libc_start_main与__libc_start_call_main2025-10-26
SROP2025-10-26
format string2025-10-26
© 2025 By Vac啊框架 Hexo 7.3.0|主题 Butterfly 5.5.0