CN103971051A - 一种文件隔离方法、装置和系统 - Google Patents
一种文件隔离方法、装置和系统 Download PDFInfo
- Publication number
- CN103971051A CN103971051A CN201310032866.6A CN201310032866A CN103971051A CN 103971051 A CN103971051 A CN 103971051A CN 201310032866 A CN201310032866 A CN 201310032866A CN 103971051 A CN103971051 A CN 103971051A
- Authority
- CN
- China
- Prior art keywords
- redirected
- request
- volume equipment
- file
- change operation
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
- G06F3/0619—Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/52—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
- G06F21/53—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/188—Virtual file systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/0643—Management of files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0662—Virtualisation aspects
- G06F3/0665—Virtualisation aspects at area level, e.g. provisioning of virtual or logical volumes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/068—Hybrid storage device
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- Human Computer Interaction (AREA)
- Computer Hardware Design (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明实施例公开了一种文件隔离方法、装置和系统,以方法的实现为例,包括:通过输入/输出对象管理器接收来自第一进程对文件系统下的卷设备的更改操作请求;确定所述第一进程是否为沙箱内的进程,若是,则将所述更改操作请求重定向到与所述更改操作请求指向的卷设备对应的虚拟卷设备,并将所述重定向后的更改操作请求发送给所述输入/输出对象管理器。以上方案利用I/O对象管理器的重定向能力及卷虚拟技术,在I/O请求到达卷设备之前确定I/O请求的发起者是否为沙箱内的进程,使得在卷设备这一层可以确定I/O请求的最初发起者是否是沙箱内的进程,从而可以实现卷设备级别的文件隔离。
Description
技术领域
本发明涉及通信技术领域,特别涉及一种文件隔离方法、装置和系统。
背景技术
文件隔离技术广泛用于沙箱,位于沙箱内的应用程序对系统所做的修改操作会被隔离掉,不会对真实系统产生任何影响。如:沙箱内应用程序的进程在C:\Windows目录下创建了文件Virus.exe,沙箱内进程能看到,但是系统的C:\Windows目录下并不存在该文件。这就是文件隔离技术。
目前的文件隔离技术一般基于文件过滤驱动程序实现,文件过滤驱动监控文件的创建、读写以及更改,并结合重定位来实现文件隔离。其中主要有以下两种处理方法:部分重定位和完全重定位。
使用部分重定位技术需要监控文件的打开,读写,大小更改,重命名等诸多操作,而且需要为每个更改过的文件都维护一份更改记录,因此部分重定位过于复杂繁琐。
完全重定位技术,则是简单的重定位文件夹,如某运行在沙箱内的木马进程在C:\Windows目录下释放病毒文件virus.exe,完全重定位将文件夹C:\Windows重定位到另一个文件下如C:\SandBox\Windows下,这样文件将不会生成在windows目录,实现了一定程度的文件隔离,这种方法使得沙箱内进程释放的恶意文件仍然存在,虽然不存在于C:\Windows\下,但却存在于C:\SandBox\Windows,因此安全性较差。
发明内容
本发明实施例提供了一种文件隔离方法、装置和系统,用于提高设备的安全性。
一种文件隔离方法,包括:
通过输入/输出对象管理器接收来自第一进程对文件系统下的卷设备的更改操作请求;
确定所述第一进程是否为沙箱内的进程,若是,则将所述更改操作请求重定向到与所述更改操作请求指向的卷设备对应的虚拟卷设备,并将所述重定向后的更改操作请求发送给所述输入/输出对象管理器。
一种文件隔离方法,包括:
接收第一进程发出的对文件系统下的卷设备的更改操作请求;
将所述更改操作请求发送给注册文件过滤驱动,并接收所述注册文件过滤驱动在确定所第一进程为沙箱内进程后,返回的重定向后的更改操作请求;
将所述重定向后的更改操作请求,发送给所述重定向后的更改操作请求指向的虚拟卷设备所在的虚拟文件系统。
一种文件隔离装置,包括:
请求接收单元,用于通过输入/输出对象管理器接收来自第一进程对文件系统下的卷设备的更改操作请求;
进程确定单元,用于确定所述第一进程是否为沙箱内的进程;
重定向单元,用于若所述进程确定单元确定结果为是,则将所述更改操作请求重定向到与所述更改操作请求指向的卷设备对应的虚拟卷设备;
请求发送单元,用于将所述重定向单元重定向后的更改操作请求发送给所述输入/输出对象管理器。
一种文件隔离装置,包括:
第一请求接收单元,用于接收第一进程发出的对文件系统下的卷设备的更改操作请求;
第一请求发送单元,用于将所述请求接收单元接收的更改操作请求发送给注册文件过滤驱动;
第二请求接收单元,用于接收所述注册文件过滤驱动在确定所第一进程为沙箱内进程后,返回的重定向后的更改操作请求;
第二请求发送单元,用于将所述第二请求接收单元接收的重定向后的更改操作请求,发送给所述重定向后的更改操作请求指向的虚拟卷设备所在的虚拟文件系统。
一种文件隔离系统,包括:
输入/输出对象管理器,用于接收第一进程发出的对文件系统下的卷设备的更改操作请求;将所述更改操作请求发送给注册文件过滤驱动,并接收所述注册文件过滤驱动在确定所第一进程为沙箱内进程后,返回的重定向后的更改操作请求;将所述重定向后的更改操作请求,发送给所述重定向后的更改操作请求指向的虚拟卷设备所在的虚拟文件系统;
注册文件过滤驱动,用于通过输入/输出对象管理器接收来自第一进程对文件系统下的卷设备的更改操作请求;确定所述第一进程是否为沙箱内的进程,若是,则将所述更改操作请求重定向到与所述更改操作请求指向的卷设备对应的虚拟卷设备,并将所述重定向后的更改操作请求发送给所述输入/输出对象管理器;
虚拟文件系统,用于将接收到的重定向后的更改操作请求,发送给所述重定向后的更改操作请求对应的虚拟卷设备。
从以上技术方案可以看出,本发明实施例具有以下优点:利用I/O对象管理器的重定向能力及卷虚拟技术,在I/O请求到达卷设备之前确定I/O请求的发起者是否为沙箱内的进程,使得在卷设备这一层可以确定I/O请求的最初发起者是否是沙箱内的进程,从而可以实现卷设备级别的文件隔离。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的卷设备级别的方案的方法流程示意图;
图2为本发明实施例方法流程示意图;
图3为本发明实施例方法流程示意图;
图4为本发明实施例举例的数据流向示意图;
图5为本发明实施例举例的数据流向示意图;
图6为本发明实施例举例的数据流向示意图;
图7为本发明实施例装置结构示意图;
图8为本发明实施例装置结构示意图;
图9为本发明实施例系统结构示意图;
图10为本发明实施例系统结构示意图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部份实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
基于发明人对现有技术的分析,发明人提出了使用卷设备级别来解决前述技术问题的方案,卷设备级别的方案如图1所示的进程数据流示意图,具体流程如下:
101:进程A对卷设备C:\进行操作,例如创建文件C:\1.txt,向I/O(Input/Output,输入/输出)对象管理器发送上述操作的操作请求;上述操作请求以更改操作请求为例,进行说明。更改操作请求是对卷设备C:\内的数据进行更改的操作,可以是创建也可以是修改,具体的操作形式本发明实施例不予限定。
102:I/O(Input/Output,输入/输出)对象管理器经过一系列操作后,将前述操作请求发给卷设备C:\对应的文件系统。
103:文件系统对上述操作请求经过处理后,以同步或异步的方式将上述操作请求对应的数据写入卷设备C:\。
若上述操作请求对应的数据在步骤103中以异步的方式写入,那么卷设备C:\在得到请求后,获取到的当前进程是系统进程。因此使用卷设备级别进行文件隔离存在困难即:卷设备级别的隔离方案在卷设备无法判断I/O最初发起者是否是沙箱内进程,进而无法完成隔离操作。
本发明实施例提供了一种文件隔离方法,该方法可以在具有过滤功能的注册文件过滤驱动中实现,在后续实施例中将以此为例给出更详细的说明,如图2所示,包括:
201:通过输入/输出对象管理器接收来自第一进程对文件系统下的卷设备的更改操作请求;
上述更改操作请求对应的可以是,对文件系统下的卷设备中的文件或者数据进行的任意可能产生变更的操作,其通常的表现形式可以是创建文件、修改数据等等,其具体的表现形式本发明实施例不予限定。
202:确定上述第一进程是否为沙箱内的进程,若是,则将上述更改操作请求重定向到与上述更改操作请求指向的卷设备对应的虚拟卷设备,并将上述重定向后的更改操作请求发送给上述输入/输出对象管理器。
以上实施例,利用I/O对象管理器的重定向能力及卷虚拟技术,在I/O请求到达卷设备之前确定I/O请求的发起者是否为沙箱内的进程,使得在卷设备这一层可以确定I/O请求的最初发起者是否是沙箱内的进程,从而可以实现卷设备级别的文件隔离。
进一步地,本发明实施例还提供了更改操作请求不是沙箱内的进程的实现方案如下:上述方法还可以包括:若上述第一进程不是沙箱内的进程,则将上述更改操作请求发送给上述更改操作请求指向的卷设备所在的文件系统。
进一步地,本发明实施例还提供了读取操作请求的实现方案,上述方法还可以包括:通过输入/输出对象管理器接收来自第二进程对上述文件系统下的卷设备的读取操作请求;若确定上述第二进程为沙箱内的进程,则将上述读取操作请求重定向到与上述读取操作请求指向的卷设备对应的虚拟卷设备;并将上述重定向后的读取操作请求发送给上述输入/输出对象管理器。
进一步地,本发明实施例还提供了读取操作请求的实现方案,本实施例与前一实施例相比,区别在于本实施例中第二进程不是沙箱内的进程,上述方法还可以包括:若确定上述第二进程不是沙箱内的进程,则将上述读取操作请求发送给上述读取操作请求指向的卷设备所在的文件系统。
本发明实施例还提供了另一种文件隔离方法,该方法可以在I/O对象管理器中实现,在后续实施例中将以此为例给出更详细的说明,如图3所示,包括:
301:接收第一进程发出的对文件系统下的卷设备的更改操作请求;
上述更改操作请求对应的可以是,对文件系统下的卷设备中的文件或者数据进行的任意可能产生变更的操作,其通常的表现形式可以是创建文件、修改数据等等,其具体的表现形式本发明实施例不予限定。
302:将上述更改操作请求发送给注册文件过滤驱动,并接收上述注册文件过滤驱动在确定所第一进程为沙箱内进程后,返回的重定向后的更改操作请求;
本步骤中注册文件过滤驱动如何确定第一进程是否为沙箱内进程的具体实现可以参考前一方法实施例,此处不再赘述。
303:将上述重定向后的更改操作请求,发送给上述重定向后的更改操作请求指向的虚拟卷设备所在的虚拟文件系统。
以上实施例,利用I/O对象管理器的重定向能力及卷虚拟技术,在I/O请求到达卷设备之前确定I/O请求的发起者是否为沙箱内的进程,使得在卷设备这一层可以确定I/O请求的最初发起者是否是沙箱内的进程,从而可以实现卷设备级别的文件隔离。
进一步地,本发明实施例还提供了读取操作请求的实现方案,上述方法还可以包括:接收第二进程发出的对文件系统下的卷设备的读取操作请求;
将上述读取操作请求发送给注册文件过滤驱动,并接收上述注册文件过滤驱动在确定上述第二进程为沙箱内进程后,返回的重定向后的读取操作请求;
将上述重定向后的读取操作请求,发送给上述重定向后的读取操作请求指向的虚拟卷设备所在的虚拟文件系统。
本发明实施例给出了综合以上两个实施例,的具体实现方案的几个举例,以下举例将侧重于请求的流向进行说明,利用I/O对象管理器的重定向能力及卷虚拟技术,在卷设备这一层判断I/O请求的最初发起者是否是沙箱内的进程,从而实现卷设备级别的文件隔离。枚举系统所有卷设备,为每个卷设备都创建一个对应的虚拟卷设备,图4~6所示的,对卷设备C:\创建一个虚拟的卷设备VC:\。其中的注册文件过滤驱动,用来监控文件系统范围内的文件操作。其详细流程如下:
一、若有沙箱内进程对卷设备C:\上的文件发起更改操作请求。如图4所示,并可对照图5所示流程,查看两者的区别,具体数据流向为:
进程A在步骤1发起更改卷设备C:\上的文件C:\1.txt的I/O请求(即更改请求),I/O对象管理器在收到请求后,经过相关处理会在步骤2将更改请求发给注册文件过滤驱动,注册文件过滤驱动判断并检测到进程A为沙箱内进程,然后利用I/O对象管理器的重定向机制,在步骤3将当前更改请求重定位到虚拟卷设备VC:\上,并将控制权再次交给I/O对象管理器,I/O对象管理器在经过相关处理后,在步骤4将重定向后的更改请求发给虚拟卷设备VC:\所对应的虚拟文件系统,该虚拟文件系统稍后在步骤5以同步或异步的方式将更改请求发给虚拟卷设备VC:\。虚拟卷设备在接收到更改请求后,即可判断出当前I/O请求的最初发起者为沙箱内进程,虚拟卷设备VC:\就可以不将本次更改请求的操作内容写到真实的卷设备C:\上而是在步骤6写到一个私有文件上,并将本次更改操作内容记录到私有位图上。操作完成。
二、若有非沙箱内进程对卷设备C:\上文件发起更改操作请求,如图5所示,并可对照图4所示流程,查看两者的区别,具体数据流向为:
进程A在步骤1发起更改卷设备C:\上的文件C:\1.txt的I/O请求(即更改请求),I/O对象管理器在收到请求后,经过相关处理会在步骤2将更改请求发给注册文件过滤驱动,注册文件过滤驱动判断并检测到进程A为非沙箱内进程,不做特殊处理,在步骤3直接将请求发给文件系统,文件系统稍后在步骤4会以同步或异步的方式将I/O请求发给卷设备C:\。操作完成。
三、若有沙箱内进程读取卷设备C:\上的文件,如图6所示,并可对照图4和图5所示流程,查看读取操作流程与更改操作之间的数据流向关系,具体数据流向为:
进程A在步骤1发起读取卷设备C:\上的文件C:\1.txt的I/O请求(即读取请求),I/O对象管理器在收到请求后,经过相关处理会在步骤2将读取请求发给注册文件过滤驱动,该注册文件过滤驱动注册文件过滤驱动判断并检测到进程A为沙箱内进程,然后利用I/O对象管理器的重定向机制,在步骤3将当前的读取请求重定位到虚拟卷设备VC:\上,并将控制权再次交给I/O对象管理器,I/O对象管理器在经过相关处理后,在步骤4将重定向后的读取请求发给虚拟卷设备VC:\所对应的虚拟文件系统,该虚拟文件系统稍后在步骤5会以同步或异步的方式将读取请求发给卷设备VC:\。虚拟卷设备VC:\在接到上述读取请求后,即可判断出当前读取请求的最初发起着为沙箱内进程,虚拟卷设备VC:\检查私有位图记录,查看本次读取范围是否在私有文件内,如在私有文件在内则在步骤6从私有文件读取,若不在私有文件内,则在步骤7从真实的卷设备C:\上读取。操作完成。
本发明实施例还提供了一种文件隔离装置,如图7所示,包括:
请求接收单元701,用于通过输入/输出对象管理器接收来自第一进程对文件系统下的卷设备的更改操作请求;
进程确定单元702,用于确定上述第一进程是否为沙箱内的进程;
重定向单元703,用于若上述进程确定单元702确定结果为是,则将上述更改操作请求重定向到与上述更改操作请求指向的卷设备对应的虚拟卷设备;
请求发送单元704,用于将上述重定向单元703重定向后的更改操作请求发送给上述输入/输出对象管理器。
以上实施例,利用I/O对象管理器的重定向能力及卷虚拟技术,在I/O请求到达卷设备之前确定I/O请求的发起者是否为沙箱内的进程,使得在卷设备这一层可以确定I/O请求的最初发起者是否是沙箱内的进程,从而可以实现卷设备级别的文件隔离。
进一步地,本发明实施例还提供了更改操作请求不是沙箱内的进程的实现方案如下:上述请求发送单元704,还用于若上述进程确定单元702确定上述第一进程不是沙箱内的进程,则将上述更改操作请求发送给上述更改操作请求指向的卷设备所在的文件系统。
进一步地,本发明实施例还提供了读取操作请求的实现方案,上述请求接收单元701,还用于通过输入/输出对象管理器接收来自第二进程对上述文件系统下的卷设备的读取操作请求;
上述进程确定单元702,还用于确定上述第二进程是否为沙箱内的进程;
上述重定向单元703,还用于若上述进程确定单元702确定结果为是,则将上述读取操作请求重定向到与上述读取操作请求指向的卷设备对应的虚拟卷设备;
上述请求发送单元704,还用于将上述重定向单元703重定向后的读取操作请求发送给上述输入/输出对象管理器。
进一步地,本发明实施例还提供了读取操作请求的实现方案,本实施例与前一实施例相比,区别在于本实施例中第二进程不是沙箱内的进程,上述请求发送单元704,还用于若上述进程确定单元702确定上述第二进程不是沙箱内的进程,则将上述读取操作请求发送给上述读取操作请求指向的卷设备所在的文件系统。
本发明实施例还提供了一种文件隔离装置,如图8所示,包括:
第一请求接收单元801,用于接收第一进程发出的对文件系统下的卷设备的更改操作请求;
第一请求发送单元802,用于将上述请求接收单元接收的更改操作请求发送给注册文件过滤驱动;
第二请求接收单元803,用于接收上述注册文件过滤驱动在确定所第一进程为沙箱内进程后,返回的重定向后的更改操作请求;
第二请求发送单元804,用于将上述第二请求接收单元803接收的重定向后的更改操作请求,发送给上述重定向后的更改操作请求指向的虚拟卷设备所在的虚拟文件系统。
以上实施例,利用I/O对象管理器的重定向能力及卷虚拟技术,在I/O请求到达卷设备之前确定I/O请求的发起者是否为沙箱内的进程,使得在卷设备这一层可以确定I/O请求的最初发起者是否是沙箱内的进程,从而可以实现卷设备级别的文件隔离。
进一步地,本发明实施例还提供了读取操作请求的实现方案,上述第一请求接收单元801,还用于接收第二进程发出的对文件系统下的卷设备的读取操作请求;
上述第一请求发送单元802,还用于将上述读取操作请求发送给注册文件过滤驱动;
上述第二请求接收单元803,还用于接收上述注册文件过滤驱动在确定上述第二进程为沙箱内进程后,返回的重定向后的读取操作请求;
上述第二请求发送单元804,还用于将上述第二请求接收单元803接收的重定向后的读取操作请求,发送给上述重定向后的读取操作请求指向的虚拟卷设备所在的虚拟文件系统。
本发明实施例还提供了一种文件隔离系统,如图9所示,包括:
输入/输出对象管理器901,用于接收第一进程发出的对文件系统下的卷设备的更改操作请求;将上述更改操作请求发送给注册文件过滤驱动902,并接收上述注册文件过滤驱动902在确定所第一进程为沙箱内进程后,返回的重定向后的更改操作请求;将上述重定向后的更改操作请求,发送给上述重定向后的更改操作请求指向的虚拟卷设备所在的虚拟文件系统903;
注册文件过滤驱动902,用于通过输入/输出对象管理器901接收来自第一进程对文件系统下的卷设备的更改操作请求;确定上述第一进程是否为沙箱内的进程,若是,则将上述更改操作请求重定向到与上述更改操作请求指向的卷设备对应的虚拟卷设备,并将上述重定向后的更改操作请求发送给上述输入/输出对象管理器901;
虚拟文件系统903,用于将接收到的重定向后的更改操作请求,发送给上述重定向后的更改操作请求对应的虚拟卷设备。
以上实施例,利用I/O对象管理器的重定向能力及卷虚拟技术,在I/O请求到达卷设备之前确定I/O请求的发起者是否为沙箱内的进程,使得在卷设备这一层可以确定I/O请求的最初发起者是否是沙箱内的进程,从而可以实现卷设备级别的文件隔离。
进一步地,本发明实施例还提供了虚拟卷设备在接收到沙箱内进程发起的更改操作请求后的具体处理方案,如图10所示,上述系统还包括:
虚拟卷设备1001,用于对上述重定向后的更改操作请求指向的本虚拟卷设备1001中的私有文件执行上述重定向后的操作请求,并在位图中记录本次更改操作。
本实施例,在卷设备这一层确定了I/O请求的最初发起者是沙箱内的进程,可以实现卷设备级别的文件隔离。
进一步地,本发明实施例还提供了读取操作请求的实现方案,上述输入/输出对象管理器901,还用于接收第二进程发出的对文件系统下的卷设备的读取操作请求;将上述读取操作请求发送给注册文件过滤驱动902,并接收上述注册文件过滤驱动902在确定上述第二进程为沙箱内进程后,返回的重定向后的读取操作请求;将上述重定向后的读取操作请求,发送给上述重定向后的读取操作请求指向的虚拟卷设备1001所在的虚拟文件系统903;
上述虚拟文件系统903,还用于将接收到的重定向后的读取操作请求,发送给上述重定向后的读取操作请求对应的虚拟卷设备1001。
进一步地,本发明实施例还提供了读取操作请求的实现方案,本方案与前一方案的区别在于进一步确定读取操作请求的内容是否在虚拟卷设备中,上述虚拟卷设备1001,还用于若上述重定向后的读取操作请的读取范围是否在记录的上述位图中,若是,则对上述重定向后的读取操作请求指向的本虚拟卷设备1001中的私有文件执行上述重定向后的读取操作请求;否则,将对上述重定向后的读取操作请求指向的本虚拟卷设备1001对应的卷设备执行上述重定向后的读取操作请求。
值得注意的是,上述装置实施例中,所包括的各个单元只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
另外,本领域普通技术人员可以理解实现上述各方法实施例中的全部或部分步骤是可以通过程序来指令相关的硬件完成,相应的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明实施例揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。
Claims (16)
1.一种文件隔离方法,其特征在于,包括:
通过输入/输出对象管理器接收来自第一进程对文件系统下的卷设备的更改操作请求;
确定所述第一进程是否为沙箱内的进程,若是,则将所述更改操作请求重定向到与所述更改操作请求指向的卷设备对应的虚拟卷设备,并将所述重定向后的更改操作请求发送给所述输入/输出对象管理器。
2.根据权利要求1所述方法,其特征在于,还包括:
若所述第一进程不是沙箱内的进程,则将所述更改操作请求发送给所述更改操作请求指向的卷设备所在的文件系统。
3.根据权利要求1或2所述方法,其特征在于,还包括:
通过输入/输出对象管理器接收来自第二进程对所述文件系统下的卷设备的读取操作请求;
若确定所述第二进程为沙箱内的进程,则将所述读取操作请求重定向到与所述读取操作请求指向的卷设备对应的虚拟卷设备;并将所述重定向后的读取操作请求发送给所述输入/输出对象管理器。
4.根据权利要求3所述方法,其特征在于,还包括:
若确定所述第二进程不是沙箱内的进程,则将所述读取操作请求发送给所述读取操作请求指向的卷设备所在的文件系统。
5.一种文件隔离方法,其特征在于,包括:
接收第一进程发出的对文件系统下的卷设备的更改操作请求;
将所述更改操作请求发送给注册文件过滤驱动,并接收所述注册文件过滤驱动在确定所第一进程为沙箱内进程后,返回的重定向后的更改操作请求;
将所述重定向后的更改操作请求,发送给所述重定向后的更改操作请求指向的虚拟卷设备所在的虚拟文件系统。
6.根据权利要求5所述方法,其特征在于,还包括:
接收第二进程发出的对文件系统下的卷设备的读取操作请求;
将所述读取操作请求发送给注册文件过滤驱动,并接收所述注册文件过滤驱动在确定所述第二进程为沙箱内进程后,返回的重定向后的读取操作请求;
将所述重定向后的读取操作请求,发送给所述重定向后的读取操作请求指向的虚拟卷设备所在的虚拟文件系统。
7.一种文件隔离装置,其特征在于,包括:
请求接收单元,用于通过输入/输出对象管理器接收来自第一进程对文件系统下的卷设备的更改操作请求;
进程确定单元,用于确定所述第一进程是否为沙箱内的进程;
重定向单元,用于若所述进程确定单元确定结果为是,则将所述更改操作请求重定向到与所述更改操作请求指向的卷设备对应的虚拟卷设备;
请求发送单元,用于将所述重定向单元重定向后的更改操作请求发送给所述输入/输出对象管理器。
8.根据权利要求7所述装置,其特征在于,
所述请求发送单元,还用于若所述进程确定单元确定所述第一进程不是沙箱内的进程,则将所述更改操作请求发送给所述更改操作请求指向的卷设备所在的文件系统。
9.根据权利要求7或8所述装置,其特征在于,
所述请求接收单元,还用于通过输入/输出对象管理器接收来自第二进程对所述文件系统下的卷设备的读取操作请求;
所述进程确定单元,还用于确定所述第二进程是否为沙箱内的进程;
所述重定向单元,还用于若所述进程确定单元确定结果为是,则将所述读取操作请求重定向到与所述读取操作请求指向的卷设备对应的虚拟卷设备;
所述请求发送单元,还用于将所述重定向单元重定向后的读取操作请求发送给所述输入/输出对象管理器。
10.根据权利要求9所述装置,其特征在于,
所述请求发送单元,还用于若所述进程确定单元确定所述第二进程不是沙箱内的进程,则将所述读取操作请求发送给所述读取操作请求指向的卷设备所在的文件系统。
11.一种文件隔离装置,其特征在于,包括:
第一请求接收单元,用于接收第一进程发出的对文件系统下的卷设备的更改操作请求;
第一请求发送单元,用于将所述请求接收单元接收的更改操作请求发送给注册文件过滤驱动;
第二请求接收单元,用于接收所述注册文件过滤驱动在确定所第一进程为沙箱内进程后,返回的重定向后的更改操作请求;
第二请求发送单元,用于将所述第二请求接收单元接收的重定向后的更改操作请求,发送给所述重定向后的更改操作请求指向的虚拟卷设备所在的虚拟文件系统。
12.根据权利要求11所述装置,其特征在于,
所述第一请求接收单元,还用于接收第二进程发出的对文件系统下的卷设备的读取操作请求;
所述第一请求发送单元,还用于将所述读取操作请求发送给注册文件过滤驱动;
所述第二请求接收单元,还用于接收所述注册文件过滤驱动在确定所述第二进程为沙箱内进程后,返回的重定向后的读取操作请求;
所述第二请求发送单元,还用于将所述第二请求接收单元接收的重定向后的读取操作请求,发送给所述重定向后的读取操作请求指向的虚拟卷设备所在的虚拟文件系统。
13.一种文件隔离系统,其特征在于,包括:
输入/输出对象管理器,用于接收第一进程发出的对文件系统下的卷设备的更改操作请求;将所述更改操作请求发送给注册文件过滤驱动,并接收所述注册文件过滤驱动在确定所第一进程为沙箱内进程后,返回的重定向后的更改操作请求;将所述重定向后的更改操作请求,发送给所述重定向后的更改操作请求指向的虚拟卷设备所在的虚拟文件系统;
注册文件过滤驱动,用于通过输入/输出对象管理器接收来自第一进程对文件系统下的卷设备的更改操作请求;确定所述第一进程是否为沙箱内的进程,若是,则将所述更改操作请求重定向到与所述更改操作请求指向的卷设备对应的虚拟卷设备,并将所述重定向后的更改操作请求发送给所述输入/输出对象管理器;
虚拟文件系统,用于将接收到的重定向后的更改操作请求,发送给所述重定向后的更改操作请求对应的虚拟卷设备。
14.根据权利要求13所述系统,其特征在于,还包括:
虚拟卷设备,用于对所述重定向后的更改操作请求指向的本虚拟卷设备中的私有文件执行所述重定向后的操作请求,并在位图中记录本次更改操作。
15.根据权利要求14所述系统,其特征在于,
所述输入/输出对象管理器,还用于接收第二进程发出的对文件系统下的卷设备的读取操作请求;将所述读取操作请求发送给注册文件过滤驱动,并接收所述注册文件过滤驱动在确定所述第二进程为沙箱内进程后,返回的重定向后的读取操作请求;将所述重定向后的读取操作请求,发送给所述重定向后的读取操作请求指向的虚拟卷设备所在的虚拟文件系统;
所述虚拟文件系统,还用于将接收到的重定向后的读取操作请求,发送给所述重定向后的读取操作请求对应的虚拟卷设备。
16.根据权利要求15所述系统,其特征在于,
所述虚拟卷设备,还用于若所述重定向后的读取操作请的读取范围是否在记录的所述位图中,若是,则对所述重定向后的读取操作请求指向的本虚拟卷设备中的私有文件执行所述重定向后的读取操作请求;否则,将对所述重定向后的读取操作请求指向的本虚拟卷设备对应的卷设备执行所述重定向后的读取操作请求。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310032866.6A CN103971051A (zh) | 2013-01-28 | 2013-01-28 | 一种文件隔离方法、装置和系统 |
PCT/CN2013/086221 WO2014114120A1 (zh) | 2013-01-28 | 2013-10-30 | 文件隔离方法、装置和系统 |
US14/807,241 US9785363B2 (en) | 2013-01-28 | 2015-07-23 | File quarantine method and apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310032866.6A CN103971051A (zh) | 2013-01-28 | 2013-01-28 | 一种文件隔离方法、装置和系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103971051A true CN103971051A (zh) | 2014-08-06 |
Family
ID=51226893
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310032866.6A Pending CN103971051A (zh) | 2013-01-28 | 2013-01-28 | 一种文件隔离方法、装置和系统 |
Country Status (3)
Country | Link |
---|---|
US (1) | US9785363B2 (zh) |
CN (1) | CN103971051A (zh) |
WO (1) | WO2014114120A1 (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105488387A (zh) * | 2014-09-28 | 2016-04-13 | 北京云巢动脉科技有限公司 | 一种安全沙盘重定向文件操作的方法及系统 |
CN105528542A (zh) * | 2014-09-28 | 2016-04-27 | 北京云巢动脉科技有限公司 | 一种基于软件免安装运行的管控方法及系统 |
CN105844151A (zh) * | 2016-03-18 | 2016-08-10 | 山东华软金盾软件股份有限公司 | 一种文件存储保护实现方法和系统 |
CN109522744A (zh) * | 2018-11-06 | 2019-03-26 | 北京指掌易科技有限公司 | 一种Android系统文件数据隔离保护方法 |
CN113139177A (zh) * | 2021-05-17 | 2021-07-20 | 杭州天宽科技有限公司 | 一种安卓应用虚拟化环境中的文件隔离优化增强方法 |
WO2022170946A1 (zh) * | 2021-02-09 | 2022-08-18 | 华为技术有限公司 | 一种访问控制方法及相关装置 |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10638677B2 (en) | 2009-08-03 | 2020-05-05 | University Of Wyoming | Vertical hydroponic plant production apparatus |
US9491915B2 (en) | 2009-08-03 | 2016-11-15 | University Of Wyoming | Vertical hydroponic plant production apparatus |
US9509708B2 (en) * | 2014-12-02 | 2016-11-29 | Wontok Inc. | Security information and event management |
US9600682B2 (en) * | 2015-06-08 | 2017-03-21 | Accenture Global Services Limited | Mapping process changes |
US10915655B2 (en) * | 2017-04-27 | 2021-02-09 | Dell Products L.P. | Browser drag and drop file upload encryption enforcement |
US10917390B2 (en) * | 2017-04-28 | 2021-02-09 | Dell Products L.P. | Browser drag and drop file upload encryption enforcement |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101847184A (zh) * | 2009-12-16 | 2010-09-29 | 深圳市虹安信息技术有限公司 | 采用加密沙箱的文件加密方法 |
CN102004886A (zh) * | 2010-11-15 | 2011-04-06 | 上海安纵信息科技有限公司 | 一种基于操作系统虚拟化原理的数据防泄漏方法 |
CN102708326A (zh) * | 2012-05-22 | 2012-10-03 | 南京赛孚科技有限公司 | 一种涉密文件的保护方法 |
CN102821094A (zh) * | 2012-07-09 | 2012-12-12 | 深圳市深信服电子科技有限公司 | 虚拟桌面中的数据安全处理方法及系统 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7908653B2 (en) * | 2004-06-29 | 2011-03-15 | Intel Corporation | Method of improving computer security through sandboxing |
US8180893B1 (en) * | 2010-03-15 | 2012-05-15 | Symantec Corporation | Component-level sandboxing |
US9111089B1 (en) * | 2011-02-08 | 2015-08-18 | Symantec Corporation | Systems and methods for safely executing programs |
-
2013
- 2013-01-28 CN CN201310032866.6A patent/CN103971051A/zh active Pending
- 2013-10-30 WO PCT/CN2013/086221 patent/WO2014114120A1/zh active Application Filing
-
2015
- 2015-07-23 US US14/807,241 patent/US9785363B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101847184A (zh) * | 2009-12-16 | 2010-09-29 | 深圳市虹安信息技术有限公司 | 采用加密沙箱的文件加密方法 |
CN102004886A (zh) * | 2010-11-15 | 2011-04-06 | 上海安纵信息科技有限公司 | 一种基于操作系统虚拟化原理的数据防泄漏方法 |
CN102708326A (zh) * | 2012-05-22 | 2012-10-03 | 南京赛孚科技有限公司 | 一种涉密文件的保护方法 |
CN102821094A (zh) * | 2012-07-09 | 2012-12-12 | 深圳市深信服电子科技有限公司 | 虚拟桌面中的数据安全处理方法及系统 |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105488387A (zh) * | 2014-09-28 | 2016-04-13 | 北京云巢动脉科技有限公司 | 一种安全沙盘重定向文件操作的方法及系统 |
CN105528542A (zh) * | 2014-09-28 | 2016-04-27 | 北京云巢动脉科技有限公司 | 一种基于软件免安装运行的管控方法及系统 |
CN105528542B (zh) * | 2014-09-28 | 2018-07-17 | 北京云巢动脉科技有限公司 | 一种基于软件免安装运行的管控方法及系统 |
CN105488387B (zh) * | 2014-09-28 | 2018-07-17 | 北京云巢动脉科技有限公司 | 一种安全沙箱重定向文件操作的方法及系统 |
CN105844151A (zh) * | 2016-03-18 | 2016-08-10 | 山东华软金盾软件股份有限公司 | 一种文件存储保护实现方法和系统 |
CN109522744A (zh) * | 2018-11-06 | 2019-03-26 | 北京指掌易科技有限公司 | 一种Android系统文件数据隔离保护方法 |
WO2022170946A1 (zh) * | 2021-02-09 | 2022-08-18 | 华为技术有限公司 | 一种访问控制方法及相关装置 |
CN113139177A (zh) * | 2021-05-17 | 2021-07-20 | 杭州天宽科技有限公司 | 一种安卓应用虚拟化环境中的文件隔离优化增强方法 |
CN113139177B (zh) * | 2021-05-17 | 2022-07-22 | 杭州天宽科技有限公司 | 一种安卓应用虚拟化环境中的文件隔离优化增强方法 |
Also Published As
Publication number | Publication date |
---|---|
US9785363B2 (en) | 2017-10-10 |
WO2014114120A1 (zh) | 2014-07-31 |
US20150324146A1 (en) | 2015-11-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103971051A (zh) | 一种文件隔离方法、装置和系统 | |
EP2725764B1 (en) | Data storage method and data storage device | |
CN107463427A (zh) | 一种虚拟机操作系统类型与版本的获取方法与装置 | |
CN106406986B (zh) | 一种资源共享方法及装置 | |
CN102346740B (zh) | 一种文件同步方法、电子设备和同步系统 | |
CN103970533B (zh) | 屏幕录制的信息记录方法及装置 | |
CN107004032A (zh) | 镜像文件转换方法及装置 | |
CN107463369A (zh) | 一种虚拟桌面的接入设备控制方法与装置 | |
US20120221518A1 (en) | Dynamically redirecting a target location during a file i/o operation | |
CN103729340A (zh) | 网页中编辑表格的方法和装置 | |
US9032172B2 (en) | Systems, methods and computer program products for selective copying of track data through peer-to-peer remote copy | |
CN101236531B (zh) | 一种存储装置及其实现自动保护的方法 | |
CN106098069A (zh) | 一种身份认证方法、及终端设备 | |
CN106294387A (zh) | 数据迁移方法和装置 | |
CN103984621B (zh) | 日志分离方法和系统 | |
CN103327112B (zh) | 基于云存储的桌面同步方法以及实现桌面同步的装置 | |
CN105760084A (zh) | 语音输入的控制方法和装置 | |
CN113553618A (zh) | 文件安全保护方法及装置 | |
US20220261256A1 (en) | Apparatus for driving external operating system and method therefor | |
JP6007856B2 (ja) | 情報処理システム、情報処理装置及び情報処理プログラム | |
US9372819B2 (en) | I/O device N—port ID virtualization | |
JP2010113587A (ja) | ストレージシステムおよびストレージシステムによるファイルシステムの管理方法 | |
CN104239514A (zh) | 网页渲染方法、装置及移动终端 | |
CN107766385B (zh) | 一种转换虚拟磁盘文件格式的方法与设备 | |
CN111309698A (zh) | 磁盘重定向方法、装置和系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20140806 |
|
RJ01 | Rejection of invention patent application after publication |