CN109828793B - 基于国产操作系统的usb管控方法及系统 - Google Patents
基于国产操作系统的usb管控方法及系统 Download PDFInfo
- Publication number
- CN109828793B CN109828793B CN201910080080.9A CN201910080080A CN109828793B CN 109828793 B CN109828793 B CN 109828793B CN 201910080080 A CN201910080080 A CN 201910080080A CN 109828793 B CN109828793 B CN 109828793B
- Authority
- CN
- China
- Prior art keywords
- usb
- equipment
- control
- kernel
- management
- 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.)
- Active
Links
Images
Abstract
本发明公开了一种基于国产操作系统的USB管控方法及系统,属于国产操作系统终端管控,要解决的技术问题为现有基于国产操作系统的USB管控中存在的缺乏通用性、不支持用户层权限以及缺少全面性和准确性;其方法包括:建立用户层客户端与内核管控模块的管控连接,以实现通过用户层客户端对位于内核管控模块内的USB设备禁用策略进行管控;基于Inline Hook机制开启USB设备管控功能;基于USB协议以及USB设备禁用策略,对插入的USB设备进行设备分类和过滤,并根据设备分类和过滤结果决定是否解除插入的USB设备。其结构包括用户层客户端和内核管控模块。
Description
技术领域
本发明涉及国产操作系统终端管控领域,具体地说是一种基于国产操作系统的USB管控方法及系统。
背景技术
当前国内计算机产业中,软硬件国产化进程不断加速,在倡导自主可控的同时,更要求安全可信,USB设备的访问控制是终端安全的一个重要功能,可以提供物理层面的安全机制,而基于国产操作系统的USB设备管控存在如下问题:
1、国产CPU包括飞腾、龙心和神威等架构,国产操作系统包括银河麒麟、中标麒麟和方德等,运行平台的不同可能导致USB设备管控方法不通用;
2、USB设备管控需要ring0层权限,用户层没有权限直接操作硬件,而ring0层的代码修改可能会导致系统崩溃;
3、USB类设备管控往往只针对某几种,缺少全面性、准确性。
目前,国产操作系统下的USB设备管控通用方法和没有较成熟的思路,以前的实现方法有如下几种:
1、国产操作系统厂商提供支持,通过修改Linux内核源码,在USB设备驱动匹配函数中增加过滤代码,禁止不符合规则的USB设备匹配驱动,这种方法需要定制Linux内核,无法做到国产计算机平台通用,满足不了通用性;
2、对设备驱动进行管理,通过禁止相关设备驱动的加载,造成USB设备不可用,实现设备管控,这种方法无法对编译进内核的驱动进行管理,存在较大问题,不具备准确性,同时不能保证每个国产计算机平台的通用性。
综上,如何解决现有基于国产操作系统的USB管控中存在的缺乏通用性、不支持用户层权限以及缺少全面性和准确性的问题,是需要解决的技术问题。
发明内容
本发明的技术任务是针对以上不足,提供一种基于国产操作系统的USB管控方法及系统,来解决现有基于国产操作系统的USB管控中存在的缺乏通用性、不支持用户层权限以及缺少全面性和准确性的问题。
第一方面,本发明实施例提供一种基于国产操作系统的USB管控方法,包括:
建立用户层客户端与内核管控模块的管控连接,以实现通过用户层客户端对位于内核管控模块内的USB设备禁用策略进行管控;
基于Inline Hook机制开启USB设备管控功能;
基于USB协议以及USB设备禁用策略,对插入的USB设备进行设备分类和过滤,并根据设备分类和过滤结果决定是否解除插入的USB设备。
本实施方式中,建立用户层客户端与内核管控模块的管控连接,通过用户层客户端对内核管控模块内的USB设备禁用策略进行管控,内核管控模块根据USB协议以及USB设备禁用策略对相应的USB设备进行解除,从而实现了用户层客户端具有USB设备的管控权限,且适用于不同国产操作系统下对USB设备的管控。
更优的,还包括:通过用户层客户端对位于内核管控模块内的USB设备禁用策略进行更新,基于USB协议以及更新后的USB设备禁用策略,对插入的USB设备进行设备分类和过滤,并根据设备分类和过滤结果决定是否解除插入的USB设备。
在该更优的实施方式中,用户层客户端行使其管控权限,对USB设备禁用策略进行更新,内核管控模块根据USB协议以及更新后的USB设备禁用策略对相应的USB设备进行解除。
优选的,通过用户层客户端对位于内核管控模块内的USB设备禁用策略进行更新,包括:
用户层客户端下发策略更新数据;
内核管控模块根据策略更新数据更新USB设备禁用策略。
优选的,建立用户层客户端与内核管控模块的管控连接之前,加载并初始化用户层客户端和内核管控模块,并在内核管控模块内建立设备禁用链表,所述设备禁用链表包括USB设备禁用链表,USB设备禁用链表用于表述USB设备禁用策略。
优选的,建立用户层客户端与内核管控模块的管控连接,包括:
基于Netlink机制建立用户层客户端与内核管控模块的通信连接;
设定内核管控模块与用户层客户端之间传输数据的数据格式。
优选的,内核管控模块与用户层客户端之间传输数据,包括策略更新数据和USB设备管控控制数据,策略更新数据为用于更新USB设备禁用策略的指令数据,USB设备管控控制数据为用于控制USB设备管控功能的开启与关闭的指令数据。
优选的,基于Inline Hook机制开启USB设备管控功能,包括:
获取Inline Hook设备模型中内核函数device_add的地址;
改写内核函数device_add中某个地址跳转的机器码,修改为内核管控模块中的过滤函数的地址,实现Inline Hook调用。
优选的,基于USB协议以及USB设备禁用策略,对插入的USB设备进行设备分类和过滤,包括:
基于USB设备禁用策略,内核管控模块扫描USB总线,判断USB设备是否插入;
插入的USB设备调用内核管控模块中的过滤函数,根据USB协议对插入的USB设备进行分类,得到USB设备的分类结果;
根据USB设备分类结果和USB设备禁用策略,决定是否解除插入的USB设备;
所述USB设备禁用策略为更新前的USB设备禁用策略或更新后的USB设备禁用策略。
第二方面,本发明实施例提供一种基于国产操作系统的USB管控系统,通过如第一方面所述的基于国产操作系统的USB管控方法对USB设备进行管控,该USB管控系统包括:用户层客户端,用于负责USB设备管控功能的开启和关闭,并用于负责USB设备禁用策略的管控以及USB设备管控的呈现;内核管控模块,用于负责USB设备禁用策略的建立、存储和使用,并用于负责USB设备的解除以及USB总线的管理。
本发明的基于国产操作系统的USB管控方法及系统具有以下优点:可通过用户层客户端对内核管控模块内的USB设备禁用策略进行管控,内核管控模块根据USB协议以及USB设备禁用策略对相应的USB设备进行解除,从而实现了用户层客户端具有USB设备的管控权限,且适用于不同国产操作系统下对USB设备的管控。
附图说明
为了更清除地说明本发明实施例中的技术方案,下面将对实施例中描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
下面结合附图对本发明进一步说明。
附图1为实施例1基于国产操作系统的USB管控方法的原理框图;
附图2为实施例1基于国产操作系统的USB管控方法的流程框图;
附图3为实施例1基于国产操作系统的USB管控方法改进后的结构示意图。
具体实施方式
下面结合附图和具体实施例对本发明作进一步说明,以使本领域的技术人员可以更好地理解本发明并能予以实施,但所举实施例不作为对本发明的限定,在不冲突的情况下,本发明实施例以及实施例中的技术特征可以相互结合。
本发明实施例提供一种基于国产操作系统的USB管控方法及系统,用于解决现有基于国产操作系统的USB管控中存在的缺乏通用性、不支持用户层权限以及缺少全面性和准确性的技术问题。
实施例1:
如附图1和附图2所示,本发明的基于国产操作系统的USB管控方法,应用于包含USB设备和USB设备管控系统的系统架构,USB设备管控系统包括用户层客户端和内核管控模块,该方法包括如下步骤:
步骤S100、建立用户层客户端与内核管控模块的管控连接,以实现通过用户层客户端对位于内核管控模块内的USB设备禁用策略进行管控;
步骤S200、基于Inline Hook机制开启USB设备管控功能;
步骤S300、基于USB协议以及USB设备禁用策略,对插入的USB设备进行设备分类和过滤,并根据设备分类和过滤结果决定是否解除插入的USB设备。
其中,步骤S100中,在建立用户层客户端与内核管控模块的管控连接之前,需要加载并初始化用户层客户端以及内核管控模块,具体地,步骤S100包括如下分步骤:
S110、加载内核管控模块,并对内核管控模块进行数据初始化,并在内核管控模块内建立设备禁用链表,该设备禁用链表包括USB设备禁用链表,USB设备禁用链表用于表述USB设备禁用策略;
S120、加载用户层客户端,并对用户层客户端进行数据初始化。
S130、基于Netlink机制建立用户层客户端与内核管控模块的通信连接;
S140、设定内核管控模块与用户层客户端之间传输数据的数据格式。
在步骤S140中,内核管控模块与用户层客户端之间传输数据,包括策略更新数据和USB设备管控控制数据,策略更新数据为用于更新USB设备禁用策略的指令数据,USB设备管控控制数据为用于控制USB设备管控功能的开启与关闭的指令数据。
步骤S200包括如下分步骤:
分步骤S210、获取Inline Hook设备模型中内核函数device_add的地址;
分步骤S220、改写内核函数device_add中某个地址跳转的机器码,修改为内核管控模块中的过滤函数的地址,实现Inline Hook调用。
步骤S300包括如下分步骤:
分步骤S310、基于USB设备禁用策略,内核管控模块扫描USB总线,判断USB设备是否插入;
分步骤S320、插入的USB设备调用内核管控模块中的过滤函数,根据USB协议对插入的USB设备进行分类,得到USB设备的分类结果;
分步骤S330、根据USB设备分类结果和USB设备禁用策略,决定是否解除插入的USB设备;
分步骤S340、所述USB设备禁用策略为更新前的USB设备禁用策略或更新后的USB设备禁用策略。
如附图2所示,作为本实施例的进一步改进,管控方法还包括:如下步骤:
步骤S400、通过用户层客户端对位于内核管控模块内的USB设备禁用策略进行更新,基于USB协议以及更新后的USB设备禁用策略,对插入的USB设备进行设备分类和过滤,并根据设备分类和过滤结果决定是否解除插入的USB设备。
其中,通过用户层客户端对位于内核管控模块内的USB设备禁用策略进行更新,包括如下分步骤:
S411、用户层客户端下发策略更新数据;
S412、内核管控模块根据策略更新数据更新USB设备禁用策略。
基于USB协议以及更新后的USB设备禁用策略,对插入的USB设备进行设备分类和过滤,并根据设备分类和过滤结果决定是否解除插入的USB设备,包括如下分步骤:
分步骤S421、基于USB设备禁用策略,内核管控模块扫描USB总线,判断USB设备是否插入;
分步骤S422、插入的USB设备调用内核管控模块中的过滤函数,根据USB协议对插入的USB设备进行分类,得到USB设备的分类结果;
分步骤S423、根据USB设备分类结果和USB设备禁用策略,决定是否解除插入的USB设备;
分步骤S424、所述USB设备禁用策略为更新前的USB设备禁用策略或更新后的USB设备禁用策略。
实施例2:
如附图3所示,本发明提供一种基于国产操作系统的USB管控系统,该管控系统通过如实施例1公开的基于国产操作系统的USB管控方法对USB设备进行管控,该USB管控系统包括:用户层客户端,用于负责USB设备管控功能的开启和关闭,并用于负责USB设备禁用策略的管控以及USB设备管控的呈现;内核管控模块,用于负责USB设备禁用策略的建立、存储和使用,并用于负责USB设备的解除以及USB总线的管理。
其中,用户层客户端通过如下操作开启USB设备管控功能,具体如下:
(1)、执行获取Inline Hook设备模型中内核函数device_add的地址;
(2)、改写内核函数device_add中某个地址跳转的机器码,修改为内核管控模块中的过滤函数的地址,实现Inline Hook调用。
同时,用户层客户端可将策略更新数据下发至内核管控模块,从而实现对USB设备禁用策略的管控。
内核管控模块内建立并存储USB设备禁用链表,该USB设备禁用链表用于表述USB设备禁用策略;用户层客户端向内核管控模块下发策略更新,内核管控模块根据策略更新更新其USB设备禁用链表。
同时,内核管控模块根据如下步骤实现负责USB设备的解除以及USB总线的管理:
(1)、基于USB设备禁用策略,内核管控模块扫描USB总线,判断USB设备是否插入;
(2)、插入的USB设备调用内核管控模块中的过滤函数,根据USB协议对插入的USB设备进行分类,得到USB设备的分类结果;
(3)、根据USB设备分类结果和USB设备禁用策略,决定是否解除插入的USB设备;
(4)、所述USB设备禁用策略为更新前的USB设备禁用策略或更新后的USB设备禁用策略。
以上所述实施例仅是为充分说明本发明而所举的较佳的实施例,本发明的保护范围不限于此。本技术领域的技术人员在本发明基础上所作的等同替代或变换,均在本发明的保护范围之内。本发明的保护范围以权利要求书为准。
Claims (4)
1.基于国产操作系统的USB管控方法,其特征在于包括:
S100、建立用户层客户端与内核管控模块的管控连接,以实现通过用户层客户端对位于内核管控模块内的USB设备禁用策略进行管控;
S200、基于Inline Hook机制开启USB设备管控功能;
S300、基于USB协议以及USB设备禁用策略,对插入的USB设备进行设备分类和过滤,并根据设备分类和过滤结果决定是否解除插入的USB设备;
S400、通过用户层客户端对位于内核管控模块内的USB设备禁用策略进行更新,基于USB协议以及更新后的USB设备禁用策略,对插入的USB设备进行设备分类和过滤,并根据设备分类和过滤结果决定是否解除插入的USB设备;
步骤S100中,在建立用户层客户端与内核管控模块的管控连接之前,需要加载并初始化用户层客户端以及内核管控模块,具体地,步骤S100包括如下分步骤:
S110、加载内核管控模块,并对内核管控模块进行数据初始化,并在内核管控模块内建立设备禁用链表,该设备禁用链表包括USB设备禁用链表,USB设备禁用链表用于表述USB设备禁用策略;
S120、加载用户层客户端,并对用户层客户端进行数据初始化;
S130、基于Netlink机制建立用户层客户端与内核管控模块的通信连接;
S140、设定内核管控模块与用户层客户端之间传输数据的数据格式;
步骤S200包括如下分步骤:
分步骤S210、获取Inline Hook设备模型中内核函数device_add的地址;
分步骤S220、改写内核函数device_add中某个地址跳转的机器码,修改为内核管控模块中的过滤函数的地址,实现Inline Hook调用;
步骤S300包括如下分步骤:
分步骤S310、基于USB设备禁用策略,内核管控模块扫描USB总线,判断USB设备是否插入;
分步骤S320、插入的USB设备调用内核管控模块中的过滤函数,根据USB协议对插入的USB设备进行分类,得到USB设备的分类结果;
分步骤S330、根据USB设备分类结果和USB设备禁用策略,决定是否解除插入的USB设备;
分步骤S340、所述USB设备禁用策略为更新前的USB设备禁用策略或更新后的USB设备禁用策略。
2.根据权利要求1所述的基于国产操作系统的USB管控方法,其特征在于通过用户层客户端对位于内核管控模块内的USB设备禁用策略进行更新,包括:
用户层客户端下发策略更新数据;
内核管控模块根据策略更新数据更新USB设备禁用策略。
3.根据权利要求1所述的基于国产操作系统的USB管控方法,其特征在于内核管控模块与用户层客户端之间传输数据,包括策略更新数据和USB设备管控控制数据,策略更新数据为用于更新USB设备禁用策略的指令数据,USB设备管控控制数据为用于控制USB设备管控功能的开启与关闭的指令数据。
4.基于国产操作系统的USB管控系统,其特征在于通过如权利要求1-3任一项所述的基于国产操作系统的USB管控方法对USB设备进行管控,包括:
用户层客户端,用于负责USB设备管控功能的开启和关闭,并用于负责USB设备禁用策略的管控以及USB设备管控的呈现;
内核管控模块,用于负责USB设备禁用策略的建立、存储和使用,并用于负责USB设备的解除以及USB总线的管理。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910080080.9A CN109828793B (zh) | 2019-01-28 | 2019-01-28 | 基于国产操作系统的usb管控方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910080080.9A CN109828793B (zh) | 2019-01-28 | 2019-01-28 | 基于国产操作系统的usb管控方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109828793A CN109828793A (zh) | 2019-05-31 |
CN109828793B true CN109828793B (zh) | 2022-06-28 |
Family
ID=66862676
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910080080.9A Active CN109828793B (zh) | 2019-01-28 | 2019-01-28 | 基于国产操作系统的usb管控方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109828793B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110245527A (zh) * | 2019-06-14 | 2019-09-17 | 深圳市同泰怡信息技术有限公司 | 一种usb端口权限管理方法和装置以及设备 |
CN111930431B (zh) * | 2020-07-10 | 2024-04-05 | 深圳市广和通无线股份有限公司 | 移动终端及其控制方法、计算机设备、存储介质 |
CN112836203A (zh) * | 2021-02-03 | 2021-05-25 | 中标软件有限公司 | 一种基于内核定制实现安卓系统设备管控的方法 |
CN114385525A (zh) * | 2021-12-08 | 2022-04-22 | 航天信息股份有限公司 | 一种并发访问usb设备的方法及系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102760104A (zh) * | 2012-06-25 | 2012-10-31 | 成都卫士通信息产业股份有限公司 | 一种usb设备控制方法 |
CN103778006A (zh) * | 2014-02-12 | 2014-05-07 | 成都卫士通信息安全技术有限公司 | 一种操作系统进程控制方法 |
CN106055403A (zh) * | 2016-05-13 | 2016-10-26 | 深圳市青葡萄科技有限公司 | 基于usb存储设备进行终端快速配置的方法及系统 |
CN106909828A (zh) * | 2017-01-10 | 2017-06-30 | 中电科华云信息技术有限公司 | 基于云桌面usb设备过滤方法 |
CN108319849A (zh) * | 2017-01-16 | 2018-07-24 | 中标软件有限公司 | 基于安卓双容器系统的设备策略管理系统及管理域实现方法 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101520792B (zh) * | 2008-12-17 | 2013-04-17 | 康佳集团股份有限公司 | 一种自动挂载与识别系统文件的方法及其系统 |
US9026712B2 (en) * | 2012-06-25 | 2015-05-05 | Intel Corporation | USB device control using endpoint type detection during enumeration |
CN103065104B (zh) * | 2012-12-26 | 2015-12-23 | 四川长虹电器股份有限公司 | 移动存储设备及其所构成的监控系统 |
CN103778081A (zh) * | 2014-02-11 | 2014-05-07 | 成都卫士通信息安全技术有限公司 | 一种usb外设设备接入控制方法 |
CN105844157A (zh) * | 2016-04-20 | 2016-08-10 | 北京鼎源科技有限公司 | 一种针对Android系统App行为的监控方法 |
CN108319867A (zh) * | 2018-02-02 | 2018-07-24 | 大势至(北京)软件工程有限公司 | 基于hook和窗口过滤的双重文件防泄密方法及系统 |
-
2019
- 2019-01-28 CN CN201910080080.9A patent/CN109828793B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102760104A (zh) * | 2012-06-25 | 2012-10-31 | 成都卫士通信息产业股份有限公司 | 一种usb设备控制方法 |
CN103778006A (zh) * | 2014-02-12 | 2014-05-07 | 成都卫士通信息安全技术有限公司 | 一种操作系统进程控制方法 |
CN106055403A (zh) * | 2016-05-13 | 2016-10-26 | 深圳市青葡萄科技有限公司 | 基于usb存储设备进行终端快速配置的方法及系统 |
CN106909828A (zh) * | 2017-01-10 | 2017-06-30 | 中电科华云信息技术有限公司 | 基于云桌面usb设备过滤方法 |
CN108319849A (zh) * | 2017-01-16 | 2018-07-24 | 中标软件有限公司 | 基于安卓双容器系统的设备策略管理系统及管理域实现方法 |
Non-Patent Citations (1)
Title |
---|
吴倩.可信终端管理系统中安全管理中心的设计与实现.《中国优秀硕士学位论文全文数据库 (信息科技辑)》.2010, * |
Also Published As
Publication number | Publication date |
---|---|
CN109828793A (zh) | 2019-05-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109828793B (zh) | 基于国产操作系统的usb管控方法及系统 | |
US20190377593A1 (en) | Communication method, apparatus and system for virtual machine and host machine | |
CN111124342A (zh) | 投屏方法及设备 | |
CN103778006B (zh) | 一种操作系统进程控制方法 | |
US10169061B2 (en) | Scalable and flexible operating system platform | |
CN104536834A (zh) | 一种授权锁权限的方法和分布式锁管理器 | |
WO2012113196A1 (zh) | 一种实现主备单板升级的方法及装置 | |
CN111901142A (zh) | 一种用于嵌入式设备集群的固件静默升级方法及装置 | |
DE102005035736B4 (de) | Sichere Korrektursoftwareinstallation für WWAN-Systeme | |
CN107396185B (zh) | 升级方法及系统 | |
US20240069906A1 (en) | Server, software update system, distribution method, and non-transitory storage medium | |
WO2019042283A1 (zh) | 应用的管控方法、终端及存储介质 | |
CN113225738A (zh) | 一种车载终端的流量控制方法及装置 | |
CN113138812A (zh) | 航天器任务调度方法及装置 | |
CN107872786B (zh) | 一种控制方法及智能卡 | |
CN107809323B (zh) | 一种资源的控制方法、装置及系统 | |
CN114579161A (zh) | 应用程序更新方法及ecu | |
CN110536186B (zh) | 一种遥感控制方法、装置、电子设备及存储介质 | |
WO2021057648A1 (zh) | eSIM卡、卡应用的处理、设置方法、终端及平台设备 | |
CN108134683B (zh) | 一种终端及总线架构的实现方法 | |
CN113703797B (zh) | 一种行业安全终端的系统升级方法 | |
CN114416345A (zh) | 网络资源控制的方法、装置、电子设备及存储介质 | |
CN116521370A (zh) | 一种资源的使用方法、网络设备和存储介质 | |
CN111327658B (zh) | 冲突式人机命令交互通道并行工作控制方法及装置 | |
CN114866530B (zh) | 升级数据包的下载方法、设备以及计算机存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information |
Address after: 250100 No. 2877 Kehang Road, Sun Village Town, Jinan High-tech District, Shandong Province Applicant after: Chaoyue Technology Co.,Ltd. Address before: 250100 No. 2877 Kehang Road, Sun Village Town, Jinan High-tech District, Shandong Province Applicant before: SHANDONG CHAOYUE DATA CONTROL ELECTRONICS Co.,Ltd. |
|
CB02 | Change of applicant information | ||
GR01 | Patent grant | ||
GR01 | Patent grant |