[发明专利]一种基于多重沙盒映射与文件分叉的多用户远程系统在审
申请号: | 201910059826.8 | 申请日: | 2019-01-22 |
公开(公告)号: | CN111460438A | 公开(公告)日: | 2020-07-28 |
发明(设计)人: | 张维加 | 申请(专利权)人: | 张维加 |
主分类号: | G06F21/53 | 分类号: | G06F21/53 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 310000 浙江省杭州市余杭*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 多重 映射 文件 分叉 多用户 远程 系统 | ||
1.一种基于多重沙盒映射与文件分叉的多用户远程系统,该系统包含有:
a.至少一台基础服务器,基础服务器安装有基于NT架构的操作系统,有文件系统,可安装应用程序;
b.在服务器上创建有多个用户,并在服务器上部署针对各个用户的多用户的全局服务沙盒,即用户A登录机器后进入服务沙盒A,用户B登录机器后进入服务沙盒B,以此类推,全局服务沙盒重定向程序对系统的消息与进程进行拦截与路径重定向,将客户端的文件操作、注册表操作和程序进程操作的真实路径指向对应该服务沙盒的真实存储区,各个服务沙盒均设置各自对应的存储位置来存储重定向后的文件;
c.进入服务沙盒后,其explorer进程等也都应用于沙盒的映射重定向关系,从而其桌面实际上在服务沙盒中,与服务沙盒外的桌面不同,进入后通过其桌面快捷方式或开始菜单等打开任何程序,均通过服务沙盒打开,运行相关的程序文件组件也实际上是创建了重定向的副本(多副本运行架构);
d.每一个服务沙盒都有着自身独立的映射关系,有着自身的重定向存储,与其他用户的服务沙盒隔离。
2.根据权利要求1的一种系统,其特征在于,在文件和注册表层面实现用户间隔离与各自分叉:随着用户在各自的服务沙盒内对文件的调用、修改、移动等,均按照每个服务沙盒创建副本、重定向的方式,在该服务沙盒所对应的存储区域中创建副本,将真实路径重定向到新的副本,从而随着用户的使用形成数据空间的分叉(在某服务沙盒A下还可以创建下一级服务子沙盒A1,从而形成多层服务沙盒,而A1的文件与程序则基于A的某一时刻状态为初始状态开始分叉、演化)。
3.根据权利要求1的一种系统,其特征在于,所述的服务沙盒是一种全局的重定向机制,将explorer进程、用户的各种文件夹(桌面、我的文档)等,都设置为自动进入沙盒(即hook这些进程、强制注入),假定用户C以远程方式登录,则登录后即实际上进入了基于基础服务器安装部署的对应用户C的服务沙盒,其所看到的桌面、文件、应用程序,实际上都是经过了重定向的虚拟化映射,真实的存储位置位于用户C专门的存储位置,在这种模式下,用户C打开任何程序,相关的程序文件组件也实际上是创建了重定向的副本,在服务沙盒内的程序或文件夹而引申打开的程序、文件夹也自然在服务沙盒内(全局设计)。
4.根据权利要求1的一种系统,其特征在于,服务沙盒的驱动负责DLL的自动注入,在内核中使用PsSetLoadImageNotifyRoutine,即注册模块加载回调来获取进程启动时的DLL注入时机,当模块回调被调用时,这时候进程exe模块已被加载到内存中,但其所依赖的DLL尚未被加载,可以通过修改内存中的exe模块的输入表,在输入表靠前位置中额外加入一个服务沙盒DLL,这样达到了在进程启动时自动加载服务沙盒DLL的目的。
5.根据权利要求1的一种系统,其特征在于,多用户服务沙盒在应用层Hook以如下方式启动:当进程初次加载本服务沙盒DLL时,此时只有ntdll,user32,kernel32等少数几个DLL已完成初始化,在此时修改所需要管控的底层api入口,跳转到服务沙盒DLL中相关入口;DLL中接管的入口函数会作一些判断修改,或调用原有的底层功能,或直接作一番处理而不调用原底层功能,最终返回到用户模块,对用户来说是透明的。
6.根据权利要求1 的一种系统,其特征在于,每个服务沙盒所对应的真实重定向存储区域是一个个互相独立的虚拟磁盘,该虚拟磁盘还通过透明加密实现对用户进程的额外权限控制。
7.根据权利要求1 的一种系统,其特征在于,每个服务沙盒所对应的真实重定向存储区域是一个虚拟磁盘下的各个文件夹,经透明加密分配权限。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于张维加,未经张维加许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910059826.8/1.html,转载请声明来源钻瓜专利网。