首页
社区
课程
招聘
下面的问题是由ExitProcess函数引起的。望前辈指点!
发表于: 2004-6-7 22:15 5506

下面的问题是由ExitProcess函数引起的。望前辈指点!

2004-6-7 22:15
5506
《加密与解密》书中第376页在反汇编UPX壳的地方,我看到UPX壳在跳转到OEP前调用了ExitProcess,我感到很奇怪――MSDN上说ExitProcess这个函数是用来结束进程和他的所有线程的。那么如果这样的话在ExitProcess后面的跳转到OEP的代码就不会执行了?这样被包含到壳中的程序不就没机会执行了?是我对ExitProcess的认识有问题,还是UPX壳解开被包容的程序后又开辟了另一个进程用来运行该程序?我很不明白,希望前辈能给予指点,最渴望的是加壳程序的框架代码或相关文档,谢谢先!

[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

收藏
免费 5
支持
分享
最新回复 (5)
雪    币: 898
活跃值: (4039)
能力值: ( LV9,RANK:3410 )
在线值:
发帖
回帖
粉丝
2
你跟踪一下
UPX壳在正常走到OEP前应该是不会执行这个ExitProcess的
2004-6-7 22:18
0
雪    币: 260
活跃值: (162)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
3
ExitProcess执行以后进程会被强制关闭
如果程序流程很明显有ExitProcess的调用,你最好看看是不是通过压堆栈的方式实现的,如果是...你就要重点看看出栈前的代码运行情况
2004-6-8 02:23
0
雪    币: 279
活跃值: (266)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
什么是“压堆栈的方式实现的”?是不是就是把相应的API地址压栈?这样出栈时该api能被运行吗?能不能详细解释一下或提供文档?谢谢。
2004-6-8 08:48
0
雪    币: 260
活跃值: (162)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
5
文档?  晕,我找不出,这只是编程的一些方法罢了,其实写程序能用很多方式去写,没必要针对一种方法去研究
你提出的问题最好还是单步跟踪一下看看  我怀疑ExitProcess不会调用
2004-6-8 11:41
0
雪    币: 203
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
我想是一定不会调用的,如果调用了,那么调用的process 会从消失了。你还怎么玩啊? 不要相信静态反汇编的东西,很多时候都是不可靠的。
2004-6-8 12:53
0
游客
登录 | 注册 方可回帖
返回
//