首页
社区
课程
招聘
[求助]想用minifilter实现u盘的禁用或只读,该怎么着手?
2019-4-5 22:03 11164

[求助]想用minifilter实现u盘的禁用或只读,该怎么着手?

2019-4-5 22:03
11164
收藏
点赞1
打赏
分享
最新回复 (63)
雪    币: 103
活跃值: (1488)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
wumnkx 2019-4-18 21:11
26
0
wx_幼儿园的王 楼主,我写的是sfilter框架的过滤驱动,现在也遇到了禁用便携设备的问题,有什么经验可以跟我交流下吗,我现在还找不到方法
我现在在研究1个竞品,他的禁用是直接禁止设备, 就和设备管理器里面禁用设备操作一样, 用devcon 加个命令行就可以做, 这个做法不太好我不采取。我现在在研究他的文件审计, 本以为他是注dll到explorer里面来做, 今天调了一天explorer发现不是, 直接调试竞品的主进程导致卡死, 郁闷。其实我也想到了办法:便携设备菜单是在wpdshext.dll里面做的, 如果HOOK这个dll里面菜单处理函数应该就可以; 还有就是HOOK吊explorer的文件操作函数也是可以; 目前我想先搞清楚竞品是怎么做的。
雪    币: 56
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
wx_幼儿园的王 2019-4-19 09:15
27
0
wumnkx 我现在在研究1个竞品,他的禁用是直接禁止设备, 就和设备管理器里面禁用设备操作一样, 用devcon 加个命令行就可以做, 这个做法不太好我不采取。我现在在研究他的文件审计, 本以为他是注dll到ex ...
我第一次学,我的老师让我在两周做完,应该不会是这么复杂的东西吧
雪    币: 8
活跃值: (44)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
MRRighter 2019-4-19 09:32
28
0
我正好也是在做这个 我使用class filter来做的 我建议你用classfilter 做lowerfilter 因为某著名安全厂商企业版的设备禁用驱动和网上某国内著名透明加解密厂商的这个需求我逆向之后发现都是这么实现的,我最开始也是想用minifilter做 但是发现做不好
雪    币: 75
活跃值: (558)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
pccq 2019-4-19 09:54
29
0
wumnkx umdf是用的COM形式的接口做的吗? 大哥能否指点一下, 比如参照哪个例子
是的,umdf本质是一个com组件。实际上,wpd设备 分2种,一种是u盘,另一种是mtp(多媒体传输协议)设备,用umdf filter做,可以解析出mtp的操作
雪    币: 75
活跃值: (558)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
pccq 2019-4-19 09:55
30
0
wumnkx 我现在在研究1个竞品,他的禁用是直接禁止设备, 就和设备管理器里面禁用设备操作一样, 用devcon 加个命令行就可以做, 这个做法不太好我不采取。我现在在研究他的文件审计, 本以为他是注dll到ex ...
explorer打开wpd设备,用的是wpd api,hook file operations function是没有用的
雪    币: 75
活跃值: (558)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
pccq 2019-4-19 10:06
31
0
C:\Windows\System32\drivers\UMDF目录下面有2个文件:WpdFs.dll和WpdMtpDr.dll,前者用于U盘,后者用于mtp设备,umdf filter要过滤后者。

雪    币: 56
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
wx_幼儿园的王 2019-4-19 10:30
32
0
楼主找到了怎么判断智能手机等便携设备的方法了吗
雪    币: 103
活跃值: (1488)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
wumnkx 2019-4-19 14:50
33
0
MRRighter 我正好也是在做这个 我使用class filter来做的 我建议你用classfilter 做lowerfilter 因为某著名安全厂商企业版的设备禁用驱动和网上某国内著名透明加解密厂商的这个需求我逆 ...
是用的哪个class呢?  U盘和WPD都能搞吗?
雪    币: 103
活跃值: (1488)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
wumnkx 2019-4-19 15:01
34
0
pccq C:\Windows\System32\drivers\UMDF目录下面有2个文件:WpdFs.dll和WpdMtpDr.dll,前者用于U盘,后者用于mtp设备,umdf filter要过滤后者。
大哥, 你是参考wdk的这个例子吗?WinDDK\src\usb\osrusbfx2\umdf\filter。
最后于 2019-4-19 15:01 被wumnkx编辑 ,原因:
雪    币: 103
活跃值: (1488)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
wumnkx 2019-4-19 15:03
35
0
wx_幼儿园的王 楼主找到了怎么判断智能手机等便携设备的方法了吗
便携设备要单独处理, 看上面讨论的
雪    币: 56
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
wx_幼儿园的王 2019-4-19 15:16
36
0
wumnkx 便携设备要单独处理, 看上面讨论的
使用wpd驱动写?能禁用便携设备吗,你做到了吗
雪    币: 75
活跃值: (558)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
pccq 2019-4-19 16:21
37
0
wumnkx pccq C:\Windows\System32\drivers\UMDF目录下面有2个文件:WpdFs.dll和WpdMtpDr.dll,前者用于U盘,后者 ...
好几年了,参考了好多资料,已经记不清了,这个应该也参考过
雪    币: 103
活跃值: (1488)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
wumnkx 2019-4-19 16:30
38
0
wx_幼儿园的王 使用wpd驱动写?能禁用便携设备吗,你做到了吗
没实现, 前面的pccq大佬说他用umdf filter实现了。
你如果单纯想禁用就直接禁设备就好了, 想高级点就写个NT驱动禁用wudfhost.exe启动就好。  要精确控制文件读写就得用umdf filter来搞了
雪    币: 56
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
wx_幼儿园的王 2019-4-19 16:45
39
0
wumnkx 没实现, 前面的pccq大佬说他用umdf filter实现了。 你如果单纯想禁用就直接禁设备就好了, 想高级点就写个NT驱动禁用wudfhost.exe启动就好。 要精确控制文件读写就得用umd ...
直接禁用设备会不会导致接口插入键盘鼠标什么的不能用
雪    币: 103
活跃值: (1488)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
wumnkx 2019-4-19 22:44
40
0
wx_幼儿园的王 直接禁用设备会不会导致接口插入键盘鼠标什么的不能用
我也不知道啊 , pccq大佬也不说具体怎么搞, 看看就好
雪    币: 103
活跃值: (1488)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
wumnkx 2019-4-19 22:51
41
0
wumnkx 没实现, 前面的pccq大佬说他用umdf filter实现了。 你如果单纯想禁用就直接禁设备就好了, 想高级点就写个NT驱动禁用wudfhost.exe启动就好。 要精确控制文件读写就得用umd ...
你跟你老师说, wpd要重新开个课题,写个新的驱动搞了, 资料少, 不一定搞的定, 微软的文档真是一帮神仙写的, 用谷歌翻译一下玛德都是什么佛系语句, 简直受不了, 写了等于不写。这个东西工作量是U盘的好几倍, 你看着办吧
雪    币: 56
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
wx_幼儿园的王 2019-4-20 09:59
42
0
wumnkx 你跟你老师说, wpd要重新开个课题,写个新的驱动搞了, 资料少, 不一定搞的定, 微软的文档真是一帮神仙写的, 用谷歌翻译一下玛德都是什么佛系语句, 简直受不了, 写了等于不写。这个东西工作量是U盘 ...
你那个竞品的链接可以发一份给我看看嘛
雪    币: 56
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
wx_幼儿园的王 2019-4-20 10:16
43
0
wumnkx 你跟你老师说, wpd要重新开个课题,写个新的驱动搞了, 资料少, 不一定搞的定, 微软的文档真是一帮神仙写的, 用谷歌翻译一下玛德都是什么佛系语句, 简直受不了, 写了等于不写。这个东西工作量是U盘 ...
我自己觉得既然他连接生成了文件,文件过滤系统应该能抓到吧
雪    币: 103
活跃值: (1488)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
wumnkx 2019-4-20 10:28
44
0
wx_幼儿园的王 我自己觉得既然他连接生成了文件,文件过滤系统应该能抓到吧
竞品是企业级的产品, 不是1个链接就能用的, 要申请激活码。我不透漏了。
你看看wdk目录下的tool, 找一下有没有devcon, 然后在命令行下 devcon /? 看下有哪些参数, 然后稍微转下自己灵活的小脑瓜就知道怎么用了
雪    币: 56
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
wx_幼儿园的王 2019-4-20 11:31
45
0
wumnkx 竞品是企业级的产品, 不是1个链接就能用的, 要申请激活码。我不透漏了。 你看看wdk目录下的tool, 找一下有没有devcon, 然后在命令行下 devcon /? 看下有哪些参数, 然后稍微转 ...
好了,我师父要我不管用什么方法把便携设备不包括摄像头之类的存储设备禁用和只读,还是要学习WPD
雪    币: 103
活跃值: (1488)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
wumnkx 2019-4-21 23:12
46
0
wumnkx 没实现, 前面的pccq大佬说他用umdf filter实现了。 你如果单纯想禁用就直接禁设备就好了, 想高级点就写个NT驱动禁用wudfhost.exe启动就好。 要精确控制文件读写就得用umd ...
最后于 2019-4-21 23:13 被wumnkx编辑 ,原因:
雪    币: 103
活跃值: (1488)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
wumnkx 2019-4-21 23:14
47
0
wumnkx 我也不知道啊 , pccq大佬也不说具体怎么搞, 看看就好
最后于 2019-4-21 23:15 被wumnkx编辑 ,原因:
雪    币: 103
活跃值: (1488)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
wumnkx 2019-4-21 23:16
48
0
pccq C:\Windows\System32\drivers\UMDF目录下面有2个文件:WpdFs.dll和WpdMtpDr.dll,前者用于U盘,后者用于mtp设备,umdf filter要过滤后者。
大锅, 你说的umdf我自己也撸了一个, 这玩意只能针对特定设备啊, 不能控制所有便携设备, 最后我还是用kmdf来搞了, 只能搞禁用, 只读都不能搞, 文件名什么的都取不到。综合衡量了一下, 我决定搞个NT驱动, 保护组策略的注册表的方式来搞只读和禁用, 文件审计现在还在摸索中, 虽然我想到了好几个方案,但是领导要我先逆竞品的方案, 尼玛这个竞品竟然是多进程的, 资源管理器被它挂了20个多dll, 真他妈不好逆啊, 算了, 我就不含糊了, 竞品是ipguard,它能审计到便携设备的文件增加, 但不能审计来源, 我最开始怀疑他是用SHChangeNotifyRegister来实现的, 用IDA看了下, 没有;用windbg挂断点, 不命中;哎, 只能再让领导多给我点时间了
雪    币: 1243
活跃值: (1815)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
库尔 2019-4-22 01:30
49
0
这个ipguard听人说透明是自己解析文件格式,自己做了个界面让他读取.比透明加密稳啊.
雪    币: 56
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
wx_幼儿园的王 2019-4-22 09:20
50
0
wumnkx 大锅, 你说的umdf我自己也撸了一个, 这玩意只能针对特定设备啊, 不能控制所有便携设备, 最后我还是用kmdf来搞了, 只能搞禁用, 只读都不能搞, 文件名什么的都取不到。综合衡量了一下, 我决定 ...
问问楼主,UMDF  winDDk有例子吗,是哪些例子,我也想做个简单的看看效果
游客
登录 | 注册 方可回帖
返回