首页
社区
课程
招聘
[讨论]捆饶我很久的kernel32.dll问题
发表于: 2007-12-3 06:55 3490

[讨论]捆饶我很久的kernel32.dll问题

2007-12-3 06:55
3490
写了个程序  只有一条RET指令。没有任何头文件。但是OD看代码的时候。发现这个dll确实被加载了。查看了PE文件的。好象确实没有这个dll的信息。
哪位大哥帮我解释一下。

当不用ExitProcess函数来结束程序时
当程序返回的时候 程序自己会调用这个dll的ExitThread来结束程序
调用这个函数的地址在OD加载程序时  ESP指向的地方
但是我确实没有加载这个DLL  是不是windows做的手脚呢?

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

收藏
免费 0
支持
分享
最新回复 (6)
雪    币: 454
活跃值: (1673)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
2
逛了新兵论坛几个贴,发现全部不知所云
看来我理解能力有限
2007-12-3 11:15
0
雪    币: 485
活跃值: (12)
能力值: ( LV9,RANK:490 )
在线值:
发帖
回帖
粉丝
3
k32肯定会加载的,好像就是用K32里的函数加载的我们的程序
2007-12-3 12:00
0
雪    币: 44229
活跃值: (19955)
能力值: (RANK:350 )
在线值:
发帖
回帖
粉丝
4
查看一下你程序的输入表有什么DLL
2007-12-3 13:59
0
雪    币: 206
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
你拿什么语言写的?如果C或者CPP的话,那么必定会被假如start例程
2007-12-3 14:56
0
雪    币: 18
活跃值: (2079)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
6
代码是
.386
.model flat, stdcall
option casemap :none
.data
.code
start:
ret
end        start

什么头文件都没有
.text  区就只有
2E 74 65 78 00 00 00 01 00 00 00 00 10

OD调试程序时候 确实这个dll被加载
2007-12-3 14:57
0
雪    币: 18
活跃值: (2079)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
7
用上面的代码编译成win32exe
用OD加载  在堆栈段里面 ESP 指向的地址就是kernel.dll里面的地址
就是调用ExitThread这个函数。PE文件我查看过  就只有我上面说的那些数据。不包括PE文件头。  文件头肯定是有的。嘿嘿,.,
2007-12-3 15:02
0
游客
登录 | 注册 方可回帖
返回
//