-
-
[旧帖]
[求助]脱壳基础知识入门(2006年版)(6)
0.00雪花
-
发表于:
2010-1-28 17:43
1750
-
[旧帖] [求助]脱壳基础知识入门(2006年版)(6)
0.00雪花
原帖在 http://www.onegreen.net/Article_Show.asp?ArticleID=677
"4.用内存断点找OEP "部分的实例。
问题1:设置断点时,为什么要先设 除int3异常以外忽略其他异常,SHIFT+F9,中断一次后再设置除“除零”异常外,忽略其他异常。 我试了确实要如此做,否则就会进程无法处理异常而终止。不明白这个原理。
问题2: 这一段引用:
现在继续对code段下内存访问断点!!F9以后到达这里。
004010CC FFD7 call edi ; unpackme.004010CE //OEP哦
004010CE 58 pop eax
004010CF 83EC 44 sub esp,44
004010D2 56 push esi
004010D3 90 nop
004010D4 E8 B518F7FF call 0037298E
004010D9 8BF0 mov esi,eax
呵呵~虽然不是我们熟悉的OEP,但是地址是没错了,况且根据我们的步骤,我可以很肯定的说这是code段的第一次“执行”中断!
这里假设就是OEP,dump后,IAT是好的,但关键是无法运行,因为有call 0037298E之类的指令,而这个call的地址在dump的代码是无效的,是壳的代码,这是怎么回事呢,怎么解决。
谢谢大家!
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课