一种内存映射和数据管理方法、系统及存储介质技术方案

技术编号:31629006 阅读:18 留言:0更新日期:2021-12-29 19:07
本方案提供了一种内存映射和数据管理方法、系统及存储介质,该系统包括内存、控制模块、加密模块;内存划分为boot区域、system区域、share区域、user区域;boot区域,写入数据、读出数据只允许指定权限用户执行,且在读出数据时,读出的目的地址是system区域中的指定区域;system区域,内部建立converter层,在所述converter层内部通过hash算法管理读写数据的地址;share区域,作为user区域与system区域之间数据交互的临时映射区域;user区域,用于被os和用户态访问;控制模块,用于控制对所述内存中数据的访问判定;加密模块,用于进行验证码的生成。本方案在启动时和启动后,通过验证码等方式限制访问权限,并且boot阶段的非直接地址访问,有效降低了非法访问的可能性。有效降低了非法访问的可能性。有效降低了非法访问的可能性。

【技术实现步骤摘要】
一种内存映射和数据管理方法、系统及存储介质


[0001]本专利技术涉及计算机存储安全领域,尤其涉及一种内存映射和数据管理的方法、系统及存储介质。

技术介绍

[0002]在常规的操作系统和计算机体系架构中,内存的设计和使用,大部分都只关注其存储效率、数据访问的便利性、整体设计的紧凑性等,这些设计,往往使得整个内存数据几乎没有太多的封装管理或者有效的访问管理,或者仅仅存在有限的针对特定编译的封装,而在系统的实际运行之中,尤其在系统的启动阶段,数据的访问几乎是不收限制和无保护的状态,内存中的数据几乎可以不受任何检查地随意进行访问。
[0003]而内存中的数据存储区域,也多是基于访问便利性和内存的紧凑性,对于数据访问中的不同类型数据的访问安全性考虑并不多。如果攻击者利用用户态或启动阶段等的数据传输,就极容易访问内存中的其他数据区域从而实现攻击,其中危险的攻击甚至可以实现数据的越权访问和篡改,例如在系统启动时和启动后,对于BOOT参数的访问和修改等,又由于现有的内存架构和系统架构的设计和检查机制,很少能及时发现该类的攻击。

技术实现思路

[0004]针对现有技术的不足,本专利技术提出一种内存映射和数据管理方法、系统及装置。具体而言,本专利技术提供了以下的技术方案:
[0005]一方面,本专利技术提供了一种内存映射和数据管理方法,该方法包括:
[0006]S1、基于使用场景区别,将内存划分为多个区域,所述多个区域包括boot区域、system区域、share区域、user区域;
[0007]S2、对所述多个区域设置访问控制属性;
[0008]所述boot区域,写入数据、读出数据只允许指定权限用户执行,且在读出数据时,读出的目的地址是system区域中的指定区域;
[0009]所述system区域,内部建立converter层,在所述converter层内部通过hash算法管理读写数据的地址;
[0010]所述share区域,作为user区域与system区域之间数据交互的临时映射区域;
[0011]所述user区域,用于被os和用户态访问;
[0012]S3、基于请求,执行对应区域的数据访问及控制。
[0013]优选的,所述S2中,所述boot区域中,指定权限的设置包括:
[0014]能够访问boot image验证码,所述boot image验证码作为方位boot image的唯一访问钥匙;boot image验证码的生成,优选的采用md5加密方式产生。
[0015]在系统启动阶段,通过验证码验证后,拥有直接读和直接写的权限;在系统启动后,通过验证码验证后,拥有贡献读和共享写的权限。
[0016]优选的,所述S2中,所述boot区域中,修改boot参数时,首先确定待修改参数名称,
基于待修改参数名称查找对应的保存地址,并对待修改参数值进行有效性检查;
[0017]其次,有效性检查通过后,把待修改参数值写入到备份区,当全部待修改参数值修改完毕后,将当前参数区设置为新备份区,将备份区设置为有效参数区,执行重启。
[0018]优选的,当重启失败时,超时后,将新备份区与有效参数区互换,并提示重启失败原因。
[0019]优选的,所述boot区域中,指定读出的目的地址是system区域中的指定区域,通过以下方式实现:
[0020]通过boot访问验证码实现目的地址的指定;或者
[0021]将指定区域的对外接口,设置为保存变量的名字,当进行读出时,将该保存变量的名字读出至share区域,再通过控制台显示,以保证目的地址为指定区域。
[0022]优选的,所述converter层的建立方式为:
[0023]建立地址覆盖整个所述内存的hash表,所述hash表保存在所述system区域的起始位置,并且在所述内存初始化后建立;
[0024]所述hash表建立之后,只保留读权限,取消写权限。
[0025]优选的,所述share区域中,设置user flag位和system flag位;
[0026]当system区域中数据发送user区域时,将user区域的目标地址和待发送数据写入share区域,并把user flag位置1;当线程发现user flag位置1时,将share区域中待发送数据写入到user区域的目标地址,并将user flag位清0;
[0027]当user区域中数据发送system区域时,将system区域的目标地址和待发送数据写入share区域,并把system flag位置1;当线程发现system flag位置1时,查询share区域中的地址是否在可写范围,以及待发送数据是否有效,若两者都是,则将share区域中待发送数据写入到system区域的目标地址,并将system flag位清0。
[0028]另一方面,本专利技术还提供了一种内存映射和数据管理系统,该系统包括内存、控制模块、加密模块;
[0029]所述内存划分为多个区域,所述多个区域包括boot区域、system区域、share区域、user区域;
[0030]所述boot区域,写入数据、读出数据只允许指定权限用户执行,且在读出数据时,读出的目的地址是system区域中的指定区域;
[0031]所述system区域,内部建立converter层,在所述converter层内部通过hash算法管理读写数据的地址;
[0032]所述share区域,作为user区域与system区域之间数据交互的临时映射区域;
[0033]所述user区域,用于被os和用户态访问;
[0034]所述控制模块,用于控制对所述内存中数据的访问判定;
[0035]加密模块,用于进行验证码的生成。该验证码的生成,可以采用现有的一种加密方式生成,也可以根据安全加密的需要,通过多种加密算法的结合来实现。
[0036]优选的,所述boot区域中,指定权限的设置包括:
[0037]能够访问boot image验证码,所述boot image验证码作为方位boot image的唯一访问钥匙;所述boot image验证码由加密模块生成;
[0038]所述boot区域被配置为:在系统启动阶段,通过验证码验证后,拥有直接读和直接
写的权限;在系统启动后,通过验证码验证后,拥有共享读和共享写的权限。
[0039]优选的,所述boot区域中修改boot参数时,由控制模块确定待修改参数名称,基于待修改参数名称查找对应的保存地址,并对待修改参数值进行有效性检查;
[0040]有效性检查通过后,所述控制模块发送写入指令,将待修改参数值写入到boot区域的备份区,当全部待修改参数值修改完毕后,将当前参数区设置为新备份区,将备份区设置为有效参数区;此处通过将备份区与参数区的功能对调,可以有效减少存储区域的浪费,并且对更便捷地实现数据的备份和恢复;
...

【技术保护点】

【技术特征摘要】
1.一种内存映射和数据管理方法,其特征在于,所述方法包括:S1、基于使用场景区别,将内存划分为多个区域,所述多个区域包括boot区域、system区域、share区域、user区域;S2、对所述多个区域设置访问控制属性;所述boot区域,写入数据、读出数据只允许指定权限用户执行,且在读出数据时,读出的目的地址是system区域中的指定区域;所述system区域,内部建立converter层,在所述converter层内部通过hash算法管理读写数据的地址;所述share区域,作为user区域与system区域之间数据交互的临时映射区域;所述user区域,用于被os和用户态访问;S3、基于请求,执行对应区域的数据访问及控制。2.根据权利要求1所述的方法,其特征在于,所述S2中,所述boot区域中,指定权限的设置包括:能够访问boot image验证码,所述boot image验证码作为方位boot image的唯一访问钥匙;在系统启动阶段,通过验证码验证后,拥有直接读和直接写的权限;在系统启动后,通过验证码验证后,拥有贡献读和共享写的权限。3.根据权利要求1所述的方法,其特征在于,所述S2中,所述boot区域中,修改boot参数时,首先确定待修改参数名称,基于待修改参数名称查找对应的保存地址,并对待修改参数值进行有效性检查;其次,有效性检查通过后,把待修改参数值写入到备份区,当全部待修改参数值修改完毕后,将当前参数区设置为新备份区,将备份区设置为有效参数区,执行重启。4.根据权利要求3所述的方法,其特征在于,当重启失败时,超时后,将新备份区与有效参数区互换,并提示重启失败原因。5.根据权利要求1所述的方法,其特征在于,所述boot区域中,指定读出的目的地址是system区域中的指定区域,通过以下方式实现:通过boot访问验证码实现目的地址的指定;或者将指定区域的对外接口,设置为保存变量的名字,当进行读出时,将该保存变量的名字读出至share区域,再通过控制台显示,以保证目的地址为指定区域。6.根据权利要求1所述的方法,其特征在于,所述converter层的建立方式为:建立地址覆盖整个所述内存的hash表,所述hash表保存在所述system区域的起始位置,并且在所述内存初始化后建立;所述hash表建立之后,只保留读权限,取消写权...

【专利技术属性】
技术研发人员:宋亚亮王飞姜志颖
申请(专利权)人:苏州睿芯集成电路科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1