专利名称:一种存储资源的保护方法及系统的制作方法
技术领域:
本发明涉及信息安全领域,具体涉及一种存储资源的保护方法及系统,用于嵌入式芯片存储资源的保护。
背景技术:
市场上存在各种各样的IC卡,而每张卡实现一个特定的功能,如果将常用的几种功能集成到一张卡上,则既可以减少携带的不便,也可以减少不必要的浪费。比如目前的“一卡多用”,就是指在一款芯片上实现多个应用,其中一个应用代表一个用户,每个用户运行在各自的存储空间,为了使多个用户能够有序、无误地运行在同一款芯片上,芯片需要加入存储空间的管理和保护,为每个用户分配存储空间,并根据需要保护其资源是否能被其他用户访问。现有的存储管理和保护机制一般通过软硬件协同操作,芯片中的处理器通常包括特权和非特权模式,而以特权模式运行的软件一般能够执行处理器所支持的每一条指令,通常,操作系统内核在特权模式中运行,该模式通常被称为“管理员模式”或“内核模式”;与此相反,可约束在芯片上运行的某些软件仅以非特权模式运行,该模式一般允许软件执行处理器的指令的子集,操作系统由此可使用该非特权模式来限制以该模式运行的软件的活动,该非特权模式通常被称为“用户模式”。一般而言,芯片用户应用程序以该非特权模式操作,使得运行某个用户时,当前的存储空间只有该用户空间或者共享空间处于活跃状态,其他空间处于睡眠状态,以防止被当前用户访问。该模式通过OS (Operation System)进行用户管理,每次响应进入到某个用户时,先配置该用户的属性寄存器,使其处于活跃状态,其他空间为睡眠状态,只有当前用户的空间可见。但该模式需要有一个特权用户,其可以访问整个存储空间,以及分配其他用户的存储空间和属性,这样特权用户就可以访问其他用户的资源,但是一旦特权用户被攻击,其他用户占有了特权用户的控制权,那么用户信息将被窃取、或篡改,因此该机制存在严重的安全隐患。图I为现有技术中多用户嵌入式系统运行图,如图I所示,所述的多用户嵌入式系统包括多个用户系统用户(System) 101、共享用户(Share) 102和非共享用户(Userl UserN ) 103。在现有技术中,系统用户101为特权用户,其工作在特权模式,而共享用户102和非共享用户103为普通用户,工作在用户模式;系统用户101可以访问整个嵌入式系统的存储资源(包括普通用户的资源)。并且所有用户均可在程序空间进行跳转,实现用户切换,而普通用户访问的数据空间则由特权用户进行配置,因此一旦特权用户(系统用户101)被攻击,则整个嵌入式系统都将存在严重的安全隐患。
发明内容
本发明所要解决的技术问题是提供一种存储资源的保护方法及系统,以实现在不存在特权用户,即所有用户权限一致的情况下对嵌入式系统存储资源的保护。
4
本发明为了解决上述技术问题,公开了一种存储资源的保护方法,所述方法包括如下步骤
获取对存储资源发起的访问操作请求;
根据访问操作请求获取被访问的存储资源的属性信息;
判断当前发起访问操作请求的权限与被访问的存储资源的属性信息是否相匹配。进一步,所述根据访问操作请求获取被访问的存储资源的属性信息的方法包括获取该存储资源的地址信息、是否共享的信息和被访问的权限信息,并判断其是否为
共孚资源;
如果被访问的存储资源为共享资源,则判断当前发起访问操作请求的权限与该共享资源的被访问的权限是否相一致,如果一致,则允许访问,否则拒绝访问;
如果被访问的存储资源为非共享资源,则对访问操作请求进行解析以获取该访问操作请求的相关信息。进一步,所述对访问操作请求进行解析以获取该访问操作请求的相关信息的方法包括
对访问操作请求进行解析,判断该访问操作请求是指令操作请求还是数据操作请求;如果该访问操作请求是指令操作请求,则根据指令操作生成正向追踪指令路径表;
如果该访问操作请求是数据操作请求,则判断当前数据操作请求的数据用户和发起该操作的指令用户是否为同一用户,如果不是,则请求被终止,拒绝访问;如果是,则判断当前发起访问操作请求的用户权限是否与被访问的存储资源的被访问的权限相一致,如果一致,则允许访问,否则拒绝访问。进一步,所述的数据用户为发起该数据操作请求的地址所对应的用户,所述的指令用户为发起该指令操作请求的地址所对应的用户。本发明还公开了一种存储资源的保护系统,所述系统包括信息获取模块、判断模块和响应模块,其中,
所述信息获取模块用于获取对存储资源发起的访问操作请求信息和获取被访问的存储资源的属性信息;
所述判断模块用于判断当前发起访问操作请求的权限是否与被访问的存储资源的属性信息相匹配;
所述响应模块根据判断模块的判断结果作出相应的响应,如果判断模块的判断结果为匹配,则做出正常访问的响应,否则做出异常访问的响应。进一步,所述访问操作请求包括指令操作请求和数据操作请求。进一步,所述当前发起访问操作请求的权限为读访问或读写访问的权限。进一步,所述存储资源的属性信息包括该存储资源的地址信息、是否共享的信息和被访问的权限信息。进一步,所述存储资源的地址信息包括起始地址和结束地址。进一步,所述存储资源的被访问的权限信息为不可访问、可读访问或可读可写访问的权限。采用上述本发明技术方案的有益效果是本发明的目的在于提供一种存储资源的保护方法及系统,通过增加存储资源的保护机制,可以使每个用户独立安全地运行在芯片上,而各自的存储资源只有与其存在访问关系的用户才可以访问,从而实现在不存在特权用户即所有用户权限一致的情况下对嵌入式系统存储资源的保护。
图I为现有技术中多用户嵌入式系统运行图2为本发明实施例中存储资源的保护方法的流程图3为本发明实施例中存储资源的保护系统的逻辑结构图4为本发明实施例中存储资源保护机制的逻辑示意具体实施例方式
以下结合附图对本发明的原理和特征进行描述,所举实例只用于解释本发明,并非用于限定本发明的范围。本发明一实施例公开了一种存储资源的保护方法,图2为本发明实施例中存储资源的保护方法的流程图,如图2所示,所述方法包括如下步骤
步骤201 :获取对存储资源发起的访问操作请求;
本实施例中,所述对存储资源发起的访问操作请求包括指令操作请求和数据操作请求,其中,所述的指令操作是指告诉计算机实现某种控制或运算的代码;所述的数据操作是指对数据信息进行分类、归并、排序、存取、检索和输入、输出等标准操作。而所述的指令操作对用户不可见,唯有数据信息可见,而每次的数据操作,都必然是由某条数据操作的指令导致的,因此数据操作的用户和发起该操作的指令用户之间是否存在对应关系则显得颇为重要。例如,根据数据操作和指令操作的用户是否为同一用户,或者该被访问的存储资源是否为共享资源,并结合发起该访问操作请求的用户权限与被访问的存储资源的属性判断该访问操作请求是否合法。步骤202 :根据访问操作请求获取被访问的存储资源的属性信息;
该实施方式中,所述存储资源的属性信息包括存储资源的地址信息、是否共享的信息和被访问的权限信息。其中地址信息包括存储资源的起始地址和结束地址,并根据起始地址和结束地址对存储资源进行区域划分,而每一个起始地址和结束地址之间的区域对应一个用户;是否共享的信息为该存储资源是共享资源还是非共享资源;被访问的权限信息是指该存储资源为不可访问、可读访问或者是可读可写访问的权限。本实施例中,根据访问操作请求获取被访问的存储资源的属性信息,包括获取该被访问的存储资源的地址信息、是否共享的信息和被访问的权限信息,同时根据该被访问的存储资源的地址信息可以确定该被访问的存储资源的用户。步骤203 :判断当前发起访问操作请求的权限与被访问的存储资源的属性信息是否相匹配。其中,所述当前发起访问操作请求的权限为读访问或读写访问的权限。在本发明的一个具体实施例中,根据访问操作请求获取被访问的存储资源的属性信息,包括获取该存储资源的地址信息、是否共享的信息和被访问的权限信息,并根据该被访问的存储资源的地址信息可以确定该被访问的存储资源的用户;然后判断该被访问的存储资源是否为共享资源,如果被访问的存储资源为共享资源,则判断当前发起访问操作请求的权限与该共享资源的被访问的权限是否相一致,如果一致,则允许访问,否则拒绝访问。如果被访问的存储资源为非共享资源,则对访问操作请求进行解析,判断该访问操作请求是指令操作请求还是数据操作请求,如果该访问操作请求是指令操作请求,则根据指令操作生成正向追踪指令路径表。该实施方式中,所述正向追踪指令路径表包括指令地址信息、操作码信息和操作数信息,其中操作码信息进一步包括取指控制信号、译码控制信号和执行控制信号。本实施例中,可以根据指令地址信息查询存储资源的属性信息,以确定发起该指令操作的用户。如果该访问操作请求是数据操作请求,则判断当前数据操作请求的数据用户和发起该操作的指令用户是否为同一用户,如果不是,则请求被终止,拒绝访问;如果是,则判断当前发起访问操作请求的权限是否与被访问的存储资源的被访问的权限相一致,如果一致,则允许访问,否则拒绝访问。该实施方式中,所述的数据用户为发起该数据操作请求的地址所对应的用户,所述的指令用户为发起该指令操作请求的地址所对应的用户。需要说明的是,如果不冲突,本发明实施例以及实施例中的各个特征可以相互结合,均在本发明的保护范围之内。另外,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。本发明另一实施例公开了一种存储资源的保护系统,图3为本发明实施例中存储资源的保护系统的逻辑结构图,如图3所示,所述存储资源保护系统300包括信息获取模块301、判断模块302和响应模块303,其中,
所述信息获取模块301用于获取对存储资源发起的访问操作请求信息和获取被访问的存储资源的属性信息;
所述判断模块302用于判断当前发起访问操作请求的用户权限是否与被访问的存储资源的属性信息相匹配;
所述响应模块303根据判断模块302的判断结果作出相应的响应,如果判断模块的判断结果为匹配,则做出正常访问的响应,否则做出异常访问的响应。该实施方式中,所述访问操作请求包括指令操作请求和数据操作请求;所述当前发起访问操作请求的权限为读访问或读写访问的权限;所述存储资源的属性信息包括该存储资源的地址信息、是否共享的信息和被访问的权限信息;所述存储资源的地址信息包括起始地址和结束地址;所述存储资源的被访问的权限信息为不可访问、可读访问或可读可写访问的权限。图4为本发明实施例中存储资源保护机制的逻辑示意图,如图4所示,所述嵌入式系统包括有处理器401和存储资源,一个嵌入式系统的存储资源包括有程序空间401和数据空间404,其中程序空间401存储各用户的程序资源,数据空间404存储各用户的数据资源,如系统用户(System)的初始化程序存储在程序空间401,而数据资源则存储在数据空间404 ;共享用户(Share)的程序存储在程序空间401,而数据资源则存储在数据空间404 ;非共享用户(Userl N)的程序存储在程序空间401,而数据资源则存储在数据空间404。在本实施例中,各用户之间通过程序空间401跳转进行切换,但各用户之间的数据空间404的存储资源是不能够进行相互访问的,比如系统用户(System)只能访问其本身的数据存储资源,或共享资源,而不能对其他用户的资源进行访问;每个非共享用户也只能访问它本身的
7数据存储资源,或访问共享的资源,不能够对其他用户的资源进行访问;因此为了实现在不存在特权用户即所有用户权限一致的情况下对存储资源的安全保护,需要在嵌入式系统中加入存储保护系统300。由于用户的敏感信息都存储在数据空间404,因此对程序空间401的指令操作不需要保护,而只需要保护数据操作。但是每条数据操作,又必然是由某条指令引起的,因此需要准确对齐指令操作和数据操作的用户关系,以实现对数据操作的保护。在本实施例中,所述处理器402,用于执行指令进行数据操作,处理器402发起指令操作,根据处理器402发起的指令操作从程序空间401中取出相应的指令,指令经处理器402执行后产生相应的数据操作,同时指令操作经正向追踪指令路径后产生指令地址,存储保护单元403根据指令地址和由该指令发起的数据操作的数据地址对当前的操作请求进行判断,其中所述的判断原则及判断方法根据上述本发明阐述的存储资源保护方法的步骤进行,此处不再一一赘述。以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
权利要求
1.一种存储资源的保护方法,其特征在于,所述方法包括如下步骤 获取对存储资源发起的访问操作请求; 根据访问操作请求获取被访问的存储资源的属性信息; 判断当前发起访问操作请求的权限与被访问的存储资源的属性信息是否相匹配。
2.根据权利要求I所述的方法,其特征在于,所述根据访问操作请求获取被访问的存储资源的属性信息的方法包括 获取该存储资源的地址信息、是否共享的信息和被访问的权限信息,并判断其是否为共孚资源; 如果被访问的存储资源为共享资源,则判断当前发起访问操作请求的权限与该共享资源的被访问的权限是否相一致,如果一致,则允许访问,否则拒绝访问; 如果被访问的存储资源为非共享资源,则对访问操作请求进行解析以获取该访问操作请求的相关信息。
3.根据权利要求2所述的方法,其特征在于,所述对访问操作请求进行解析以获取该访问操作请求的相关信息的方法包括 对访问操作请求进行解析,判断该访问操作请求是指令操作请求还是数据操作请求; 如果该访问操作请求是指令操作请求,则根据指令操作生成正向追踪指令路径表; 如果该访问操作请求是数据操作请求,则判断当前数据操作请求的数据用户和发起该操作的指令用户是否为同一用户,如果不是,则请求被终止,拒绝访问;如果是,则判断当前发起访问操作请求的用户权限是否与被访问的存储资源的被访问的权限相一致,如果一致,则允许访问,否则拒绝访问。
4.根据权利要求3所述的方法,其特征在于,所述的数据用户为发起该数据操作请求的地址所对应的用户,所述的指令用户为发起该指令操作请求的地址所对应的用户。
5.一种存储资源的保护系统,其特征在于,所述系统包括信息获取模块、判断模块和响应模块,其中, 所述信息获取模块用于获取对存储资源发起的访问操作请求信息和获取被访问的存储资源的属性信息; 所述判断模块用于判断当前发起访问操作请求的权限是否与被访问的存储资源的属性信息相匹配; 所述响应模块根据判断模块的判断结果作出相应的响应,如果判断模块的判断结果为匹配,则做出正常访问的响应,否则做出异常访问的响应。
6.根据权利要求5所述的系统,其特征在于,所述访问操作请求包括指令操作请求和数据操作请求。
7.根据权利要求5所述的系统,其特征在于,所述当前发起访问操作请求的权限为读访问或读写访问的权限。
8.根据权利要求5所述的系统,其特征在于,所述存储资源的属性信息包括该存储资源的地址信息、是否共享的信息和被访问的权限信息。
9.根据权利要求8所述的系统,其特征在于,所述存储资源的地址信息包括起始地址和结束地址。
10.根据权利要求8所述的系统,其特征在于,所述存储资源的被访问的权限信息为不可访问、可读访问或可读可写访问的权限。·
全文摘要
本发明涉及一种存储资源的保护方法及系统,所述存储资源的保护方法包括如下步骤获取对存储资源发起的访问操作请求;根据访问操作请求获取被访问的存储资源的属性信息;判断当前发起访问操作请求的权限与被访问的存储资源的属性信息是否相匹配,如果匹配,则允许访问,否则拒绝访问。本发明的目的在于提供一种存储资源的保护方法及系统,通过增加存储资源的保护机制,可以使每个用户独立安全地运行在系统上,而各自的存储资源只有与其存在访问关系的用户才可以访问,从而实现在不存在特权用户即所有用户权限一致的情况下对嵌入式系统存储资源的保护。
文档编号G06F12/14GK102929802SQ20111022558
公开日2013年2月13日 申请日期2011年8月8日 优先权日2011年8月8日
发明者陈家锦, 王小盼 申请人:国民技术股份有限公司