CN105373727A - 基于虚拟设备重定向的设备隔离方法 - Google Patents
基于虚拟设备重定向的设备隔离方法 Download PDFInfo
- Publication number
- CN105373727A CN105373727A CN201510927735.3A CN201510927735A CN105373727A CN 105373727 A CN105373727 A CN 105373727A CN 201510927735 A CN201510927735 A CN 201510927735A CN 105373727 A CN105373727 A CN 105373727A
- Authority
- CN
- China
- Prior art keywords
- equipment
- class
- access
- virtual unit
- isolation
- 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.)
- Granted
Links
Classifications
-
- 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
Abstract
本发明涉及一种基于虚拟设备重定向的设备隔离方法。A、在内核态下实现:(1)设置系统对应设备的设备访问控制属性;(2)在系统设备树指定设备的对应节点上,设置一层设备过滤驱动,通过类防火墙机制,对该指定设备的来往数据实现管控和二次处理;(3)在指定服务或第三方程序中监控API的调用情况,并同步更新对应过滤驱动下的数据从属属性;B、在用户态下实现:(4)监控操作系统的设备变更情况,并在设备变更的时候调用内核态的对应接口实现指定设备的访问权限控制和隔离;(5)通过后台服务管控设备访问权限控制和隔离的允许与否。本发明通过对虚拟设备进行重定向的隔离和安全保护,保证了重定向设备的安全性和隔离性。
Description
技术领域
本发明涉及虚拟化领域、云服务领域,特别涉及一种基于虚拟设备重定向的设备隔离方法。
背景技术
在虚拟化架构系统中的多Session的虚拟操作系统下,通过虚拟化映射的设备并不能完全的实现设备隔离,其他用户也能使用到本用户所映射到服务器上的虚拟设备。以往的设备安全管控技术仅仅只能禁用或者启动整个设备类的使用权限,或者是通过应用层自己管控设备的使用,这些方法首先没法做到多用户情况下的隔离使用设备,其次也不如从内核态里保护设备来的安全,因为应用层并不能阻止来自内核的提权非法操作。使用此技术根据Session、进程或者用户进行重定向设备的隔离和安全保护,保证了设备的安全性和隔离性。
发明内容
本发明的目的在于提供一种基于虚拟设备重定向的设备隔离方法。
为实现上述目的,本发明的技术方案是:一种基于虚拟设备重定向的设备隔离方法,包括如下步骤,
A、在内核态下实现:
(1)设置系统对应设备的设备访问控制属性;
(2)在系统设备树指定设备的对应节点上,设置一层设备过滤驱动,通过类防火墙机制,对该指定设备的来往数据实现管控和二次处理;
(3)在指定服务或第三方程序中监控API的调用情况,并同步更新对应过滤驱动下的数据从属属性;
B、在用户态下实现:
(4)监控操作系统的设备变更情况,并在设备变更的时候调用内核态的对应接口实现指定设备的访问权限控制和隔离;
(5)通过后台服务管控设备访问权限控制和隔离的允许与否。
在本发明一实施例中,所述设备包括基类设备直接访问的设备类、设备类派生类后程序访问的设备类以及采用调用后台服务统一由服务访问设备的进程或者用户。
在本发明一实施例中,对于所述基类设备直接访问的设备类的隔离方法为:在内核态下设置系统设备树对应设备节点访问权限,直接由系统管控设备的访问权限,并关闭用户态下修改设备访问权限。
在本发明一实施例中,所述基类设备直接访问的设备类包括串口、并口和USB。
在本发明一实施例中,对于所述设备类派生类后程序访问的设备类的隔离方法为:在内核态下设置系统设备树对应设备节点访问权限,并在系统设备树指定设备的对应节点上,设置一层设备过滤驱动。
在本发明一实施例中,所述设备类派生类后程序访问的设备类包括HID和磁盘存储器。
在本发明一实施例中,对于所述采用调用后台服务统一由服务访问设备的进程或者用户的隔离方法为:首先,在内核态下设置系统设备树对应设备节点访问权限,其次,在系统设备树指定设备的对应节点上,设置一层设备过滤驱动,最后,在指定服务或者第三方程序中监控API的调用情况,并同步更新对应过滤驱动下的数据从属属性。
在本发明一实施例中,所述采用调用后台服务统一由服务访问设备的进程或者用户为包括打印机、智能读卡器的第三方设备服务。
在本发明一实施例中,所述对应节点为内核态下的系统内核与设备驱动之间。
相较于现有技术,本发明具有以下有益效果:本发明根据Session、进程或者用户进行重定向设备的隔离和安全保护,保证了重定向设备的安全性和隔离性。
附图说明
图1为本发明框架图。
图2为本发明新设备接入的流程图。
图3为本发明应用程序直接访问设备的流程图。
图4为本发明应用程序通过服务访问设备的流程图。
具体实施方式
下面结合附图,对本发明的技术方案进行具体说明。
如图1-4所示,本发明的一种基于虚拟设备重定向的设备隔离方法,包括如下步骤,
A、在内核态下实现:
(1)设置系统对应设备的设备访问控制属性;
(2)在系统设备树指定设备的对应节点(所述对应节点为内核态下的系统内核与设备驱动之间)上,设置一层设备过滤驱动,通过类防火墙机制,对该指定设备的来往数据实现管控和二次处理;
(3)在指定服务或第三方程序中监控API的调用情况,并同步更新对应过滤驱动下的数据从属属性;
B、在用户态下实现:
(4)监控操作系统的设备变更情况,并在设备变更的时候调用内核态的对应接口实现指定设备的访问权限控制和隔离;
(5)通过后台服务管控设备访问权限控制和隔离的允许与否。
所述设备包括基类设备直接访问的设备类(包括串口、并口和USB)、设备类派生类后程序访问的设备类(包括HID和磁盘存储器)以及采用调用后台服务(或其他第三方程序使用系统权限提权执行)统一由服务访问设备的进程或者用户((如打印机和智能读卡器或者其他第三方的设备服务))。
对于所述基类设备直接访问的设备类的隔离方法为:在内核态下设置系统设备树对应设备节点访问权限,直接由系统管控设备的访问权限,并关闭用户态下修改设备访问权限。
对于所述设备类派生类后程序访问的设备类的隔离方法为:在内核态下设置系统设备树对应设备节点访问权限,并在系统设备树指定设备的对应节点上,设置一层设备过滤驱动。
对于所述采用调用后台服务统一由服务访问设备的进程或者用户的隔离方法为:首先,在内核态下设置系统设备树对应设备节点访问权限,其次,在系统设备树指定设备的对应节点上,设置一层设备过滤驱动,最后,在指定服务或者第三方程序中监控API的调用情况,并同步更新对应过滤驱动下的数据从属属性。
以下具体讲述本发明的技术方案。
本技术可以分为以下几个部分(框架图见图1)
1.驱动层
通过驱动在内核态实现以下几个主要的核心功能:
a)内核态设置系统对应设备的设备访问控制属性,通过系统管控设备访问。
b)通过在系统设备树指定设备的对应节点上,加入一层设备过滤驱动,通过类似防火墙的机制,对指定设备所有的来往数据实现管控和二次处理,以此实现设备通讯时的数据安全管控和隔离。
c)通过在指定服务或者第三方程序中监控API的调用情况,并同步更新对应过滤驱动下的数据从属属性,从而避免过滤驱动无法识别指定设备的数据流向判断,进一步加强设备通讯时的数据安全管控和隔离。
2.后台隔离服务
通过在操作系统后台启动服务,实现一下几个用户态的功能:
a)监控操作系统的设备变更情况,并在设备变更的时候调用内核态的对应接口实现指定设备的访问权限控制和隔离
b)通过后台服务管控设备访问权限控制和隔离的一些策略
实现方式:
这里主要阐述了核心部分驱动层的实现方式:
1.对于基类设备直接访问的设备类(如串口、并口和USB),采用设置内核态设置操作系统设备树对应设备节点访问权限的方式,直接由系统管控设备的访问权限即可,同时关闭用户态修改设备访问权限的方法。首先需要后台监控设备的变更情况,同时在有新设备出现的时候,通过对应的策略给指定的设备设置对应的访问控制权限。(见图2)
2.对于设备类派生类后程序访问的设备类(如HID和磁盘存储器),采用过滤驱动的方式和方法1相结合,除了在系统中管控设备访问权限以外,在系统设备树该设备的对应节点上,先添加一层对应的设备过滤驱动,使得所有中断先经过过滤驱动后才到达其他驱动或者硬件设备,通过此方法拦截该设备对应的所有中断,并判断此中断对应的进程或者用户是否有权限获取,如果没有则直接告知对应用户或者进程无权限访问。(见图3)
3.对应采用调用后台服务(或其他第三方程序使用系统权限提权执行)统一由服务访问设备的进程或者用户(如打印机和智能读卡器或者其他第三方的设备服务),只采用过滤驱动会出现总是系统或者服务访问设备时,会出现在过滤驱动层中所有的往来数据都是由系统或者内核发出的,此时无法详细的判断具体的数据流向。通过在指定服务或者第三方程序中监控API的调用情况,并同步更新对应过滤驱动下的数据从属属性,从而避免过滤驱动无法识别指定设备的数据流向判断。
此方法首先需要在指定的服务或者第三方程序中利用Hook机制,在有用户态的进程调用对应接口时,拦截到对应的数据包流向,同时将信息传递给对应的过滤驱动,并在流向过滤驱动的对应数据中加入对应的标识,使得过滤驱动能够识别出对应的数据包的具体流向,并据此进行对应的权限管控。如果该用户或者进程没有权限访问则和步骤1一样提示对方无权限访问。通过此方法配合方法2的方法,进一步加强设备通讯时的数据安全管控和隔离。(见图4)
以上是本发明的较佳实施例,凡依本发明技术方案所作的改变,所产生的功能作用未超出本发明技术方案的范围时,均属于本发明的保护范围。
Claims (9)
1.一种基于虚拟设备重定向的设备隔离方法,其特征在于:包括如下步骤,
A、在内核态下实现:
(1)设置系统对应设备的设备访问控制属性;
(2)在系统设备树指定设备的对应节点上,设置一层设备过滤驱动,通过类防火墙机制,对该指定设备的来往数据实现管控和二次处理;
(3)在指定服务或第三方程序中监控API的调用情况,并同步更新对应过滤驱动下的数据从属属性;
B、在用户态下实现:
(4)监控操作系统的设备变更情况,并在设备变更的时候调用内核态的对应接口实现指定设备的访问权限控制和隔离;
(5)通过后台服务管控设备访问权限控制和隔离的允许与否。
2.根据权利要求1所述的基于虚拟设备重定向的设备隔离方法,其特征在于:所述设备包括基类设备直接访问的设备类、设备类派生类后程序访问的设备类以及采用调用后台服务统一由服务访问设备的进程或者用户。
3.根据权利要求2所述的基于虚拟设备重定向的设备隔离方法,其特征在于:对于所述基类设备直接访问的设备类的隔离方法为:在内核态下设置系统设备树对应设备节点访问权限,直接由系统管控设备的访问权限,并关闭用户态下修改设备访问权限。
4.根据权利要求2或3所述的基于虚拟设备重定向的设备隔离方法,其特征在于:所述基类设备直接访问的设备类包括串口、并口和USB。
5.根据权利要求2所述的基于虚拟设备重定向的设备隔离方法,其特征在于:对于所述设备类派生类后程序访问的设备类的隔离方法为:在内核态下设置系统设备树对应设备节点访问权限,并在系统设备树指定设备的对应节点上,设置一层设备过滤驱动。
6.根据权利要求2或5所述的基于虚拟设备重定向的设备隔离方法,其特征在于:所述设备类派生类后程序访问的设备类包括HID和磁盘存储器。
7.根据权利要求2所述的基于虚拟设备重定向的设备隔离方法,其特征在于:对于所述采用调用后台服务统一由服务访问设备的进程或者用户的隔离方法为:首先,在内核态下设置系统设备树对应设备节点访问权限,其次,在系统设备树指定设备的对应节点上,设置一层设备过滤驱动,最后,在指定服务或者第三方程序中监控API的调用情况,并同步更新对应过滤驱动下的数据从属属性。
8.根据权利要求2或7所述的基于虚拟设备重定向的设备隔离方法,其特征在于:所述采用调用后台服务统一由服务访问设备的进程或者用户为包括打印机、智能读卡器的第三方设备服务。
9.根据权利要求1、5或7所述的基于虚拟设备重定向的设备隔离方法,其特征在于:所述对应节点为内核态下的系统内核与设备驱动之间。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510927735.3A CN105373727B (zh) | 2015-12-15 | 2015-12-15 | 基于虚拟设备重定向的设备隔离方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510927735.3A CN105373727B (zh) | 2015-12-15 | 2015-12-15 | 基于虚拟设备重定向的设备隔离方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105373727A true CN105373727A (zh) | 2016-03-02 |
CN105373727B CN105373727B (zh) | 2018-04-20 |
Family
ID=55375917
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510927735.3A Active CN105373727B (zh) | 2015-12-15 | 2015-12-15 | 基于虚拟设备重定向的设备隔离方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105373727B (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106372496A (zh) * | 2016-08-31 | 2017-02-01 | 福建联迪商用设备有限公司 | 提高支付终端应用安全性的方法及系统 |
CN107179955A (zh) * | 2017-05-08 | 2017-09-19 | 北京海杭通讯科技有限公司 | 基于Android容器的设备隔离方法及其终端 |
CN109194589A (zh) * | 2018-08-31 | 2019-01-11 | 新华三技术有限公司 | 一种mdc实现方法及装置 |
CN109901935A (zh) * | 2017-12-11 | 2019-06-18 | 航天信息股份有限公司 | 一种与USB Key进行通信的方法及设备 |
CN111125710A (zh) * | 2019-11-29 | 2020-05-08 | 联想(北京)有限公司 | 一种信息处理方法、装置、电子设备和存储介质 |
CN111209088A (zh) * | 2020-01-21 | 2020-05-29 | 湖南麒麟信安科技有限公司 | 一种无代理的虚拟机外设封控方法、系统及介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020194337A1 (en) * | 1999-08-11 | 2002-12-19 | Knight Tony D. | System and method for controlling access to data stored in a portable storage medium |
CN1838137A (zh) * | 2006-04-26 | 2006-09-27 | 南京大学 | 一种对即插即用存储设备进行读写访问控制的方法 |
CN103034799A (zh) * | 2012-12-14 | 2013-04-10 | 南京中孚信息技术有限公司 | 一种内核级的桌面访问控制方法 |
CN103605930A (zh) * | 2013-11-27 | 2014-02-26 | 湖北民族学院 | 一种基于hook和过滤驱动的双重文件防泄密方法及系统 |
-
2015
- 2015-12-15 CN CN201510927735.3A patent/CN105373727B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020194337A1 (en) * | 1999-08-11 | 2002-12-19 | Knight Tony D. | System and method for controlling access to data stored in a portable storage medium |
CN1838137A (zh) * | 2006-04-26 | 2006-09-27 | 南京大学 | 一种对即插即用存储设备进行读写访问控制的方法 |
CN103034799A (zh) * | 2012-12-14 | 2013-04-10 | 南京中孚信息技术有限公司 | 一种内核级的桌面访问控制方法 |
CN103605930A (zh) * | 2013-11-27 | 2014-02-26 | 湖北民族学院 | 一种基于hook和过滤驱动的双重文件防泄密方法及系统 |
Non-Patent Citations (1)
Title |
---|
于靖等: "基于WDM的USB过滤驱动程序设计与实现", 《微计算机信息》 * |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106372496A (zh) * | 2016-08-31 | 2017-02-01 | 福建联迪商用设备有限公司 | 提高支付终端应用安全性的方法及系统 |
CN107179955A (zh) * | 2017-05-08 | 2017-09-19 | 北京海杭通讯科技有限公司 | 基于Android容器的设备隔离方法及其终端 |
CN109901935A (zh) * | 2017-12-11 | 2019-06-18 | 航天信息股份有限公司 | 一种与USB Key进行通信的方法及设备 |
CN109901935B (zh) * | 2017-12-11 | 2021-12-17 | 航天信息股份有限公司 | 一种与USB Key进行通信的方法及设备 |
CN109194589A (zh) * | 2018-08-31 | 2019-01-11 | 新华三技术有限公司 | 一种mdc实现方法及装置 |
CN109194589B (zh) * | 2018-08-31 | 2021-01-26 | 新华三技术有限公司 | 一种mdc实现方法及装置 |
CN111125710A (zh) * | 2019-11-29 | 2020-05-08 | 联想(北京)有限公司 | 一种信息处理方法、装置、电子设备和存储介质 |
CN111125710B (zh) * | 2019-11-29 | 2022-06-28 | 联想(北京)有限公司 | 一种信息处理方法、装置、电子设备和存储介质 |
CN111209088A (zh) * | 2020-01-21 | 2020-05-29 | 湖南麒麟信安科技有限公司 | 一种无代理的虚拟机外设封控方法、系统及介质 |
CN111209088B (zh) * | 2020-01-21 | 2023-08-29 | 湖南麒麟信安科技股份有限公司 | 一种无代理的虚拟机外设封控方法、系统及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN105373727B (zh) | 2018-04-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105373727A (zh) | 基于虚拟设备重定向的设备隔离方法 | |
US20220198047A1 (en) | Process Control Software Security Architecture Based On Least Privileges | |
US8024806B2 (en) | Method, apparatus and system for enabling a secure location-aware platform | |
US11829303B2 (en) | Methods and apparatus for device driver operation in non-kernel space | |
US8479193B2 (en) | Method, apparatus and system for enhancing the usability of virtual machines | |
CN109313569B (zh) | 用于虚拟硬件控制的系统和方法 | |
JP2010514028A (ja) | 単一データ処理を共有するために複数の実行環境を有効化するシステム | |
CN103870749B (zh) | 一种实现虚拟机系统的安全监控系统及方法 | |
CN106874232B (zh) | 通用串行总线usb的充电方法、装置及终端 | |
CN103679007A (zh) | 一种管理应用程序权限的方法、装置及移动设备 | |
WO2014190875A1 (zh) | 系统功能调用的方法、装置及终端 | |
WO2017004918A1 (zh) | 安全控制方法、装置和计算机存储介质 | |
CN103581187A (zh) | 访问权限的控制方法及控制系统 | |
CN105094996A (zh) | 基于动态权限验证的Android系统安全增强方法及系统 | |
CN107566375B (zh) | 访问控制方法和装置 | |
US9697027B1 (en) | Hypercall-based security for hypervisors | |
JP4576449B2 (ja) | スイッチ装置およびコピー制御方法 | |
CN110807191A (zh) | 一种应用程序的安全运行方法及装置 | |
CN108021807B (zh) | Linux容器的细粒度沙盒策略执行方法 | |
CN109274784A (zh) | 基于openstack的IP和MAC地址绑定方法、装置、终端及存储介质 | |
CN105701415B (zh) | 一种移动终端内核权限管理系统及方法 | |
CN103927191A (zh) | 函数调用的资源配置方法和装置 | |
CN106354534A (zh) | Android系统下客户端对服务器中应用程序的控制方法 | |
CN105701397B (zh) | 一种应用程序控制方法和装置 | |
WO2019127399A1 (zh) | Linux容器的细粒度沙盒策略执行方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |