CN105389272B - 一种安全计算机系统中io设备分时分域管控装置及方法 - Google Patents

一种安全计算机系统中io设备分时分域管控装置及方法 Download PDF

Info

Publication number
CN105389272B
CN105389272B CN201510881653.XA CN201510881653A CN105389272B CN 105389272 B CN105389272 B CN 105389272B CN 201510881653 A CN201510881653 A CN 201510881653A CN 105389272 B CN105389272 B CN 105389272B
Authority
CN
China
Prior art keywords
address
boundary
access
boundary address
computer system
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
Application number
CN201510881653.XA
Other languages
English (en)
Other versions
CN105389272A (zh
Inventor
胡向东
蒋毅飞
班冬松
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Integrated Circuits with Highperformance Center
Original Assignee
Shanghai Integrated Circuits with Highperformance Center
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shanghai Integrated Circuits with Highperformance Center filed Critical Shanghai Integrated Circuits with Highperformance Center
Priority to CN201510881653.XA priority Critical patent/CN105389272B/zh
Publication of CN105389272A publication Critical patent/CN105389272A/zh
Application granted granted Critical
Publication of CN105389272B publication Critical patent/CN105389272B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1416Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights
    • G06F12/1425Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights the protection being physical, e.g. cell, word, block
    • G06F12/1441Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights the protection being physical, e.g. cell, word, block for a range
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1458Protection against unauthorised use of memory or access to memory by checking the subject access rights
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1052Security improvement

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)

Abstract

本发明涉及一种安全计算机系统中IO设备分时分域管控装置,包括依次相连的边界地址存储装置和边界地址检查装置;所述边界地址存储装置用于存储允许IO设备访问的系统主存地址边界,并进行写权限检查;所述边界地址检查装置用于检查IO设备请求访问的系统主存地址是否落在允许其访问的地址区间内;对访问地址超出其定义范围的非法请求直接丢弃,并报告中断。本发明还涉及上述装置在安全计算机系统中的使用方法。本发明能够直接控制IO设备的访存行为,实现IO设备的安全增强。

Description

一种安全计算机系统中IO设备分时分域管控装置及方法
技术领域
本发明涉及计算机安全技术领域,特别是涉及一种安全计算机系统中IO设备分时分域管控装置。
背景技术
目前,信息安全的重要性日益凸显,各种预防和保护措施层出不穷。计算机系统中,对数据的访问分为读和写两种操作。对数据未经授权的读操作,可能会导致信息泄露;对数据未经授权的写操作,可能会导致信息篡改。因此,主要的防护措施都从避免数据被非法读取或非法修改入手。
计算机系统一般由中央处理器(CPU)和位于其上的软件构成,安全防护措施也相应的分属软件层面或者硬件层面。
中国专利公布号为CN104601580A的发明专利申请公开了一种基于强制访问控制的策略容器设计方法,由用户创建安全容器并选择放入容器的应用程序和程序要访问的文件,配置安全策略并控制应用程序访问容器内的客体,从而实现安全隔离的目的。该方法从软件层面提供了一种安全防护措施。
中国专利授权号为CN1152312C的发明专利公开了一种CPU硬件支持的系统攻击防范方法。CPU增加两个控制寄存器,在存储管理部件(MMU)实现段式可执行属性控制;在TLB表项中定义页面可执行属性实现页式可执行属性控制。利用CPU提供的可执行属性控制机制,对进程可执行地址范围进行控制,防范利用缓冲区溢出漏洞进行的非法攻击。该方法从硬件层面提供了一种安全防护措施。
计算机系统通过各种IO接口与外界进行数据交换,随着计算机系统IO接口的日益丰富,对IO接口的管控成为计算机安全的一个重要研究领域。上述发明专利申请和发明专利并非直接针对计算机IO接口的安全管控,对IO接口的管控需要专门的硬件和软件支持。
发明内容
本发明所要解决的技术问题是提供一种安全计算机系统中IO设备分时分域管控装置及方法,能够直接控制IO设备的访存行为,实现IO设备的安全增强。
本发明解决其技术问题所采用的技术方案是:提供一种安全计算机系统中IO设备分时分域管控装置,包括依次相连的边界地址存储装置和边界地址检查装置;所述边界地址存储装置用于存储允许IO设备访问的系统主存地址边界,并进行写权限检查;所述边界地址检查装置用于检查IO设备请求访问的系统主存地址是否落在允许其访问的地址区间内;对访问地址超出其定义范围的非法请求直接丢弃,并报告中断。
在多核处理器架构下,所有对边界地址寄存器的写操作只能来自于负责系统安全管控的处理器核心,可以处理器核心ID作为检查写操作是否合法的判断条件。
所述边界地址存储装置包括边界地址寄存器和相耦合的写权限检查模块;所述边界地址寄存器用于为每个IO设备存储允许其访问的系统主存地址下界和系统主存地址上界;所述写权限检查模块根据写请求源判断对所述边界地址寄存器的写操作是否合法;对合法的写操作,允许其更新所述边界地址寄存器内容;对非法写操作,不允许其更新所述边界地址寄存器内容。
所述边界地址寄存器还用于存储IO设备ID、地址安全检查功能使能控制标志和IO设备访问目标域控制标志,其中:所述IO设备ID用于表示某个边界地址寄存器和某一个IO设备对应;所述地址安全检查功能使能控制标志用于控制地址边界寄存器是否起作用;所述IO设备访问目标域控制标志用于控制该边界地址寄存器对应的IO设备访问不同的目标地址域。
在只对1个IO设备进行管控时,所述一组边界地址寄存器仅由1个边界地址寄存器构成,其内部存储的IO设备ID也可略去。
所述边界地址检查装置包括相互耦合的IO设备ID匹配模块、地址比较模块、中断报告模块;所述IO设备ID匹配模块用于从多个边界地址寄存器中选择对应于当前IO设备的边界地址寄存器;所述地址比较模块用于判断当前IO设备的请求地址是否落在对应的边界地址寄存器定义的地址区间内;所述中断报告模块用于在当前IO设备请求访问的地址超出对应的边界地址寄存器定义的地址区间时向处理器报告中断,请求处理。
本发明解决其技术问题所采用的技术方案是:还提供一种安全计算机系统中IO设备分时分域管控方法,在系统启动阶段,只有安全处理器核心能访问一组边界地址寄存器;所述安全处理器核心根据IO接口管理部件扩展连接IO设备的个数,配置相应的边界地址寄存器;在该阶段,IO设备能够访问安全处理器核心的存储空间,安全处理器核心能够利用相应的IO设备进行人机交互,对边界地址寄存器进行配置;配置完成后,安全处理器核心将边界地址寄存器中IO设备访问目标域控制标志设置为1;如果需要对某IO设备的访问进行合法性检查,则配置相应的边界地址寄存器中安全检查功能使能控制标志为1,并配置允许该设备访问的系统主存地址上界和允许该设备访问的系统主存地址下界;在系统正常工作阶段,用户使用通用处理器核心,此时安全处理器核心同时在后台运行,对用户不可见;用户使用IO接口管理部件扩展连接的IO设备与外界进行数据交互,上述的安全计算机系统中IO设备分时分域管控装置自动对IO设备的访存请求进行合法性检查。
有益效果
由于采用了上述的技术方案,本发明与现有技术相比,具有以下的优点和积极效果:本发明在硬件层面提供了限制IO设备访问系统主存地址的边界地址寄存器,能控制IO设备在计算机系统工作的不同阶段访问不同的系统主存地址空间,并进行访问的合法性检查,实现了对IO设备的分时分域管控,增强了系统安全性。
附图说明
图1为本发明适用的安全计算机系统结构框图;
图2为本发明IO设备分时分域管控装置示意图;
图3为本发明边界地址存储装置示意图;
图4为边界地址寄存器定义;
图5为本发明边界地址检查装置示意图。
具体实施方式
下面结合具体实施例,进一步阐述本发明。应理解,这些实施例仅用于说明本发明而不用于限制本发明的范围。此外应理解,在阅读了本发明讲授的内容之后,本领域技术人员可以对本发明作各种改动或修改,这些等价形式同样落于本申请所附权利要求书所限定的范围。
作为一种可实施方式,图1显示了本发明安全计算机系统中IO设备分时分域管控装置和方法适用的安全计算机系统结构框图,所述的安全计算机系统100包括安全处理器核心CPU0 110、通用处理器核心CPU1 120、主存(Memory)130、IO接口管理部件PIU0 140、IO接口管理部件PIU1 150,以及连接部件110、120、130、140、150的片上互联(Interconnect)160。
所述安全处理器核心CPU0 110是自主设计的某型号通用处理单元(CPU),负责安全计算机系统中的安全管控。通用处理器核心CPU1 120是自主设计的某型号通用处理单元(CPU),是提供给用户使用的CPU。IO接口管理部件PIU0 140用于管理和连接安全处理器核心CPU0 110专用的IO设备。IO接口管理部件PIU1 150用于管理和连接通用IO设备。所述安全处理器核心CPU0 110、通用处理器核心CPU1 120、IO接口管理部件PIU0 140、IO接口管理部件PIU1 150和片上互联(Interconnect)160均位于自主设计的某多核处理器芯片内部。主存130可以是SDRAM、DDRSDRAM等,用于存放程序运行时的指令和数据。IO接口管理部件PIU0 140和IO接口管理部件PIU1 150对外可扩展连接多个IO设备。
图2为本发明实施例安全计算机系统中IO设备分时分域管控装置示意图。作为一种可实施方式,本发明实施例的安全计算机系统中IO设备分时分域管控装置200包含边界地址存储装置210和边界地址检查装置220。
作为一种可实施方式,本发明实施例的安全计算机系统中IO设备分时分域管控装置200可位于IO接口管理部件PIU1 150内部。
所述边界地址存储装置210为IO接口管理部件PIU1 150扩展连接的每个IO设备定义允许其访问的系统主存地址边界,并进行写权限检查。
作为一种可实施方式,本发明实施例的边界地址存储装置210,如图3所示,包括相互耦合的写权限检查模块211和一组边界地址寄存器212,其中:
所述写权限检查模块211,用于检查对边界地址寄存器的写操作是否合法;对合法的写操作,允许其更新寄存器内容;对非法写操作,不允许其更新寄存器内容;本发明实施例中,只有安全处理器核心CPU0 110可以对边界地址寄存器212执行写操作,可用执行写操作的CPU ID来判断写操作是否合法;
所述一组边界地址寄存器212包含若干个边界地址寄存器,具体个数视系统中扩展连接的IO设备个数而定;每个IO设备都对应唯一的1个边界地址寄存器,每个边界地址寄存器也对应唯一的1个IO设备;边界地址寄存器,如图4所示,包含地址安全检查功能使能控制标志(En)、IO设备访问目标域控制标志(Mask)、IO设备ID(Device ID)、允许该设备访问的系统主存地址上界(Addr_H)、允许该设备访问的系统主存地址下界(Addr_L)。
作为一种可实施方式,本发明实施例的边界地址检查装置220,如图5所示,包含相互耦合的IO设备ID匹配模块221、地址比较模块222、中断报告模块223,其中:
所述IO设备ID匹配模块221,用于在接收到IO设备的请求时,根据IO设备的ID,从前述一组边界地址寄存器212中选择与该设备对应的边界地址寄存器,并将对应边界地址寄存器中的内容返回给地址比较模块222。
较佳地,作为一种可实施方式,IO设备ID从0开始编号,依次增加;前述一组边界地址寄存器212的边界地址寄存器也从0开始编号,依次增加;可直接用IO设备ID来索引前述一组边界地址寄存器212,即可得到与当前ID设备对应的边界地址寄存器。
所述地址比较模块222,用于在接收到IO设备的请求时,根据前述IO设备ID匹配模块221返回的边界地址和其它控制信息,对IO设备的当前请求做合法性检查;当地址安全检查功能使能控制标志En=0时,不对IO设备的当前请求做合法性检查;当地址安全检查功能使能控制标志En=1时,如果出现以下情况,则IO设备的当前请求为非法请求:
1)访存请求访问地址落入[0,Addr_L)或者[Addr_H,通用存储空间最大容量)区间;
2)Mask为“1”时,访存请求访问地址落入安全存储空间;
3)访存请求访问IO空间。
所述中断报告模块223,用于在IO设备发生非法访存请求时向指定的处理器核心报告中断。
作为一种可实施方式,本发明还提供一种安全计算机系统中IO设备分时管控的方法,包含下列步骤:
步骤S100,系统复位阶段,前述一组边界地址寄存器212所有的边界地址寄存器中安全检查功能使能控制标志En、IO设备访问目标域控制标志Mask、IO设备ID、允许该设备访问的系统主存地址上界Addr_H、允许该设备访问的系统主存地址下界Addr_L均被初始化为0;
步骤S200,系统启动阶段,只有前述安全处理器核心CPU0 110能访问前述一组边界地址寄存器212;安全处理器核心CPU0 110根据前述IO接口管理部件PIU1 150扩展连接IO设备的个数,配置相应的边界地址寄存器;在该阶段,由于IO设备访问目标域控制标志Mask在步骤S100中被初始化为0,IO设备可以访问安全处理器核心CPU0 110的存储空间,安全处理器核心CPU0 110可以利用相应的IO设备进行人机交互,对边界地址寄存器进行配置;配置完成后,安全处理器核心CPU0 110将边界地址寄存器中IO设备访问目标域控制标志Mask设置为1;如果需要对某IO设备的访问进行合法性检查,则配置相应的边界地址寄存器中安全检查功能使能控制标志En为1,并配置允许该设备访问的系统主存地址上界Addr_H、允许该设备访问的系统主存地址下界Addr_L;
步骤S300,正常工作阶段,用户使用前述通用处理器核心CPU1 120,安全处理器核心CPU0 110同时在后台运行,对用户不可见;用户使用前述IO接口管理部件PIU1 150扩展连接的IO设备与外界进行数据交互,本发明实施例的安全计算机系统中IO设备分时分域管控装置200自动对IO设备的访存请求进行合法性检查。

Claims (4)

1.一种安全计算机系统中IO设备分时分域管控方法,其特征在于,在系统启动阶段,只有安全处理器核心能访问一组边界地址寄存器;所述安全处理器核心根据IO接口管理部件扩展连接IO设备的个数,配置相应的边界地址寄存器;在该阶段,IO设备能够访问安全处理器核心的存储空间,安全处理器核心能够利用相应的IO设备进行人机交互,对边界地址寄存器进行配置;配置完成后,安全处理器核心将边界地址寄存器中IO设备访问目标域控制标志设置为1;如果需要对某IO设备的访问进行合法性检查,则配置相应的边界地址寄存器中安全检查功能使能控制标志为1,并配置允许该设备访问的系统主存地址上界和允许该设备访问的系统主存地址下界;在系统正常工作阶段,用户使用通用处理器核心,此时安全处理器核心同时在后台运行,对用户不可见;用户使用IO接口管理部件扩展连接的IO设备与外界进行数据交互,安全计算机系统中IO设备分时分域管控装置自动对IO设备的访存请求进行合法性检查;所述安全计算机系统中IO设备分时分域管控装置包括依次相连的边界地址存储装置和边界地址检查装置;所述边界地址存储装置用于存储允许IO设备访问的系统主存地址边界,并进行写权限检查;所述边界地址检查装置用于检查IO设备请求访问的系统主存地址是否落在允许其访问的地址区间内;对访问地址超出其定义范围的非法请求直接丢弃,并报告中断。
2.根据权利要求1所述的安全计算机系统中IO设备分时分域管控方法,其特征在于,所述边界地址存储装置包括边界地址寄存器和相耦合的写权限检查模块;所述边界地址寄存器用于为每个IO设备存储允许其访问的系统主存地址下界和系统主存地址上界;所述写权限检查模块根据写请求源判断对所述边界地址寄存器的写操作是否合法;对合法的写操作,允许其更新所述边界地址寄存器内容;对非法写操作,不允许其更新所述边界地址寄存器内容。
3.根据权利要求2所述的安全计算机系统中IO设备分时分域管控方法,其特征在于,所述边界地址寄存器还用于存储IO设备ID、地址安全检查功能使能控制标志和IO设备访问目标域控制标志,其中:所述IO设备ID用于表示某个边界地址寄存器和某一个IO设备对应;所述地址安全检查功能使能控制标志用于控制地址边界寄存器是否起作用;所述IO设备访问目标域控制标志用于控制该边界地址寄存器对应的IO设备访问不同的目标地址域。
4.根据权利要求1所述的安全计算机系统中IO设备分时分域管控方法,其特征在于,所述边界地址检查装置包括相互耦合的IO设备ID匹配模块、地址比较模块、中断报告模块;所述IO设备ID匹配模块用于从多个边界地址寄存器中选择对应于当前IO设备的边界地址寄存器;所述地址比较模块用于判断当前IO设备的请求地址是否落在对应的边界地址寄存器定义的地址区间内;所述中断报告模块用于在当前IO设备请求访问的地址超出对应的边界地址寄存器定义的地址区间时向处理器报告中断,请求处理。
CN201510881653.XA 2015-12-03 2015-12-03 一种安全计算机系统中io设备分时分域管控装置及方法 Active CN105389272B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510881653.XA CN105389272B (zh) 2015-12-03 2015-12-03 一种安全计算机系统中io设备分时分域管控装置及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510881653.XA CN105389272B (zh) 2015-12-03 2015-12-03 一种安全计算机系统中io设备分时分域管控装置及方法

Publications (2)

Publication Number Publication Date
CN105389272A CN105389272A (zh) 2016-03-09
CN105389272B true CN105389272B (zh) 2018-06-05

Family

ID=55421575

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510881653.XA Active CN105389272B (zh) 2015-12-03 2015-12-03 一种安全计算机系统中io设备分时分域管控装置及方法

Country Status (1)

Country Link
CN (1) CN105389272B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111600872B (zh) * 2020-05-13 2022-05-31 中国人民解放军国防科技大学 一种访存合法性检查控制器,芯片及设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103136124A (zh) * 2011-11-28 2013-06-05 国民技术股份有限公司 一种智能卡硬件防火墙系统及其实现方法
CN104133733A (zh) * 2014-07-29 2014-11-05 北京航空航天大学 一种内存错误检测方法
CN104536912A (zh) * 2014-12-22 2015-04-22 昆腾微电子股份有限公司 在小型操作系统中实现内存保护模式的装置和方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103136124A (zh) * 2011-11-28 2013-06-05 国民技术股份有限公司 一种智能卡硬件防火墙系统及其实现方法
CN104133733A (zh) * 2014-07-29 2014-11-05 北京航空航天大学 一种内存错误检测方法
CN104536912A (zh) * 2014-12-22 2015-04-22 昆腾微电子股份有限公司 在小型操作系统中实现内存保护模式的装置和方法

Also Published As

Publication number Publication date
CN105389272A (zh) 2016-03-09

Similar Documents

Publication Publication Date Title
CN108292337B (zh) 虚拟化环境下安全堡垒区域的可信开启
CN102906702B (zh) 对适配器的地址空间的访客端访问
CN106030548B (zh) 用于可信计算的多节点中枢
CN108664780A (zh) 允许基于不同级别的解锁机制的各种设备访问
CN101578589A (zh) 用户空间虚拟化系统
JP2008502057A (ja) コンフィグラブルな特徴選択機構
US10182076B2 (en) Method of managing system utilities access control
JP2008502057A5 (zh)
TW201413441A (zh) 異動診斷區塊
CN106415575A (zh) 硬件配置报告系统
US9330027B2 (en) Register access white listing
US10552345B2 (en) Virtual machine memory lock-down
BR112019009566A2 (pt) aparelhos e métodos para uma arquitetura de processador
US20130061005A1 (en) Method for power optimized multi-processor synchronization
CN103890733A (zh) 用于将错误注入存储器的方法和装置
CN104583959A (zh) 允许处理器资源的虚拟化
US20080235421A1 (en) Technique and apparatus to optimize inter-port memory transaction sequencing on a multi-ported memory controller unit
CN105335227B (zh) 一种节点内的数据处理方法、装置和系统
US9176821B2 (en) Watchpoint support system for functional simulator
CN103810440B (zh) 存取系统及方法
JP4430624B2 (ja) Nodmaキャッシュ
CN101052952B (zh) 存储器管理单元和用于存储器管理的方法
CN105389272B (zh) 一种安全计算机系统中io设备分时分域管控装置及方法
KR102167393B1 (ko) 메모리 공유 환경에서 데이터 무결성 감시 장치 및 방법
CN103365799A (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
GR01 Patent grant
GR01 Patent grant