首页
社区
课程
招聘
[求助]编写某程序的时候遇到一个问题
发表于: 2009-5-9 02:58 4772

[求助]编写某程序的时候遇到一个问题

2009-5-9 02:58
4772
问题阐述:

我需要在全局级别挂接某一函数,这个函数是DeviceIoControl。

我尝试了以下方法:

1 --r3级Inline Hook Kernel32.然后替换系统文件。

在Kernel32,的入口处加LoadLibarayA.让它加载我的Hook Dll。
--------这种方法是完全行不通的,目前尚没仔细去分析原因。大概可能是一个先有鸡,还是先有蛋的问题。

2--通过r3级hook CreateProcess,然后置换cmd Line启动我的Loader.

这种方法不可以实现全局了。

目前我打算从r0级别Hook了。

不清楚以下几个问题:

1.NtDeviceIoControlFile----这个ssdt函数,是否是Kernel32的DeviceIoControl的xxx.
2.实际上,我想找个最佳启动Hook点。也就是最好系统刚刚加载ntosknrl.exe的时候,我就去把它Hook了。

3.在R3下,我只跟的到服务号,比如deviceIoControl,我怎么才可以知道它所对应的r0的函数呢?

------------

其实最好,能够想当一种办法,在r3上就全局挂接了,如果我想通过修改kernel32,在它被加载的时候立刻加载我。在DllMain的什么地方才会不出问题呢?

ret的时候?---ret的时候初使化就完了。

[招生]系统0day安全班,企业级设备固件漏洞挖掘,Linux平台漏洞挖掘!

收藏
免费 0
支持
分享
最新回复 (8)
雪    币: 8835
活跃值: (2404)
能力值: ( LV12,RANK:760 )
在线值:
发帖
回帖
粉丝
2
遍历目前所有的进程远程注入你的DLL

DLL里inline hook CreateProcess和你要hook东西,然后每当有进程起来你就远程注入DLL

就是这么简单,这么简单~~
2009-5-9 03:00
0
雪    币: 152
活跃值: (106)
能力值: ( LV7,RANK:100 )
在线值:
发帖
回帖
粉丝
3
改kernel32的pe结构,让它依赖我,让它先加载我才可以启动。但是,我的Hook里,也有用到Kernel32的函数,比如WriteProcessMemory----这样肯定要要挂掉。

DllMain  Ret的时候估计能行。
2009-5-9 03:00
0
雪    币: 152
活跃值: (106)
能力值: ( LV7,RANK:100 )
在线值:
发帖
回帖
粉丝
4
不行,因为当我编经历到要处理的程序后,它的代码已经执行过了。

我现在要做的就是,它一启动,我斗已经把它Hook了。

r0是最现实的。
2009-5-9 03:03
0
雪    币: 152
活跃值: (106)
能力值: ( LV7,RANK:100 )
在线值:
发帖
回帖
粉丝
5
而且它的启动,不光是CreateProcess
2009-5-9 03:05
0
雪    币: 2105
活跃值: (424)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
6
r3 hook 要做到全局真的很难
2009-5-9 03:38
0
雪    币: 419
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
我只想看看什么软件。。。。。。
2009-5-9 03:45
0
雪    币: 8835
活跃值: (2404)
能力值: ( LV12,RANK:760 )
在线值:
发帖
回帖
粉丝
8
采用邪恶的App_InitDLLs吧~~
哎~
R0,没签名,你还想加载的顺利?~~
2009-5-9 14:42
0
雪    币: 152
活跃值: (106)
能力值: ( LV7,RANK:100 )
在线值:
发帖
回帖
粉丝
9
**,一语惊醒梦中人啊....这招太烂了,所以都没记忆....

thank兄弟.
2009-5-9 19:30
0
游客
登录 | 注册 方可回帖
返回
//