- 第一部分: Introduction to Exploit Development
- 第二部分:Saved Return Pointer Overflows
- 第三部分:Structured Exception Handler (SEH)
- 第四部分:Egg Hunters
- 第五部分:Unicode 0x00410041
- 第六部分:WIN32 shellcode 编写
- 第七部分:返回导向编程(ROP)
- 第八部分:堆喷射第一节【覆写 EIP】
- 第九部分:堆喷射[第二章:UAF]
- 第十部分:内核利用程序之栈溢出
- 第十一部分:内核利用程序之任意位置任意写
- 第十二部分:内核利用程序之空指针引用
- 第十三部分:内核利用程序之未初始化栈变量
- 第十四部分:内核利用程序之整数溢出
- 第十五部分:内核利用程序之 UAF
- 第十六部分:内核利用程序之池溢出
- 第十七部分:内核利用程序之任意位置任意写
- 第十八篇:内核利用程序之 RS2 Bitmap 巫术
- 第十九篇:内核利用程序之 Razer
文章来源于网络收集而来,版权归原创者所有,如有侵权请及时联系!
重现崩溃
下面是文件格式的漏洞利用框架,我们会创建一个.plf 文件,写入很多字符. 稍后 DVD Player 读取这个文件就会造成缓冲区溢出.(这与通过 TCP 或 UDP 发送超长字符串有很大不同). 唯一的缺点是我们需要欺骗受害者打开这个文件。
#!/usr/bin/python -w filename="evil.plf" buffer = "A"*2000 textfile = open(filename , 'w') textfile.write(buffer) textfile.close()
创建 plf 文件,用 immunity debugger 附加播放器并打开这个播放文件,正如预期那样,播放器崩溃了. Shift+F9 跳过初始异常(因为初始的异常会导致不同的漏洞利用技术而我们只关心 SEH). 你可以看到下面的 CPU 寄存器截图(你会注意到一个寄存器已经被清零了) 另外一张图显示我们已经覆写掉 SEH 记录。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论