首页
论坛
课程
招聘
[原创]docPrint Pro 8.0 - 'Add URL' Buffer Overflow 逆向分析
2020-7-31 23:21 1388

[原创]docPrint Pro 8.0 - 'Add URL' Buffer Overflow 逆向分析

2020-7-31 23:21
1388

调试器:ollydbg
平台:windows 10 x64(作者的poc利用平台为Windows 7 32-bit)
7-26的一个缓冲区溢出漏洞,PE结构的DllCharacteristics字段为0,意味着此程序未开启ASLR和DEP。


根据poc中的提示,打开文件,并attach程序,第一次会在0x405E41处断下并发生违规写入。那么首先需要找到的便是溢出地址的产生即edi的地址从哪来。

观察寄存器发现ebp为0,说明并不能使用栈回溯,观察0x405e19处的代码,je 0x405e26中间跳过retn,说明函数的入口在0x405e00,既然是函数调用那么必然要使用call,那么必定会压入函数返回地址,在0x405e00出下断,那么esp处就是函数的返回地址。在0x405e00断下后发现edi为0x1。
说明edi并没有赋值,那么赋值动作就发生在0x405e1-0x40500中间,阅读代码0x405e31处给edx赋值,0x405e3c处将edx的值赋给edi。那么就得到了漏洞发生地址,缓冲区大小=函数返回地址-esp+0x130。
漏洞是由于获取文件属性失败时,拷贝字符串发生的缓冲区溢出漏洞


2022 KCTF春季赛【最佳人气奖】火热评选中!快来投票吧~

上传的附件:
收藏
点赞0
打赏
分享
最新回复 (0)
游客
登录 | 注册 方可回帖
返回