首页
社区
课程
招聘
[求助]由于前期垃圾字节覆盖ECX导致无法运行到覆盖的SEH
发表于: 2013-4-24 19:51 6036

[求助]由于前期垃圾字节覆盖ECX导致无法运行到覆盖的SEH

2013-4-24 19:51
6036

图1

图2
由于前期垃圾字节覆盖ECX(图1),导致中途报错(图2图3),无法运行至被覆盖的SEH(图4),求解法!

图3

图4

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

上传的附件:
收藏
免费
支持
分享
最新回复 (6)
雪    币: 89
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
没看懂你所提的是什么问题
2013-4-24 20:47
0
雪    币: 411
活跃值: (25)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
3
由于junk数据导致无法覆盖到NSEH和SEH Handle?楼主是否方便发测试程序?

中途导致异常正好可以执行SEH Handle啊,而且正好SEH Handle和NSEH又都可以被覆盖,要的就是这种效果吧,没太明白楼主的意思。
2013-4-24 21:59
0
雪    币: 34
活跃值: (21)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
的确可以覆盖SHE Handle和NSEH 但是运行不到SHE Handle这里,由于这之前先要运行MOV EDI,DWORD PTR DS:[ECX+14]指令(图1),而这个指令中的ECX已经被覆盖成41414141(图2)所以会报图三的错
2013-4-24 22:23
0
雪    币: 411
活跃值: (25)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
5
[QUOTE=染血の雪;1170266]的确可以覆盖SHE Handle和NSEH 但是运行不到SHE Handle这里,由于这之前先要运行MOV EDI,DWORD PTR DS:[ECX+14]指令(图1),而这个指令中的ECX已经被覆盖成41414141(图2)所以会报图三的错[/QUOTE]

图1指令引发异常后,流程应该会转到SEH Handle执行的啊。
2013-4-24 22:37
0
雪    币: 34
活跃值: (21)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
问题是他报图三的错然后就中断了
2013-4-25 09:17
0
雪    币: 411
活跃值: (25)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
7
不知道怎么解释了。



上图中跟你所述情况一致,F8后出现如下图的异常提示



在SEH Handle处下断点,我覆盖为了006720C4. 然后shift+F9,会跳到006720C4的位置执行POP POP RET,然后跳到NSEH,我覆盖为了EB069090,也就是一个短跳。



跳转执行后自然就执行到了我们可控的溢出范围内,我覆盖为了90.

楼主前后对比一下我的几张图看一下应该就清楚了。

PS:不好意思,看到你的截图猜出来是什么软件了。没有仔细分析,只是手动修改了寄存器和内存中的值方便截图给你看,至于具体漏洞原因和利用就等待楼主吧。希望搞好后写个心得分享哈。
上传的附件:
2013-4-25 11:59
0
游客
登录 | 注册 方可回帖
返回

账号登录
验证码登录

忘记密码?
没有账号?立即免费注册