seaman2012
驱动牛犊
驱动牛犊
  • 注册日期2010-04-26
  • 最后登录2010-07-06
  • 粉丝0
  • 关注0
  • 积分14分
  • 威望101点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:2498回复:7

不通过文件过滤驱动程序 如何实现让一个A.exe 程序在运行时候不被剪切到其他系统位置? 大侠们给个意见

楼主#
更多 发布于:2010-06-25 18:31
不通过文件过滤驱动程序 如何实现让一个A.exe 程序在运行时候不被剪切到其他系统位置? 大侠们给个意见
现在的杀毒软件如360安全卫生 具有此功能。 当360safe.exe 运行的时候 用户是不能同剪切(CTRL + X)命令 把360safe.exe 剪切到其他目录中.  这种文件保护功能 我发现只有杀毒软件有这种功能。 一般exe程序都没有这种保护功能。 这种功能是通过文件过滤功能实现的吗, 如何不用驱动有其他的方法实现吗, HOOK  API 能实现吗? 我现在不想用驱动 太麻烦, 因为我的项目里已经用过一种驱动程序了 我怕有冲突, 想通过其他发现实现 大侠们给小弟个建议!!!!!
cyliu
论坛版主
论坛版主
  • 注册日期2003-06-13
  • 最后登录2014-04-11
  • 粉丝5
  • 关注0
  • 积分1238分
  • 威望2531点
  • 贡献值0点
  • 好评度577点
  • 原创分14分
  • 专家分10分
沙发#
发布于:2010-06-25 21:54
Re:不通过文件过滤驱动程序 如何实现让一个A.exe 程序在运行时候不被剪切到其他系统位置? 大侠们给个意 ..
如不使用驱动,可能轻易就绕过了
走走看看开源好 Solaris vs Linux
seaman2012
驱动牛犊
驱动牛犊
  • 注册日期2010-04-26
  • 最后登录2010-07-06
  • 粉丝0
  • 关注0
  • 积分14分
  • 威望101点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2010-06-26 14:42
Re:不通过文件过滤驱动程序 如何实现让一个A.exe 程序在运行时候不被剪切到其他系统位置? 大侠们给个意 ..
// 我希望大家认真看看我发的帖子 例如C:\A\B\C.exe 当通过剪切命令 是可以把c.exe 在运行的时候  剪切到  C:\A\C.exe 的目录下 B的目录下不出再有C.exe  我说的是普通的exe文件 但是360 的安全卫生 360 杀毒的exe 是剪切不成功的 当你粘贴的时候会提示移动文件夹出错误   这说明360 再文件保护方面做了处理 一般的exe程序没有处理。 我想知道原因 或者是怎样用代码实现。 请不要用word, txt 等程序实验 这不是我关注的 我要的是exe执行程序 大家 看好了再发言  不要随便发言 耽误大家的时间

如果用驱动的话 像360 这种文件保护功能是怎样做的 我想知道一些大概的原理  兄弟们帮忙给这中肯的建议。
seaman2012
驱动牛犊
驱动牛犊
  • 注册日期2010-04-26
  • 最后登录2010-07-06
  • 粉丝0
  • 关注0
  • 积分14分
  • 威望101点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2010-06-26 14:44
回 1楼(cyliu) 的帖子
// 我希望大家认真看看我发的帖子 例如C:\A\B\C.exe 当通过剪切命令 是可以把c.exe 在运行的时候  剪切到  C:\A\C.exe 的目录下 B的目录下不出再有C.exe  我说的是普通的exe文件 但是360 的安全卫生 360 杀毒的exe 是剪切不成功的 当你粘贴的时候会提示移动文件夹出错误   这说明360 再文件保护方面做了处理 一般的exe程序没有处理。 我想知道原因 或者是怎样用代码实现。 请不要用word, txt 等程序实验 这不是我关注的 我要的是exe执行程序 大家 看好了再发言  不要随便发言 耽误大家的时间

如果用驱动的话 像360 这种文件保护功能是怎样做的 我想知道一些大概的原理  兄弟们帮忙给这中肯的建议。
cyliu
论坛版主
论坛版主
  • 注册日期2003-06-13
  • 最后登录2014-04-11
  • 粉丝5
  • 关注0
  • 积分1238分
  • 威望2531点
  • 贡献值0点
  • 好评度577点
  • 原创分14分
  • 专家分10分
地下室#
发布于:2010-06-26 18:09
Re:回 1楼(cyliu) 的帖子
引用第3楼seaman2012于2010-06-26 14:44发表的 回 1楼(cyliu) 的帖子 :
// 我希望大家认真看看我发的帖子 例如C:\A\B\C.exe 当通过剪切命令 是可以把c.exe 在运行的时候  剪切到  C:\A\C.exe 的目录下 B的目录下不出再有C.exe  我说的是普通的exe文件 但是360 的安全卫生 360 杀毒的exe 是剪切不成功的 当你粘贴的时候会提示移动文件夹出错误   这说明360 再文件保护方面做了处理 一般的exe程序没有处理。 我想知道原因 或者是怎样用代码实现。 请不要用word, txt 等程序实验 这不是我关注的 我要的是exe执行程序 大家 看好了再发言  不要随便发言 耽误大家的时间

如果用驱动的话 像360 这种文件保护功能是怎样做的 我想知道一些大概的原理  兄弟们帮忙给这中肯的建议。


不知道是我理解有问题,还是你的描述有问题:

1 请不要用word, txt 等程序实验 这不是我关注的 我要的是exe执行程序

   txt是什么程序?winword.exe不是exe执行程序吗?没有明白。

2 结合1楼理解你的意思是:

2.1 程序正在运行

2.2 该程序不能剪切

2.3 不通过驱动实现

3 没有理解的地方

3.1 是否仅考虑鼠标右键的“剪切”和“粘贴”命令,或者ctrl+x, ctrl+v?

3.2 是否要考虑使用其它方式也不能剪切?如写程序来读写该文件。

4 个人理解

4.1 360应该是使用了驱动来拦截文件的读写,并过滤

4.2 如果考虑3.2,不使用驱动应该很难做到。就是使用驱动,也不能100%达到效果,只是提高门槛而已
走走看看开源好 Solaris vs Linux
seaman2012
驱动牛犊
驱动牛犊
  • 注册日期2010-04-26
  • 最后登录2010-07-06
  • 粉丝0
  • 关注0
  • 积分14分
  • 威望101点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2010-06-26 19:19
回 4楼(cyliu) 的帖子
to: jonathan  版主大哥


1 请不要用word, txt 等程序实验 这不是我关注的 我要的是exe执行程序

   txt是什么程序?winword.exe不是exe执行程序吗?没有明白。
回复:
"txt是什么程序" 我的意思是文本编辑器 notepad.exe . 当然winword.exe 也是exe执行程序。 当时表示的意思确实有些模糊 以后注意 谢谢版主提醒。

3.1 是否仅考虑鼠标右键的“剪切”和“粘贴”命令,或者ctrl+x, ctrl+v?
回复:  包括 ctrl+x, ctrl+v  和 “剪切”和“粘贴”命令

3.2 是否要考虑使用其它方式也不能剪切?如写程序来读写该文件。
回复: 最好是也不能通过其他方式剪切。 这个方面 项目还没有要求那么深入  当然以后可能会加上功能。 谢谢版主的提醒。 哈哈。

4.1 360应该是使用了驱动来拦截文件的读写,并过滤
回复: 文件过滤的驱动这块我还不太熟悉  版主能否给点着方面的资料 文章让小弟看看

4.2 如果考虑3.2,不使用驱动应该很难做到。就是使用驱动,也不能100%达到效果,只是提高门槛而已
回复: 看来只能用驱动了 谢版主了
wollok
驱动小牛
驱动小牛
  • 注册日期2002-11-12
  • 最后登录2012-07-18
  • 粉丝0
  • 关注0
  • 积分571分
  • 威望335点
  • 贡献值0点
  • 好评度52点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2010-06-28 10:52
Re:不通过文件过滤驱动程序 如何实现让一个A.exe 程序在运行时候不被剪切到其他系统位置? 大侠们给个意 ..
其实很简单的。A.exe,执行的时候GetModuleFileName得到主模块的文件名,然后CreateFile将该文件用读+共享读写权限打开,然后就无法剪切了。不信的可以试试附件的文件。呵呵
附件名称/大小 下载次数 最后更新
NoCut.rar (2KB)  6 2010-06-28 10:52
wollok
驱动小牛
驱动小牛
  • 注册日期2002-11-12
  • 最后登录2012-07-18
  • 粉丝0
  • 关注0
  • 积分571分
  • 威望335点
  • 贡献值0点
  • 好评度52点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2010-06-28 10:56
Re:不通过文件过滤驱动程序 如何实现让一个A.exe 程序在运行时候不被剪切到其他系统位置? 大侠们给个意 ..
如果你愿意,独占打开都可以的。这样别人连打开的权限都没有。Copy都不行
游客

返回顶部