yetty
驱动牛犊
驱动牛犊
  • 注册日期2004-01-10
  • 最后登录2009-07-21
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1645回复:16

这个问题大家希望一定要看看--答不答不在乎

楼主#
更多 发布于:2004-05-28 21:39
大家可能知道,在应用层中,用
WriteProcessMemory(GetCurrentProcess(), ppfn, &pfnNew, sizeof(pfnNew), NULL)
可以将函数ppfn换为自定义函数pfnNew,那么在VxD中有没有WriteProcessMemory这种函数?
比如将kernel32.dll 中的function1 换为我的function2,能不能这样做呢?
应该有很多人都用过或者将来会用到这个问题吧,所以,如果有懂的,就说两句吧。
yetty_forever
snowStart
驱动老牛
驱动老牛
  • 注册日期2004-04-06
  • 最后登录2011-06-02
  • 粉丝0
  • 关注0
  • 积分95分
  • 威望19点
  • 贡献值177点
  • 好评度1点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2004-05-28 21:52
个人认为WriteProcessMemory好像在NT以上很好用,
但在98下没必要那么做,很多方法可以挂接系统函数
学习,关注,交流中... [email=fengyu@163.com]Email:snowstarth@163.com[/email] [url]http://bbs.zndev.com/?a=snowStart[/url]
yetty
驱动牛犊
驱动牛犊
  • 注册日期2004-01-10
  • 最后登录2009-07-21
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2004-05-28 22:21
能否说一两种方法呢?
看到有这种方法,但是我觉得直接交换地址是否真的好用。
//保存真正的ZwQueryDirectoryFile函数地址

RealZwQueryDirectoryFile=(REALZWQUERYDIRECTORYFILE)(SYSTEMSERVICE(ZwQueryDirectoryFile));

//把自定义的替换函数指针指向真正的ZwQueryDirectoryFile函数

(REALZWQUERYDIRECTORYFILE)(SYSTEMSERVICE(ZwQueryDirectoryFile))=HookZwQueryDirectoryFile;

5.在DriverUnload(驱动卸载函数)函数中加入恢复代码:

//恢复原来的函数指针

(REALZWQUERYDIRECTORYFILE)(SYSTEMSERVICE(ZwQueryDirectoryFile))=RealZwQueryDirectoryFile;
yetty_forever
crystal521
驱动牛犊
驱动牛犊
  • 注册日期2004-02-14
  • 最后登录2004-11-11
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2004-06-08 11:49
不是用LoadLibrary和GetProcAddress就可直接将Ring3级事件句柄转换为Ring0级事件句柄吗?
采用这种方法就可直接调用kernel32.dll 中的函数了。也就是实现了转换。
Crystal521
yetty
驱动牛犊
驱动牛犊
  • 注册日期2004-01-10
  • 最后登录2009-07-21
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2004-06-09 12:40
这篇文章介绍了一些楼上朋友说到的方法,还是不会用。而且不是所有的api都能在ring0级用吧
http://www.driverdevelop.com/read.php?t=D&id=24

[编辑 -  6/9/04 by  yetty]
yetty_forever
AllenZh
驱动老牛
驱动老牛
  • 注册日期2001-08-19
  • 最后登录2015-11-27
  • 粉丝19
  • 关注10
  • 积分1316分
  • 威望2387点
  • 贡献值7点
  • 好评度321点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2004-06-09 16:34
大家可能知道,在应用层中,用
WriteProcessMemory(GetCurrentProcess(), ppfn, &pfnNew, sizeof(pfnNew), NULL)
可以将函数ppfn换为自定义函数pfnNew,那么在VxD中有没有WriteProcessMemory这种函数?
比如将kernel32.dll 中的function1 换为我的function2,能不能这样做呢?
应该有很多人都用过或者将来会用到这个问题吧,所以,如果有懂的,就说两句吧。

回答是肯定的,有
vxd中需要调用dpmi服务。

将函数修改还需要其它技术,比如我都不想再说的16为代码,thunk等等。
1,承接Windows下驱动/应用开发 2,本人原创虚拟鼠标/键盘,触摸屏,虚拟显卡,Mirror驱动,XP无盘的SCSI虚拟磁盘驱动等 3,windows下有尝技术服务(包括BUG调试,员工培训等) 欢迎深圳和海外企业联系.msn:mfczmh@sina.com
AllenZh
驱动老牛
驱动老牛
  • 注册日期2001-08-19
  • 最后登录2015-11-27
  • 粉丝19
  • 关注10
  • 积分1316分
  • 威望2387点
  • 贡献值7点
  • 好评度321点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2004-06-09 16:36
因为9x已经过失了,很快就是64位了,还搞什么16为呢?(特殊用途除外)
1,承接Windows下驱动/应用开发 2,本人原创虚拟鼠标/键盘,触摸屏,虚拟显卡,Mirror驱动,XP无盘的SCSI虚拟磁盘驱动等 3,windows下有尝技术服务(包括BUG调试,员工培训等) 欢迎深圳和海外企业联系.msn:mfczmh@sina.com
yetty
驱动牛犊
驱动牛犊
  • 注册日期2004-01-10
  • 最后登录2009-07-21
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2004-06-09 16:41
我也不想搞98的东西啊,但是要做产品,就得考虑周到一些!
yetty_forever
AllenZh
驱动老牛
驱动老牛
  • 注册日期2001-08-19
  • 最后登录2015-11-27
  • 粉丝19
  • 关注10
  • 积分1316分
  • 威望2387点
  • 贡献值7点
  • 好评度321点
  • 原创分0分
  • 专家分0分
8楼#
发布于:2004-06-09 16:44
什么方面的产品?现在恐怕你连环境都不好搭,95DDK,VC1.5等你有没有?
1,承接Windows下驱动/应用开发 2,本人原创虚拟鼠标/键盘,触摸屏,虚拟显卡,Mirror驱动,XP无盘的SCSI虚拟磁盘驱动等 3,windows下有尝技术服务(包括BUG调试,员工培训等) 欢迎深圳和海外企业联系.msn:mfczmh@sina.com
AllenZh
驱动老牛
驱动老牛
  • 注册日期2001-08-19
  • 最后登录2015-11-27
  • 粉丝19
  • 关注10
  • 积分1316分
  • 威望2387点
  • 贡献值7点
  • 好评度321点
  • 原创分0分
  • 专家分0分
9楼#
发布于:2004-06-09 16:44
最还还要windows 95 操作系统来测试,否则也是不彻底的
1,承接Windows下驱动/应用开发 2,本人原创虚拟鼠标/键盘,触摸屏,虚拟显卡,Mirror驱动,XP无盘的SCSI虚拟磁盘驱动等 3,windows下有尝技术服务(包括BUG调试,员工培训等) 欢迎深圳和海外企业联系.msn:mfczmh@sina.com
yetty
驱动牛犊
驱动牛犊
  • 注册日期2004-01-10
  • 最后登录2009-07-21
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
10楼#
发布于:2004-06-09 16:49
还不是前一段搞的api钩子,都不想提了,从应用层搞了十几天,搞不出来,就往vxd里搞。vxd我用的工具是vtoolsD 和 vc6.0,还是挺方便的。http://dev.csdn.net/develop/article/2/2058.shtm
不知何时才能解脱!
yetty_forever
AllenZh
驱动老牛
驱动老牛
  • 注册日期2001-08-19
  • 最后登录2015-11-27
  • 粉丝19
  • 关注10
  • 积分1316分
  • 威望2387点
  • 贡献值7点
  • 好评度321点
  • 原创分0分
  • 专家分0分
11楼#
发布于:2004-06-09 16:59
使用vtools可能不要95ddk和vc1.5。
但使用ddk就需要了,你修改api做什么?
网上很多sample讲这个的,你search一下。
1,承接Windows下驱动/应用开发 2,本人原创虚拟鼠标/键盘,触摸屏,虚拟显卡,Mirror驱动,XP无盘的SCSI虚拟磁盘驱动等 3,windows下有尝技术服务(包括BUG调试,员工培训等) 欢迎深圳和海外企业联系.msn:mfczmh@sina.com
AllenZh
驱动老牛
驱动老牛
  • 注册日期2001-08-19
  • 最后登录2015-11-27
  • 粉丝19
  • 关注10
  • 积分1316分
  • 威望2387点
  • 贡献值7点
  • 好评度321点
  • 原创分0分
  • 专家分0分
12楼#
发布于:2004-06-09 17:00
是不是远程控制方面的软件?
如果是建议你参考pcAnywhere。
1,承接Windows下驱动/应用开发 2,本人原创虚拟鼠标/键盘,触摸屏,虚拟显卡,Mirror驱动,XP无盘的SCSI虚拟磁盘驱动等 3,windows下有尝技术服务(包括BUG调试,员工培训等) 欢迎深圳和海外企业联系.msn:mfczmh@sina.com
yetty
驱动牛犊
驱动牛犊
  • 注册日期2004-01-10
  • 最后登录2009-07-21
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
13楼#
发布于:2004-06-09 17:10
就是做信息安全方面的,比如防止文件被删除,拷贝等等之类,现在只剩下屏蔽文件的打印动作了,就是hook gdi32.dll中的StartDocA函数,这方面的例子确实太多,但是不知道为什么在98下总也没有成功。现在做到vxd,更棘手了。
附件名称/大小 下载次数 最后更新
2004-06-09_pbdeapi.dll (105KB)  0
yetty_forever
AllenZh
驱动老牛
驱动老牛
  • 注册日期2001-08-19
  • 最后登录2015-11-27
  • 粉丝19
  • 关注10
  • 积分1316分
  • 威望2387点
  • 贡献值7点
  • 好评度321点
  • 原创分0分
  • 专家分0分
14楼#
发布于:2004-06-09 22:42
就是做信息安全方面的,比如防止文件被删除,拷贝等等之类,现在只剩下屏蔽文件的打印动作了,就是hook gdi32.dll中的StartDocA函数,这方面的例子确实太多,但是不知道为什么在98下总也没有成功。现在做到vxd,更棘手了。

哈哈,这样呀
文件系统已经完成了?
是不是还有网络方面呀?
难到你的防止文件拷贝、删除等都是使用Hook API来的吗?
1,承接Windows下驱动/应用开发 2,本人原创虚拟鼠标/键盘,触摸屏,虚拟显卡,Mirror驱动,XP无盘的SCSI虚拟磁盘驱动等 3,windows下有尝技术服务(包括BUG调试,员工培训等) 欢迎深圳和海外企业联系.msn:mfczmh@sina.com
AllenZh
驱动老牛
驱动老牛
  • 注册日期2001-08-19
  • 最后登录2015-11-27
  • 粉丝19
  • 关注10
  • 积分1316分
  • 威望2387点
  • 贡献值7点
  • 好评度321点
  • 原创分0分
  • 专家分0分
15楼#
发布于:2004-06-09 22:45
前俩天我下载了一个网友的,根本不能使用,一使用就非法操作,随后我发了个帖
“烂”,不知你这个如何,性能可以吗?
请原谅我可想再去测试了。
1,承接Windows下驱动/应用开发 2,本人原创虚拟鼠标/键盘,触摸屏,虚拟显卡,Mirror驱动,XP无盘的SCSI虚拟磁盘驱动等 3,windows下有尝技术服务(包括BUG调试,员工培训等) 欢迎深圳和海外企业联系.msn:mfczmh@sina.com
AllenZh
驱动老牛
驱动老牛
  • 注册日期2001-08-19
  • 最后登录2015-11-27
  • 粉丝19
  • 关注10
  • 积分1316分
  • 威望2387点
  • 贡献值7点
  • 好评度321点
  • 原创分0分
  • 专家分0分
16楼#
发布于:2004-06-09 22:46
Hook API我在4年前就写过了,好久没有看了现在还真有些陌生。
1,承接Windows下驱动/应用开发 2,本人原创虚拟鼠标/键盘,触摸屏,虚拟显卡,Mirror驱动,XP无盘的SCSI虚拟磁盘驱动等 3,windows下有尝技术服务(包括BUG调试,员工培训等) 欢迎深圳和海外企业联系.msn:mfczmh@sina.com
游客

返回顶部