CN109446835A - 数据访问控制方法、装置及设备 - Google Patents
数据访问控制方法、装置及设备 Download PDFInfo
- Publication number
- CN109446835A CN109446835A CN201811163049.3A CN201811163049A CN109446835A CN 109446835 A CN109446835 A CN 109446835A CN 201811163049 A CN201811163049 A CN 201811163049A CN 109446835 A CN109446835 A CN 109446835A
- Authority
- CN
- China
- Prior art keywords
- address
- data access
- access operation
- data
- information
- 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
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Storage Device Security (AREA)
Abstract
本发明实施例提供一种数据访问控制方法、装置及设备。该方法包括:获取数据访问操作的地址信息和类型信息,类型信息为读数据操作、写数据操作和取指令操作中的一种;根据数据访问操作的地址信息和类型信息,以及预设审核信息,对数据访问操作的权限进行审核,预设审核信息包括地址区域与操作权限之间的映射关系,地址区域的大小与当前运行的程序有关,操作权限包括读数据操作权限、写数据操作权限和取指令操作权限中的至少一种;根据审核结果,控制数据访问操作。本发明实施例的方法,数据访问控制的控制粒度可以进行自适应调节,可以有效对抗非法攻击,可以提高安全性。
Description
技术领域
本发明实施例涉及计算机技术领域,尤其涉及一种数据访问控制方法、装置及设备。
背景技术
随着计算机、智能手机等电子设备的普及和互联网的迅速发展,近年来非法攻击或者入侵设备系统的事件迅速增多,导致的损失也越来越大。这些攻击和入侵通常是利用系统服务程序的漏洞进行的。
由操作系统提供更多的系统级防范,是对付利用系统漏洞的攻击的有效方法之一。例如,可以通过增加控制位对数据访问进行控制。在页式地址映射中,控制位实现在页表项上,数据访问控制的基本粒度固定为页的大小,例如为4KB或者更大的容量,即整个页的地址范围都是可执行的,或者,整个页的地址范围都是不可执行的。然而,在实际应用中,很难将纯数据区域、只读区域、可执行区域分置在不同的页内,彼此全无交集,这就导致了即便是在支持页表的控制位的操作系统中,各类基于缓冲区溢出的非法攻击仍然层出不穷。
综上所述,现有数据访问控制方法的控制粒度是固定的,无法有效对抗非法攻击。
发明内容
本发明实施例提供一种数据访问控制方法、装置及设备,用以解决现有数据访问控制方法的控制粒度不可调,无法有效对抗非法攻击的问题。
第一方面,本发明实施例提供一种数据访问控制方法,包括:
获取数据访问操作的地址信息和类型信息,类型信息为读数据操作、写数据操作和取指令操作中的一种;
根据数据访问操作的地址信息和类型信息,以及预设审核信息,对数据访问操作的权限进行审核,预设审核信息包括地址区域与操作权限之间的映射关系,地址区域的大小与当前运行的程序有关,操作权限包括读数据操作权限、写数据操作权限和取指令操作权限中的至少一种;
根据审核结果,控制数据访问操作。
在一种可能的实现方式中,根据数据访问操作的地址信息和类型信息,以及预设审核信息,对数据访问操作的权限进行审核包括:
若数据访问操作为读数据操作,且数据访问操作的地址所在的地址区域的读数据操作权限为禁止,则数据访问操作为非法操作;或者,
若数据访问操作为写数据操作,且数据访问操作的地址所在的地址区域的写数据操作权限为禁止,则数据访问操作为非法操作;或者,
若数据访问操作为取指令操作,且数据访问操作的地址所在的地址区域的取指令操作权限为禁止,则数据访问操作为非法操作。
在一种可能的实现方式中,预设审核信息还包括地址子区域指示字段,地址子区域指示字段包括N个地址子区域指示位,每个地址子区域指示位用于指示与之对应的地址子区域是否需要进行操作权限审核,地址子区域为将地址区域根据预设规则划分为N个地址子区域中的一个;其中,N为大于等于2的自然数。
在一种可能的实现方式中,根据数据访问操作的地址信息和类型信息,以及预设审核信息,对数据访问操作的权限进行审核包括:
若数据访问操作为读数据操作,数据访问操作的地址所在的地址区域的读数据操作权限为禁止,且与数据访问操作的地址所在的地址子区域对应的地址子区域指示位指示需要进行操作权限审核,则数据访问操作为非法操作;或者,
若数据访问操作为写数据操作,数据访问操作的地址所在的地址区域的写数据操作权限为禁止,且与数据访问操作的地址所在的地址子区域对应的地址子区域指示位指示需要进行操作权限审核,则数据访问操作为非法操作;或者,
若数据访问操作为取指令操作,数据访问操作的地址所在的地址区域的取指令操作权限为禁止,且与数据访问操作的地址所在的地址子区域对应的地址子区域指示位指示需要进行操作权限审核,则数据访问操作为非法操作。
在一种可能的实现方式中,所述方法还包括:
在获取数据访问操作的地址信息和类型信息之前,将预设审核信息线性映射至预设地址空间。
在一种可能的实现方式中,根据审核结果,控制数据访问操作包括:
若数据访问操作为合法操作,则执行数据访问操作;
若数据访问操作为非法操作,则禁止数据访问操作,并执行预设例外处理流程。
在一种可能的实现方式中,数据访问操作的地址信息为虚拟地址信息或者物理地址信息。
第二方面,本发明实施例提供一种数据访问控制装置,包括获取模块、审核模块和控制模块;获取模块与审核模块之间、审核模块与控制模块之间电连接;
获取模块,用于获取数据访问操作的地址信息和类型信息,并将访问数据操作的地址信息和类型信息发送给审核模块,类型信息为读数据操作、写数据操作和取指令操作中的一种;
审核模块,用于接收获取模块发送的数据访问操作的地址信息和类型信息并根据数据访问操作的地址信息和类型信息,以及预设审核信息,对数据访问操作的权限进行审核,预设审核信息包括地址区域与操作权限之间的映射关系,地址区域的大小与当前运行的程序有关,操作权限包括读数据操作权限、写数据操作权限和取指令操作权限中的至少一种;
控制模块,用于接收审核模块发送的审核结果,并根据审核结果,控制数据访问操作。
在一种可能的实现方式中,审核模块包括查找电路和转换检测缓冲区(Translation Lookaside Buffer,TLB),TLB中包括多个表项,每个表项包括控制信息域以及内存信息域,内存信息域对应于内存中特定程序可访问的地址区域,控制信息域用于指示其对应的内存中特定程序可访问的地址区域的操作权限;预设审核信息保存于TLB中;
查找电路用于:
若数据访问操作为读数据操作,且根据TLB表中控制信息域确定数据访问操作的地址所在的地址区域的读数据操作权限为禁止,则数据访问操作为非法操作;或者,
若数据访问操作为写数据操作,且根据TLB表中控制信息域确定数据访问操作的地址所在的地址区域的写数据操作权限为禁止,则数据访问操作为非法操作;或者,
若数据访问操作为取指令操作,且根据TLB表中控制信息域确定数据访问操作的地址所在的地址区域的取指令操作权限为禁止,则数据访问操作为非法操作。
在一种可能的实现方式中,控制信息域包括有效位、读禁止位、写禁止位以及取指禁止位。
在一种可能的实现方式中,预设审核信息还包括地址子区域指示字段,地址子区域指示字段包括N个地址子区域指示位,每个地址子区域指示位用于指示与之对应的地址子区域是否需要进行操作权限审核,地址子区域为将地址区域根据预设规则划分为N个地址子区域中的一个;其中,N为大于等于2的自然数。
在一种可能的实现方式中,审核模块包括查找电路和转换检测缓冲区TLB,TLB中包括多个表项,每个表项包括控制信息域以及内存信息域,内存信息域对应于内存中特定程序可访问的地址区域,控制信息域用于指示其对应的内存中特定程序可访问的地址区域的操作权限;预设审核信息保存于TLB中;
查找电路用于:
若数据访问操作为读数据操作,且根据TLB表中控制信息域确定数据访问操作的地址所在的地址区域的读数据操作权限为禁止,且与数据访问操作的地址所在的地址子区域对应的地址子区域指示位指示需要进行操作权限审核,则数据访问操作为非法操作;或者,
若数据访问操作为写数据操作,且根据TLB表中控制信息域确定数据访问操作的地址所在的地址区域的写数据操作权限为禁止,且与数据访问操作的地址所在的地址子区域对应的地址子区域指示位指示需要进行操作权限审核,则数据访问操作为非法操作;或者,
若数据访问操作为取指令操作,且根据TLB表中控制信息域确定数据访问操作的地址所在的地址区域的取指令操作权限为禁止,且与数据访问操作的地址所在的地址子区域对应的地址子区域指示位指示需要进行操作权限审核,则数据访问操作为非法操作。
在一种可能的实现方式中,所述装置还包括映射模块;
映射模块,用于在获取数据访问操作的地址信息和类型信息之前,将预设审核信息线性映射至预设地址空间。
在一种可能的实现方式中,所述装置还包括例外处理模块,控制模块与例外处理模块连接,控制模块具体用于:
若数据访问操作为合法操作,则执行数据访问操作;
若数据访问操作为非法操作,则触发例外处理模块。
在一种可能的实现方式中,数据访问操作的地址信息为虚拟地址信息或者物理地址信息。
第三方面,本发明实施例提供一种电子设备,包括:
至少一个处理器和存储器;
所述处理器中集成有上述的数据访问控制装置;
存储器存储计算机执行指令;
至少一个处理器执行存储器存储的计算机执行指令,使得至少一个处理器执行如第一方面任一项所述的数据访问控制方法。
第四方面,本发明实施例提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,计算机执行指令被处理器执行时用于实现如第一方面任一项所述的数据访问控制方法。
本发明实施例提供的数据访问控制方法、装置及设备,通过获取数据访问操作的地址信息和类型信息,根据数据访问操作的地址信息和类型信息,以及预设审核信息,对数据访问操作的权限进行审核,预设审核信息包括地址区域与操作权限之间的映射关系,地址区域的大小与当前运行的程序有关,根据审核结果,控制数据访问操作。本实施例通过大小可调的地址区域,实现了数据访问控制的控制粒度的自适应调节,有效解决了现有技术进行数据访问控制时控制粒度固定导致的使用场合受限、无法有效对抗非法攻击等问题,提高了安全性。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
图1为本发明提供的数据访问控制方法一实施例的流程图;
图2为本发明提供的数据访问控制装置一实施例的结构示意图;
图3为本发明提供的电子设备一实施例的结构示意图。
通过上述附图,已示出本发明明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本发明构思的范围,而是通过参考特定实施例为本领域技术人员说明本发明的概念。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本发明相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本发明的一些方面相一致的装置和方法的例子。
本发明的说明书和权利要求书中的术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
本发明中的“第一”和“第二”只起标识作用,而不能理解为指示或暗示顺序关系、相对重要性或者隐含指明所指示的技术特征的数量。“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
本发明的说明书中通篇提到的“一个实施例”或“一实施例”意味着与实施例有关的特定特征、结构或特性包括在本申请的至少一个实施例中。因此,在整个说明书各处出现的“在一个实施例中”或“在一实施例中”未必一定指相同的实施例。需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。
网络非法攻击和非法入侵系统的常见形式是利用系统服务程序的漏洞,绕过系统的防护机制进行非法数据访问。缓冲区溢出是一种典型且危险的程序漏洞,广泛存在于各种操作系统、应用软件中。利用缓冲区溢出进行攻击,可以导致程序失败,可以执行非授权指令,甚至可以取得系统特权,进而执行各种非法操作。通过向程序的缓冲区中写入超出其长度的内容,造成缓冲区的溢出,从而破坏程序的堆栈,使程序转而执行其它指令,以达到攻击的目的。造成缓冲区溢出的原因是程序没有仔细检查输入的参数,而系统又缺乏有效的防范措施。
目前对于利用系统漏洞进行的非法攻击主要通过以下三种途径进行防范:(1)修改程序,消除程序的漏洞。这个方法最根本,但是难以防患于未然。因为系统程序数目极多,而且在不停地更新换代,不可能保证所有的系统程序都没有漏洞。目前系统软件厂商都采用打补丁的方法来亡羊补牢:每发现一个漏洞就发布一个补丁来消除它。(2)修改编译器,使得编译器能够检查出可能产生漏洞的地方,或者插入运行时的检查代码。通常这要求对编程语言进行较大的修改,程序的效率可能也会受到比较大的影响。同时这也要求重新编译大量的程序,会带来兼容性的问题。(3)操作系统提供更多的系统级防范,从根本上消除利用漏洞进行攻击的生效条件。例如,利用上述缓冲区溢出漏洞进行攻击时,攻击代码通常放在堆栈或者数据段中,正常情况下这些地址并不需要可执行的权限。因此,如果可以使得堆栈和数据段所在地址不可执行,这一类的攻击就可以统一地防范。
操作系统提供的系统级防范通过对每个数据访问的地址进行检查,判断其是否落在一些不可执行的堆栈或数据段上来实现。在冯诺依曼架构下,程序代码也是作为数据存放在内存中的,所以将处理器取指令的访存操作也视作一种数据访问操作。为了进行上述判断,在处理器的内存管理单元(Memory Management Unit,MMU)中引入了对于指定区域的访问控制机制。具体来说,对于段式地址映射,是在段描述符中,对于页式地址映射,是在页表项中增加一些专门的控制位,例如可执行位、可读位、可写位等。这些控制位的值由操作系统在构建段描述符或页表项时进行设置,处理器将这些控制位连同段描述符或页表项一并装入MMU。每个数据访问执行时都会经过处理器的MMU获得相应的物理地址并进行访问权限审核。MMU根据数据访问所命中的段描述符或页表项中的控制位所指示的控制信息,判断当前的数据访问是否合法。例如,当页表项的可执行位是0时,取指令请求落在该页表项所在地址范围内,将被视作非法访问。
虽然通过在段描述符或者页表项中增加可执行位等基于访问控制的系统级防范,可以在一定程度上检测出缓冲区溢出攻击行为,给操作系统软件提供防范攻击的可能,但是由于数据访问控制的基本粒度固定不可调,且比较大,无法满足各种软件的数据访问控制需求,导致各类基于缓冲区溢出的攻击仍然层出不穷。以控制位实现在页表项上为例,数据访问控制的基本粒度就是一个页,即最小的检测整体就是一个页,通常是4KB或更大的容量,要么整个页的地址范围之内都是可执行的,要么整个页的地址范围只能都是不可执行的。然而,在实际应用中,软件无法(或者是代价很大)总是将纯数据区域、只读区域、可执行区域分置在不同的页内,彼此全无交集。因此,即使是在支持基于控制位的访问控制的系统中,也无法完全杜绝基于缓冲区溢出的非法攻击。
图1为本发明提供的数据访问控制方法一实施例的流程图,如图1所示,本实施例的方法可以包括:
S101、获取数据访问操作的地址信息和类型信息,类型信息为读数据操作、写数据操作和取指令操作中的一种。
本实施例中的数据访问操作为读数据操作、写数据操作和取指令操作中的一种,地址信息用于指示数据访问操作访问内存的地址。
S102、根据数据访问操作的地址信息和类型信息,以及预设审核信息,对数据访问操作的权限进行审核,预设审核信息包括地址区域与操作权限之间的映射关系,地址区域的大小与当前运行的程序有关,操作权限包括读数据操作权限、写数据操作权限和取指令操作权限中的至少一种。
本实施例中的预设审核信息可以由操作系统等特权软件根据需要进行设置、加载、使能、禁用和撤销。预设审核信息用于指示各个地址区域对应的操作权限。
本实施例中的地址区域可以根据地址区域的起始地址和地址区域的大小确定,或者,可以根据地址区域的起始地址和地址区域的终止地址确定。地址区域的大小与当前运行的程序有关,可以根据程序的纯数据区域、只读区域、可执行区域的大小,设置预设审核信息中地址区域的大小。地址区域的大小反映了数据访问控制的控制粒度,本实施例中数据访问控制的控制粒度是可以调节的,能够满足对于不同程序的数据访问控制需求,有效对抗非法攻击。
本实施例中操作权限包括读数据操作权限、写数据操作权限和取指令操作权限中的至少一种,也就是操作权限可以包括读数据操作权限、写数据操作权限、取指令操作权限、读数据操作权限和写数据操作权限、写数据操作权限和取指令操作权限、读数据操作权限和取指令操作权限,或者,读数据操作权限、写数据操作权限和取指令操作权限。
S103、根据审核结果,控制数据访问操作。
本实施例中根据数据访问操作的地址信息和类型信息,以及预设审核信息,对数据访问操作的权限进行审核的审核结果,对数据访问操作进行控制,以防范非法攻击。
本实施例提供的数据访问控制方法,通过获取数据访问操作的地址信息和类型信息,根据数据访问操作的地址信息和类型信息,以及预设审核信息,对数据访问操作的权限进行审核,预设审核信息包括地址区域与操作权限之间的映射关系,地址区域的大小与当前运行的程序有关,根据审核结果,控制数据访问操作。本实施例通过大小可调的地址区域,实现了数据访问控制的控制粒度的自适应调节,有效解决了现有技术进行数据访问控制时控制粒度固定导致的使用场合受限、无法有效对抗非法攻击等问题,提高了安全性。
在一些实施例中,根据数据访问操作的地址信息和类型信息,以及预设审核信息,对数据访问操作的权限进行审核的一种实现方式可以是:
若数据访问操作为读数据操作,且数据访问操作的地址所在的地址区域的读数据操作权限为禁止,则数据访问操作为非法操作;或者,
若数据访问操作为写数据操作,且数据访问操作的地址所在的地址区域的写数据操作权限为禁止,则数据访问操作为非法操作;或者,
若数据访问操作为取指令操作,且数据访问操作的地址所在的地址区域的取指令操作权限为禁止,则数据访问操作为非法操作。
在一些实施例中,预设审核信息可以通过查找表的形式表示。表1为一种具体的查找表的表头。查找表的每个表项能够确定一块连续地址区域中的操作权限。
表1
有效位(VALID)用于表示该配置项是否有效,可以采用1位二进制数表示,例如为1时表示该配置项有效,为0时表示该配置项无效。
操作权限判定属性包含一系列审核时所关注的数据访问操作的属性,包括但不限于:读禁止位(Read Inhibit,RI)、写禁止位(Write Inhibit,WI)和执行禁止位(eXecutionInhibit,XI),均可以采用1位二进制数表示。其中,RI用于表示对应的地址区域是否允许读数据操作,例如为1时对应的地址区域禁止任何读数据指令读取;WI用于表示对应的地址区域是否允许写数据操作,例如为1时对应地址区域禁止任何写数据指令修改;XI用于表示对应的地址区域是否允许取指令操作,例如为1时禁止从对应的地址区域中取指令进行执行。
地址区域的起始地址(StartAddr)用于表示每个表项所针对的连续地址区域的起始地址。
地址区域的大小(SIZE)用于表示每个表项所针对的连续地址区域的大小。可以采用幂指数表示,每个表项所针对的连续地址区域的大小为2SIZE个字节。例如地址区域的大小是256字节时,SIZE的值为8,地址区域的大小是512字节时,SIZE的值为9。SIZE的具体取值视需求而定,各个表项中的SIZE的取值可以相同,也可以不同。
将数据访问操作的地址信息和类型信息与查找表中的所有表项逐项进行比较。若任何一项对该数据访问操作的审核结果为非法操作,则最终的审核结果为非法操作。
若将获取到的数据访问操作的地址信息记为addr,类型信息通过is_load、is_store和is_fetch表示,其中,is_load用于指示是否为访存读数据操作、is_store用于指示是否为访存写数据操作、is_fetch用于指示是否为取指令操作。那么每一表项对该数据访问操作的审核结果可以通过如下公式确定:
is_illegal=VALID&&((StartAddr>>SIZE)==(addr>>SIZE))&&((is_load&&RI)||(is_store&&WI)||(is_fetch&&XI))-------------------------(公式一)
其中,((STARTADR>>SIZE)==(addr>>SIZE))为1时表示待审核地址落在该表项所指示的连续区域中。((is_load&&RI)||(is_store&&WI)||(is_fetch&&XI))的含义是当“待审核操作是访存读数据操作且该地址区域禁止读”或者“待审核操作是访存写数据操作且该地址区域禁止写”或者“待审核操作是取指令操作且该地址区域禁止取指令执行”时,这个数据访问操作是非法的。is_illegal为1时表示审核的数据访问操作为非法操作。
在一些实施例中,预设审核信息还可以包括地址子区域指示字段,地址子区域指示字段包括N个地址子区域指示位,每个地址子区域指示位用于指示与之对应的地址子区域是否需要进行操作权限审核,地址子区域为将地址区域根据预设规则划分为N个地址子区域中的一个;其中,N为大于等于2的自然数。
本实施例中根据预设规则将地址区域划分为N个地址子区域可以采用等分的方式,即将地址区域划分为N个大小相等的地址子区域。也可以采用递减或者递增的方式进行划分,例如,第1个地址子区域的大小为地址区域大小的一半,第2个地址子区域的大小为地址区域大小的四分之一,依次类推。本实施例对于具体的划分方式不做限制。
举例来说,A、B、C、D、E、F、G、H、I和J对应10个连续的地址区域,其中,A、C、E、G和I对应的地址区域禁止读数据操作,B、D、F、H和J对应的地址区域禁止写数据操作,可以采用10个表项分别表示上述审核信息。而通过地址子区域指示字段,仅需要2个表项便可以表示上述审核信息,将表项的地址区域的大小设置为这10个连续地址区域之和,一个表项用于标识禁止读数据操作,地址子区域指示字段设置为1010101010,另一个表项用于标识禁止写数据操作,地址子区域指示字段设置为0101010101。通过地址子区域指示字段可以减少预设审核信息的开销,可以减少将数据访问操作的地址信息和类型信息与查找表中的所有表项逐项进行比较的比较次数,提高了进行数据访问控制的效率。
假如一个表项中地址区域的大小为10KB,通过增加包括10个地址子区域指示位的地址子区域指示字段,用于指示将10KB地址区域等分为10个1KB地址子区域中每个子区域是否需要进行数据访问控制权限审核,可以将数据访问控制的控制粒度由10KB降低至1KB,细化了数据访问控制的控制粒度。
本实施例提供的数据访问控制方法,通过在预设审核信息中的每项中增加包括N个地址子区域指示位的地址子区域指示字段,用于指示将地址区域根据预设规则进行划分所形成的N个地址子区域否需要进行操作权限审核,不仅进一步细化了数据访问控制的控制粒度,进一步提高了安全性,而且减少了预设审核信息的开销,提高了进行数据访问控制的效率,进而可以提升处理器的运行性能。
在一些实施例中,当预设审核信息还包括地址子区域指示字段时,根据数据访问操作的地址信息和类型信息,以及预设审核信息,对数据访问操作的权限进行审核的一种实现方式可以是:
若数据访问操作为读数据操作,数据访问操作的地址所在的地址区域的读数据操作权限为禁止,且与数据访问操作的地址所在的地址子区域对应的地址子区域指示位指示需要进行操作权限审核,则数据访问操作为非法操作;或者,
若数据访问操作为写数据操作,数据访问操作的地址所在的地址区域的写数据操作权限为禁止,且与数据访问操作的地址所在的地址子区域对应的地址子区域指示位指示需要进行操作权限审核,则数据访问操作为非法操作;或者,
若数据访问操作为取指令操作,数据访问操作的地址所在的地址区域的取指令操作权限为禁止,且与数据访问操作的地址所在的地址子区域对应的地址子区域指示位指示需要进行操作权限审核,则数据访问操作为非法操作。
下面以对地址区域进行N等分为例,如何利用地址子区域指示字段对数据访问操作进行审核说明。表2为包含了地址子区域指示字段的查找表的表头。
表2
有效位 | 操作权限判定属性 | 地址区域的起始地址 | 地址区域的大小 | 地址子区域指示字段 |
其中,地址子区域指示字段(BITMAP)包括N个地址子区域指示位,采用N个比特位表示,每个比特位用于表示将每个表项所对应的地址区域所指示的连续地址区域等分为N个地址子区域中的一个是否需要进行数据访问操作权限审核,地址子区域指示字段的第k位,记作BITMAP[k],对应第k个地址子区域,其值为1时表示该地址子区域需要依照操作权限判定属性(如读禁止位、写禁止位和执行禁止位)配置的情况进行审核。需要注意的是,尽管对所有表项所对应的地址区域都是进行了N等分,但是每一项中地址子区域的大小会随着该项中地址区域的大小的变化而变化。
当预设审核信息采用表2所示查找表的形式表示时,每一表项对数据访问操作的审核结果可以通过如下公式确定:
is_illegal=VALID&&((StartAddr>>SIZE)==(addr>>SIZE))&&((is_load&&RI)||(is_store&&WI)||(is_fetch&&XI))&&(BITMAP[(addr-StartAddr)/(2SIZE/N)])-------------------------(公式二)
其中,BITMAP[(addr-StartAddr)/(2SIZE/N)]为1表示待审核地址所在的地址子区域是需要进行审核的。其他符号的说明可以参考对于公式一的说明,此处不再赘述。
在一些实施例中,在获取数据访问操作的地址信息和类型信息之前,将预设审核信息线性映射至预设地址空间。通过将预设审核信息线性映射至预设地址空间,便于查找,可以提高对于数据访问操作进行审核的速度,进而提高了数据访问控制的效率。
当处理器复位之后,预设审核信息查找表中所有表项均为无效项,可以由操作系统等特权软件根据需要填入相应的表项。一种可选的配置方式是,将查找表中各项的内容线性映射到一段特殊的地址空间上,处理器将落在这段地址空间上的读写操作转换为对于查找表的读写操作,而不是将其发往内存或外设。下面以具体示例说明所采用的线性映射的方法。为了描述简洁,对表项中各个字段给予明确定义:操作权限判定属性包含读禁止位RI、写禁止位WI和执行禁止位XI、StartAddr位宽为64位、SIZE位宽为16位、BITMAP位宽为64位。表3、表4、表5和表6分别对于查找表中的控制信息、地址区域的起始地址、地址区域的大小和地址子区域指示字段进行了说明。假设查找表一共有m项,则线性映射关系如下:
查找表第n(n=0,1,2,……m-1)项中控制信息线性映射后的地址可以为:查找表基址+0x20×n。
表3
查找表第n项中地址区域的起始地址线性映射后的地址可以为:
查找表基址+0x20×n+0x8。
表4
名称 | 位 | 功能描述 |
StartAddr | 63:0 | 地址区域的起始地址 |
查找表第n项中地址区域的大小线性映射后的地址可以为:
查找表基址+0x20×n+0x10。
表5
名称 | 位 | 功能描述 |
Size | 15:0 | 地址区域大小的幂次方 |
查找表第n项中地址子区域指示字段线性映射后的地址可以为:
查找表基址+0x20×n+0x18。
表6
在一些实施例中,根据审核结果,控制数据访问操作的一种实现方式可以是:
若数据访问操作为合法操作,则执行数据访问操作。本实施例中当审核结果指示数据访问操作为合法操作时,若数据访问操作为读数据操作,则从相应的数据区域中读取数据;若数据访问操作为写数据操作,则向相应的数据区域中写入数据;若数据访问操作为取指令操作,则从相应的数据区域中取指令并执行。
若数据访问操作为非法操作,则禁止数据访问操作,并执行预设例外处理流程。本实施例中当审核结果指示数据访问操作为非法操作时,若数据访问操作为读数据操作,则禁止从相应的数据区域中读取数据;若数据访问操作为写数据操作,则禁止向相应的数据区域中写入数据;若数据访问操作为取指令操作,则禁止从相应的数据区域中取指令并执行。进一步的,在禁止数据访问操作的同时,执行预设例外处理流程进行进一步的防范处理,进一步提高对于非法攻击的防范能力。例如可以将该数据访问操作所对应的指令标记为数据访问违例例外,通知操作系统响应例外并做进一步的处理,例如可以进行杀毒操作,可以对与该数据访问操作相关的操作加强监控等。
可选的,预设审核信息可以存储于转换检测缓冲区(Translation LookasideBuffer,TLB)中。将预设审核信息存储于TLB表中,可以提高获取预设审核信息的速度,进而可以提高对数据访问操作进行审核的效率。
可选的,数据访问操作的地址信息为虚拟地址信息或者物理地址信息。本实施例中,当数据访问操作的地址信息和预设审核信息中的地址区域均采用虚拟地址信息表示,或者,均采用物理地址信息表示时,可以直接对数据访问操作的权限进行审核。若数据访问操作的地址信息和预设审核信息中的地址区域的地址类型不一致,首先需要根据虚拟地址信息与物理地址信息之间的映射关系,转换为同一种地址类型。
图2为本发明提供的数据访问控制装置一实施例的结构示意图。如图2所示,本实施例提供的数据访问控制装置20可以包括:获取模块201、审核模块202和控制模块203。获取模块201与审核模块202之间、审核模块202与控制模块203之间电连接。
获取模块201,用于获取数据访问操作的地址信息和类型信息,并将访问数据操作的地址信息和类型信息发送给审核模块202,类型信息为读数据操作、写数据操作和取指令操作中的一种。
审核模块202,用于接收获取模块201发送的数据访问操作的地址信息和类型信息并根据数据访问操作的地址信息和类型信息,以及预设审核信息,对数据访问操作的权限进行审核,预设审核信息包括地址区域与操作权限之间的映射关系,地址区域的大小与当前运行的程序有关,操作权限包括读数据操作权限、写数据操作权限和取指令操作权限中的至少一种。
控制模块203,用于接收审核模块202发送的审核结果,并根据审核结果,控制数据访问操作。
本实施例提供的数据访问控制装置20可以为芯片、集成电路、微处理器等。本实施例提供的数据访问控制装置20可以应用于各种电子设备当中,用于对数据访问操作进行控制,以提高电子设备对抗非法攻击的能力。
本实施例的装置,可以用于执行图1所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
可选的,审核模块202可以包括查找电路和转换检测缓冲区TLB,TLB中包括多个表项,每个表项包括控制信息域以及内存信息域,内存信息域对应于内存中特定程序可访问的地址区域,控制信息域用于指示其对应的内存中特定程序可访问的地址区域的操作权限;预设审核信息保存于TLB中;
查找电路用于:
若数据访问操作为读数据操作,且根据TLB表中控制信息域确定数据访问操作的地址所在的地址区域的读数据操作权限为禁止,则数据访问操作为非法操作;或者,
若数据访问操作为写数据操作,且根据TLB表中控制信息域确定数据访问操作的地址所在的地址区域的写数据操作权限为禁止,则数据访问操作为非法操作;或者,
若数据访问操作为取指令操作,且根据TLB表中控制信息域确定数据访问操作的地址所在的地址区域的取指令操作权限为禁止,则数据访问操作为非法操作。
可选的,控制信息域可以包括有效位、读禁止位、写禁止位以及取指禁止位。
可选的,预设审核信息还可以包括地址子区域指示字段,地址子区域指示字段包括N个地址子区域指示位,每个地址子区域指示位用于指示与之对应的地址子区域是否需要进行操作权限审核,地址子区域为将地址区域根据预设规则划分为N个地址子区域中的一个;其中,N为大于等于2的自然数。
可选的,审核模块可以包括查找电路和转换检测缓冲区TLB,TLB中包括多个表项,每个表项包括控制信息域以及内存信息域,内存信息域对应于内存中特定程序可访问的地址区域,控制信息域用于指示其对应的内存中特定程序可访问的地址区域的操作权限;预设审核信息保存于TLB中;
查找电路用于:
若数据访问操作为读数据操作,且根据TLB表中控制信息域确定数据访问操作的地址所在的地址区域的读数据操作权限为禁止,且与数据访问操作的地址所在的地址子区域对应的地址子区域指示位指示需要进行操作权限审核,则数据访问操作为非法操作;或者,
若数据访问操作为写数据操作,且根据TLB表中控制信息域确定数据访问操作的地址所在的地址区域的写数据操作权限为禁止,且与数据访问操作的地址所在的地址子区域对应的地址子区域指示位指示需要进行操作权限审核,则数据访问操作为非法操作;或者,
若数据访问操作为取指令操作,且根据TLB表中控制信息域确定数据访问操作的地址所在的地址区域的取指令操作权限为禁止,且与数据访问操作的地址所在的地址子区域对应的地址子区域指示位指示需要进行操作权限审核,则数据访问操作为非法操作。
可选的,装置20还可以包括映射模块,用于在获取数据访问操作的地址信息和类型信息之前,将预设审核信息线性映射至预设地址空间。
可选的,装置20还可以包括例外处理模块,控制模块203与例外处理模块连接,控制模块203具体用于:
若数据访问操作为合法操作,则执行数据访问操作;
若数据访问操作为非法操作,则触发例外处理模块。
可选的,数据访问操作的地址信息为虚拟地址信息或者物理地址信息。
本发明实施例还提供一种电子设备,请参见图3所示,本发明实施例仅以图3为例进行说明,并不表示本发明仅限于此。图3为本发明提供的电子设备一实施例的结构示意图。本实施例提供的电子设备包括但不限于移动电话、计算机、数字广播终端、消息收发设备、游戏控制台、平板设备、医疗设备、健身设备、个人数字助理等。如图3所示,本实施例提供的电子设备30可以包括:存储器301、处理器302和总线303。其中,总线303用于实现各元件之间的连接。
存储器301中存储有计算机执行指令,计算机执行指令被处理器302执行时可以实现上述任一方法实施例的技术方案。
其中,存储器301和处理器302之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可以通过一条或者多条通信总线或信号线实现电性连接,如可以通过总线303连接。存储器301中存储有实现数据访问控制方法的计算机执行指令,包括至少一个可以软件或固件的形式存储于存储器301中的软件功能模块,处理器302通过运行存储在存储器301内的软件程序以及模块,从而执行各种功能应用以及数据处理。
存储器301可以是,但不限于,随机存取存储器(Random Access Memory,简称:RAM),只读存储器(Read Only Memory,简称:ROM),可编程只读存储器(ProgrammableRead-Only Memory,简称:PROM),可擦除只读存储器(Erasable Programmable Read-OnlyMemory,简称:EPROM),电可擦除只读存储器(Electric Erasable Programmable Read-Only Memory,简称:EEPROM)等。其中,存储器301用于存储程序,处理器302在接收到执行指令后,执行程序。进一步地,上述存储器301内的软件程序以及模块还可包括操作系统,其可包括各种用于管理系统任务(例如内存管理、存储设备控制、电源管理等)的软件组件和/或驱动,并可与各种硬件或软件组件相互通信,从而提供其他软件组件的运行环境。
处理器302可以是一种集成电路芯片,具有信号的处理能力。上述的处理器302可以是通用处理器,包括中央处理器(Central Processing Unit,简称:CPU)、网络处理器(Network Processor,简称:NP)等。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。可以理解,图3的结构仅为示意,还可以包括比图3中所示更多或者更少的组件,或者具有与图3所示不同的配置。图3中所示的各组件可以采用硬件和/或软件实现。所述处理器中集成有上述任一实施例所述的数据访问控制装置。
本发明实施例还提供一种计算机可读存储介质,其上存储有计算机执行指令,计算机执行指令被处理器执行时可以实现上述任一方法实施例提供的数据访问控制方法。本实施例中的计算机可读存储介质可以是计算机能够存取的任何可用介质,或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备,可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如SSD)等。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (18)
1.一种数据访问控制装置,其特征在于,包括获取模块、审核模块和控制模块;所述获取模块与所述审核模块之间、所述审核模块与所述控制模块之间电连接;
所述获取模块,用于获取数据访问操作的地址信息和类型信息,并将所述访问数据操作的地址信息和类型信息发送给审核模块,所述类型信息为读数据操作、写数据操作和取指令操作中的一种;
所述审核模块,用于接收所述获取模块发送的所述数据访问操作的地址信息和类型信息并根据所述数据访问操作的地址信息和类型信息,以及预设审核信息,对所述数据访问操作的权限进行审核,所述预设审核信息包括地址区域与操作权限之间的映射关系,所述地址区域的大小与当前运行的程序有关,所述操作权限包括读数据操作权限、写数据操作权限和取指令操作权限中的至少一种;
所述控制模块,用于接收所述审核模块发送的审核结果,并根据所述审核结果,控制所述数据访问操作。
2.根据权利要求1所述的装置,其特征在于,所述审核模块包括查找电路和转换检测缓冲区TLB,所述TLB中包括多个表项,每个表项包括控制信息域以及内存信息域,所述内存信息域对应于内存中特定程序可访问的地址区域,所述控制信息域用于指示其对应的内存中特定程序可访问的地址区域的操作权限;所述预设审核信息保存于所述TLB中;
所述查找电路用于:
若所述数据访问操作为读数据操作,且根据所述TLB表中控制信息域确定所述数据访问操作的地址所在的地址区域的读数据操作权限为禁止,则所述数据访问操作为非法操作;或者,
若所述数据访问操作为写数据操作,且根据所述TLB表中控制信息域确定所述数据访问操作的地址所在的地址区域的写数据操作权限为禁止,则所述数据访问操作为非法操作;或者,
若所述数据访问操作为取指令操作,且根据所述TLB表中控制信息域确定所述数据访问操作的地址所在的地址区域的取指令操作权限为禁止,则所述数据访问操作为非法操作。
3.根据权利要求2所述的装置,其特征在于,所述控制信息域包括有效位、读禁止位、写禁止位以及取指禁止位。
4.根据权利要求1所述的装置,其特征在于,所述预设审核信息还包括地址子区域指示字段,所述地址子区域指示字段包括N个地址子区域指示位,每个地址子区域指示位用于指示与之对应的地址子区域是否需要进行操作权限审核,所述地址子区域为将所述地址区域根据预设规则划分为N个地址子区域中的一个;其中,N为大于等于2的自然数。
5.根据权利要求4所述的装置,其特征在于,
所述审核模块包括查找电路和转换检测缓冲区TLB,所述TLB中包括多个表项,每个表项包括控制信息域以及内存信息域,所述内存信息域对应于内存中特定程序可访问的地址区域,所述控制信息域用于指示其对应的内存中特定程序可访问的地址区域的操作权限;所述预设审核信息保存于所述TLB中;
所述查找电路用于:
若所述数据访问操作为读数据操作,且根据所述TLB表中控制信息域确定所述数据访问操作的地址所在的地址区域的读数据操作权限为禁止,且与所述数据访问操作的地址所在的地址子区域对应的地址子区域指示位指示需要进行操作权限审核,则所述数据访问操作为非法操作;或者,
若所述数据访问操作为写数据操作,且根据所述TLB表中控制信息域确定所述数据访问操作的地址所在的地址区域的写数据操作权限为禁止,且与所述数据访问操作的地址所在的地址子区域对应的地址子区域指示位指示需要进行操作权限审核,则所述数据访问操作为非法操作;或者,
若所述数据访问操作为取指令操作,且根据所述TLB表中控制信息域确定所述数据访问操作的地址所在的地址区域的取指令操作权限为禁止,且与所述数据访问操作的地址所在的地址子区域对应的地址子区域指示位指示需要进行操作权限审核,则所述数据访问操作为非法操作。
6.根据权利要求1所述的装置,其特征在于,所述装置还包括映射模块;
所述映射模块,用于在所述获取数据访问操作的地址信息和类型信息之前,将所述预设审核信息线性映射至预设地址空间。
7.根据权利要求1所述的装置,其特征在于,所述装置还包括例外处理模块,所述控制模块与所述例外处理模块连接,所述控制模块具体用于:
若所述数据访问操作为合法操作,则执行所述数据访问操作;
若所述数据访问操作为非法操作,则触发例外处理模块。
8.根据权利要求1-7任一项所述的装置,其特征在于,
所述数据访问操作的地址信息为虚拟地址信息或者物理地址信息。
9.一种数据访问控制方法,其特征在于,包括:
获取数据访问操作的地址信息和类型信息,所述类型信息为读数据操作、写数据操作和取指令操作中的一种;
根据所述数据访问操作的地址信息和类型信息,以及预设审核信息,对所述数据访问操作的权限进行审核,所述预设审核信息包括地址区域与操作权限之间的映射关系,所述地址区域的大小与当前运行的程序有关,所述操作权限包括读数据操作权限、写数据操作权限和取指令操作权限中的至少一种;
根据审核结果,控制所述数据访问操作。
10.根据权利要求9所述的方法,其特征在于,所述根据所述数据访问操作的地址信息和类型信息,以及预设审核信息,对所述数据访问操作的权限进行审核包括:
若所述数据访问操作为读数据操作,且所述数据访问操作的地址所在的地址区域的读数据操作权限为禁止,则所述数据访问操作为非法操作;或者,
若所述数据访问操作为写数据操作,且所述数据访问操作的地址所在的地址区域的写数据操作权限为禁止,则所述数据访问操作为非法操作;或者,
若所述数据访问操作为取指令操作,且所述数据访问操作的地址所在的地址区域的取指令操作权限为禁止,则所述数据访问操作为非法操作。
11.根据权利要求9所述的方法,其特征在于,所述预设审核信息还包括地址子区域指示字段,所述地址子区域指示字段包括N个地址子区域指示位,每个地址子区域指示位用于指示与之对应的地址子区域是否需要进行操作权限审核,所述地址子区域为将所述地址区域根据预设规则划分为N个地址子区域中的一个;其中,N为大于等于2的自然数。
12.根据权利要求11所述的方法,其特征在于,所述根据所述数据访问操作的地址信息和类型信息,以及预设审核信息,对所述数据访问操作的权限进行审核包括:
若所述数据访问操作为读数据操作,所述数据访问操作的地址所在的地址区域的读数据操作权限为禁止,且与所述数据访问操作的地址所在的地址子区域对应的地址子区域指示位指示需要进行操作权限审核,则所述数据访问操作为非法操作;或者,
若所述数据访问操作为写数据操作,所述数据访问操作的地址所在的地址区域的写数据操作权限为禁止,且与所述数据访问操作的地址所在的地址子区域对应的地址子区域指示位指示需要进行操作权限审核,则所述数据访问操作为非法操作;或者,
若所述数据访问操作为取指令操作,所述数据访问操作的地址所在的地址区域的取指令操作权限为禁止,且与所述数据访问操作的地址所在的地址子区域对应的地址子区域指示位指示需要进行操作权限审核,则所述数据访问操作为非法操作。
13.根据权利要求9所述的方法,其特征在于,所述方法还包括:
在所述获取数据访问操作的地址信息和类型信息之前,将所述预设审核信息线性映射至预设地址空间。
14.根据权利要求9所述的方法,其特征在于,所述根据审核结果,控制所述数据访问操作包括:
若所述数据访问操作为合法操作,则执行所述数据访问操作;
若所述数据访问操作为非法操作,则禁止所述数据访问操作,并执行预设例外处理流程。
15.根据权利要求9-14任一项所述的方法,其特征在于,
所述预设审核信息存储于转换检测缓冲区TLB中。
16.根据权利要求9-14任一项所述的方法,其特征在于,
所述数据访问操作的地址信息为虚拟地址信息或者物理地址信息。
17.一种电子设备,其特征在于,包括:至少一个处理器和存储器;
所述处理器中集成有权利要求1-8任一项所述的数据访问控制装置;
所述存储器存储计算机执行指令;
所述至少一个处理器执行所述存储器存储的计算机执行指令,使得所述至少一个处理器执行如权利要求9-16任一项所述的数据访问控制方法。
18.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如权利要求9-16任一项所述的数据访问控制方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811163049.3A CN109446835A (zh) | 2018-09-30 | 2018-09-30 | 数据访问控制方法、装置及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811163049.3A CN109446835A (zh) | 2018-09-30 | 2018-09-30 | 数据访问控制方法、装置及设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109446835A true CN109446835A (zh) | 2019-03-08 |
Family
ID=65545912
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811163049.3A Pending CN109446835A (zh) | 2018-09-30 | 2018-09-30 | 数据访问控制方法、装置及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109446835A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111552614A (zh) * | 2020-04-28 | 2020-08-18 | 杭州迪普科技股份有限公司 | 一种cpu使用率的统计方法及装置 |
CN111950017A (zh) * | 2019-05-14 | 2020-11-17 | 龙芯中科技术有限公司 | 内存数据保护方法、装置、设备以及存储介质 |
CN112347432A (zh) * | 2020-11-24 | 2021-02-09 | 广芯微电子(广州)股份有限公司 | 一种基于risc-v架构的嵌入式处理器中的程序保护方法及系统 |
WO2022126644A1 (zh) * | 2020-12-18 | 2022-06-23 | 华为技术有限公司 | 模型保护装置及方法、计算装置 |
CN115455397A (zh) * | 2022-10-28 | 2022-12-09 | 湖北芯擎科技有限公司 | 一种输入输出接口控制方法及系统 |
WO2024027356A1 (zh) * | 2022-07-30 | 2024-02-08 | 华为技术有限公司 | 电子装置和安全访问软件的方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105320611A (zh) * | 2014-06-30 | 2016-02-10 | 英特尔公司 | 用于细粒存储器保护的方法和设备 |
CN107771335A (zh) * | 2015-06-16 | 2018-03-06 | 微软技术许可有限责任公司 | 受保护区域 |
-
2018
- 2018-09-30 CN CN201811163049.3A patent/CN109446835A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105320611A (zh) * | 2014-06-30 | 2016-02-10 | 英特尔公司 | 用于细粒存储器保护的方法和设备 |
CN107771335A (zh) * | 2015-06-16 | 2018-03-06 | 微软技术许可有限责任公司 | 受保护区域 |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111950017A (zh) * | 2019-05-14 | 2020-11-17 | 龙芯中科技术有限公司 | 内存数据保护方法、装置、设备以及存储介质 |
CN111950017B (zh) * | 2019-05-14 | 2023-05-16 | 龙芯中科技术股份有限公司 | 内存数据保护方法、装置、设备以及存储介质 |
CN111552614A (zh) * | 2020-04-28 | 2020-08-18 | 杭州迪普科技股份有限公司 | 一种cpu使用率的统计方法及装置 |
CN112347432A (zh) * | 2020-11-24 | 2021-02-09 | 广芯微电子(广州)股份有限公司 | 一种基于risc-v架构的嵌入式处理器中的程序保护方法及系统 |
CN112347432B (zh) * | 2020-11-24 | 2021-10-12 | 广芯微电子(广州)股份有限公司 | 一种基于risc-v架构的嵌入式处理器中的程序保护方法及系统 |
WO2022126644A1 (zh) * | 2020-12-18 | 2022-06-23 | 华为技术有限公司 | 模型保护装置及方法、计算装置 |
WO2024027356A1 (zh) * | 2022-07-30 | 2024-02-08 | 华为技术有限公司 | 电子装置和安全访问软件的方法 |
CN115455397A (zh) * | 2022-10-28 | 2022-12-09 | 湖北芯擎科技有限公司 | 一种输入输出接口控制方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109446835A (zh) | 数据访问控制方法、装置及设备 | |
KR102383900B1 (ko) | 타겟 메모리 어드레스에 대응한 메모리 속성 유닛의 영역을 식별하는 영역식별 연산 | |
CN109002706B (zh) | 一种基于用户级页表的进程内数据隔离保护方法和系统 | |
US7774561B2 (en) | Key-controlled object-based memory protection | |
US7673345B2 (en) | Providing extended memory protection | |
CN101490654B (zh) | 在虚拟机中避免高速缓存行共享 | |
US7761676B2 (en) | Protecting memory by containing pointer accesses | |
CN101276388B (zh) | 保护系统管理模式(smm)空间免受高速缓存攻击 | |
CN110442381A (zh) | 用于保护有条件的推测性指令执行的影子缓存 | |
EP2842041B1 (en) | Data processing system and method for operating a data processing system | |
JP2022503562A (ja) | 範囲チェック命令 | |
CN105393229A (zh) | 虚拟机中的页面错误注入使得经换出的存储器页面映射到虚拟机虚拟化存储器中 | |
US10824350B2 (en) | Handling contingent and non-contingent memory access program instructions making use of disable flag | |
CN110928737B (zh) | 监控样本进程的内存访问行为的方法和装置 | |
WO2019237866A1 (zh) | 一种运行时访问控制方法及计算装置 | |
EP3746899B1 (en) | Controlling guard tag checking in memory accesses | |
EP3881189B1 (en) | An apparatus and method for controlling memory accesses | |
US20230236925A1 (en) | Tag checking apparatus and method | |
EP3746900B1 (en) | Controlling guard tag checking in memory accesses | |
CN109446755B (zh) | 内核钩子函数保护方法、装置、设备以及存储介质 | |
US11119941B2 (en) | Capability enforcement controller | |
CN101256480A (zh) | 一种能够标记存储器中某些位置的处理器 | |
US6889308B1 (en) | Method and apparatus for protecting page translations | |
Kharbutli | Improving the security of the heap through inter-process protection and intra-process temporal protection |
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 | ||
CB02 | Change of applicant information |
Address after: 100095 Building 2, Longxin Industrial Park, Zhongguancun environmental protection technology demonstration park, Haidian District, Beijing Applicant after: Loongson Zhongke Technology Co.,Ltd. Address before: 100095 Building 2, Longxin Industrial Park, Zhongguancun environmental protection technology demonstration park, Haidian District, Beijing Applicant before: LOONGSON TECHNOLOGY Corp.,Ltd. |