首页
社区
课程
招聘
[求助]需求写一个沙盒,想用minifilter实现,有有经验的大佬分享点经验吗
发表于: 2017-10-12 09:36 4126

[求助]需求写一个沙盒,想用minifilter实现,有有经验的大佬分享点经验吗

2017-10-12 09:36
4126
之前对需求理解上产生了一点分歧,耽搁了不少时间所以时间有点紧
初步设计是这样的,处理3个IRP,然后通过pid来判断是否需要过滤,想把需要处理的请求重定位到自己的目录下。
IRP_MJ_CREATE:
如需处理就重定位到自己的目录下;如目录中不存在;如有写和创建标志位,就在自己的目录下复制一份源/创建的,否则直接读取源目录中的。
IRP_MJ_SET_INFORMATION:
处理重命名
IRP_MJ_DIRECTORY_CONTROL:
处理文件枚举使达到在沙盒中运行的程序能看到沙盒目录和系统真实目录合集的效果。
注册表部分用CmRegisterCallbackEx进行过滤。
有没有什么遗漏的或者无法实现或者实现中可能问题比较多的,处理枚举会不会很复杂..

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

收藏
免费 0
支持
分享
最新回复 (6)
雪    币: 12848
活跃值: (9147)
能力值: ( LV9,RANK:280 )
在线值:
发帖
回帖
粉丝
2
1、内核对象隔离你打算怎么搞?沙盒里的进程按理说不应该允许访问沙盒外的内核对象(如event  section  semaphore  mutex  port  namedpipe等)
2、沙盒内进程OpenProcess打开沙盒外的进程返回失败吗?x64下你可能得考虑过pg了
3、ring3直接读写磁盘你打算怎么过滤?
4、沙盒内进程也能加载驱动吗?
5、沙盒内进程可以获取管理员权限吗?如果不给管理员权限的话很多带小盾牌的程序可是跑不起来的
结果搞到最后楼主发现还是搞个虚拟机最省事
2017-10-12 13:24
0
雪    币: 203
活跃值: (30)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
3
hzqst 1、内核对象隔离你打算怎么搞?沙盒里的进程按理说不应该允许访问沙盒外的内核对象(如event  section  semaphore  mutex ...
暂时需求只要能保护文件和注册表不被沙盒内的修改破坏就行了。考虑到后续我还是再去确认一下吧。之前没接触过沙盒,百度一下还以为只要考虑下重定向就行了呢。直接读写磁盘过滤暂时也先不考虑了吧。谢谢大佬。我再去问问经理那边到底要做到什么程度
2017-10-12 14:09
0
雪    币: 7
活跃值: (333)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
4
你可以反汇编下VMware的app  volumes产品
非常牛逼的一个玩意
2017-10-14 01:14
0
雪    币: 8835
活跃值: (2404)
能力值: ( LV12,RANK:760 )
在线值:
发帖
回帖
粉丝
5
hzqst 1、内核对象隔离你打算怎么搞?沙盒里的进程按理说不应该允许访问沙盒外的内核对象(如event  section  semaphore  mutex ...
你说这个是要学微软标杆hvix64  第二套ntoskrnl从初始化到背锅
2017-10-14 14:51
0
雪    币: 307
活跃值: (60)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
6
问一下,minifilter的文件备份是不是就是在内核reafFile和writeFile呀!我想做的就是在内核监控进程对文件是否有操作,如果有的话,就在操作前将文件备份一下?能给一下思路么
2018-4-6 15:54
0
雪    币: 16
活跃值: (527)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
搞这个好像没什么难的吧,处理一下create做重定向,哪些操作需要重解析,哪些需要读原来的文件,setinfo处理一下重命名和删除,在做一个目录查询合并,然后希望用户体验好的,在搞一个目录修改通知,注册表没动过,不了解
2018-4-25 15:11
0
游客
登录 | 注册 方可回帖
返回
//