首页
社区
课程
招聘
[求助]HOOK ZWcreateFile 怎么得到要创建文件的路径??急急急急急急。。。
发表于: 2009-4-9 14:14 7240

[求助]HOOK ZWcreateFile 怎么得到要创建文件的路径??急急急急急急。。。

2009-4-9 14:14
7240
我想用HOOK zwcreatefile 拦截对文件的操作,,
if(CreateDisposition & FILE_CREATE)
{
///操作
}
不知道怎么得到要创建文件的路径,,,,,
那位大哥,知道告诉一下,,,咸激万分,,

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

收藏
免费 0
支持
分享
最新回复 (13)
雪    币: 635
活跃值: (101)
能力值: ( LV12,RANK:420 )
在线值:
发帖
回帖
粉丝
2
ObjectAttributes->ObjectName + ObjectAtrributes->RootDirectory
2009-4-9 14:15
0
雪    币: 229
活跃值: (10)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
3
ObjectName 怎么输出的是 \??\C:\Documents and Settings\Owner\   怎么是这啊,怎么得到完整路径???
2009-4-9 14:22
0
雪    币: 635
活跃值: (101)
能力值: ( LV12,RANK:420 )
在线值:
发帖
回帖
粉丝
4
那是被你的dbgprint截断了,dbgprint的 %ws不支持中文
2009-4-9 14:24
0
雪    币: 229
活跃值: (10)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
5
怎么取得其中的一部分字符吗,,可以用strncpy 吗?
2009-4-9 14:28
0
雪    币: 7651
活跃值: (523)
能力值: ( LV9,RANK:610 )
在线值:
发帖
回帖
粉丝
6
你可以先把UNICODE_STRING结构转换一下
2009-4-9 14:45
0
雪    币: 229
活跃值: (10)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
7
怎么换啊???比如就把前五个字符取出来( \??\C),,怎么办啊???
2009-4-9 14:57
0
雪    币: 229
活跃值: (10)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
8
ObjectAttributes->ObjectName 怎么转成ANSI_STRING 啊
2009-4-9 15:28
0
雪    币: 229
活跃值: (10)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
9
UNICODE_STRING ansistr=*(ObjectAttributes->ObjectName )  这样就可以了,,想多了,,多谢各位了,,,
2009-4-9 15:45
0
雪    币: 796
活跃值: (370)
能力值: ( LV9,RANK:380 )
在线值:
发帖
回帖
粉丝
10
楼主,把代码发出来学习学习咯。
2009-5-4 00:44
0
雪    币: 210
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
这个有啥可学习的

MJ说的那么清楚了,一般情况下只要ObjectAttributes->ObjectName就可以了,不过需要先判断ObjectAtrributes->RootDirectory是否为空,如果它为空,则ObjectName里面就是完整路径,否则就是相对路径。

DDK的文档里面说的很详细啊
2009-5-4 12:18
0
雪    币: 129
活跃值: (31)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
12
ObjectAttributes->ObjectName   得到的是\??\C:\Documents and Settings\Owner\    ++文件名.

UNICODE的,你先把他转成ANSI  然后%s打出,

ANSI_STRING AnsiStr;
RtlUnicodeStringToAnsiString(&AnsiStr , &ObjectAttributes->ObjectName,TRUE);

ObjectAtrributes->RootDirectory   得到的是盘符..
2009-5-5 00:15
0
雪    币: 72
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
13
RtlUnicodeStringToAnsiString(&AnsiStr , &ObjectAttributes->ObjectName,TRUE);
这样会蓝掉啊!
为什么要&ObjectAttributes->ObjectName
2009-5-27 10:57
0
雪    币: 1450
活跃值: (35)
能力值: (RANK:680 )
在线值:
发帖
回帖
粉丝
14
MJ已经说的很清楚了.
DDK文档也有description.
都是一些基础的一些字串操作函数.
2009-5-27 13:51
0
游客
登录 | 注册 方可回帖
返回
//