您的位置:首页 > 其它

RM2MP3溢出漏洞报告【分析篇】

2017-02-28 16:29 309 查看
版本:2.7.3.7000

工具:OllyDbg1.1

环境:win7 sp1 x86

时间:2016.12.22

一.收集信息

       •1.因为是读取文件时出现的问题,所以可能用到的API函数:CreateFileA/W

       •2.准备之前的利用漏洞的m3u文件

二.下断点

       •1.下CreateFileA、CreateFileW函数的断点

            


       •2.最后我们在CreateFileW函数下断了下来

      


三.堆栈回溯

•1.找到调用地点和返回错误地点:



•2.函数开头:



•3.函数结尾:



四.找到返回地址

      •1.找到返回地址的堆栈地址,下个内存写入断点

           


      


      •2.找到了第一处改变返回地址的地方:


5.关键点

•找到另一处改变返回地址的地方,这次是最关键的,因为这是我们写的jmp esp的地址:



结论:

•1.溢出的原因就是写入的时候没有检查堆栈的边界,以致破坏了原来的堆栈。

•2.再者,函数开头和返回之前有都有0x8918这个数字,而且我们写的m3u也是在0x8918附近出现问题的,推断应该是作者设计的m3u文件的最大大小,但是没有做最大判断,以至于文件过大,影响了后来的操作。

•3.推荐使用安全版函数strcpy_s等等保证边界不溢出。

附原程序下载地址:

链接:http://pan.baidu.com/s/1c2Midc0 密码:z690
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: