【技术实现步骤摘要】
一种基于用户级页表的进程内数据隔离保护方法和系统
本专利技术涉及计算机领域,并特别涉及一种基于用户级页表的进程内数据隔离保护方法和系统。
技术介绍
传统的计算机系统,对于进程内部的数据访问,没有提供有效的保护手段。一般情况下,处理器硬件允许进程内的代码任意访问进程内的数据空间,这就为缓冲区溢出等攻击方法提供了潜在的攻击途径。攻击程序可以通过进程内局部的代码漏洞,获得整个进程地址空间的访问权限,进一步控制整个进程的数据和代码执行。很多消费电子设备都使用扩展的安全模块来确保数据安全,目前常见的方式有:1.外部挂接硬件安全模块。数据的处理交由外部的安全模块实现,这些模块能够保护自己的资源和密钥等数据的安全,如SIM卡、各种智能卡或连接到外部的硬件加解密模块等,但其同主芯片的通信线路暴露在外部,容易被监听破解。另外,通信的速率比较低。2.内部集成硬件安全模块。将外部安全模块的功能集成到芯片内,因此一个芯片上至少有两个核,一个普通核和一个安全核。优点是核与核之间的通信在芯片内部实现,不再暴露在外面。缺点是核之间的通信速度仍然较低,而且单独的安全核性能有限,还会占用SoC面积,成本较高。3.ARMTrustzone、IntelSGX等安全子系统。Trustzone安全技术自ARMv6版本开始引入ARM架构规范。在概念上将SoC的硬件和软件资源划分为安全(SecureWorld)和非安全(NormalWorld)两个世界,所有需要保密的操作在安全世界执行(如指纹识别、密码处理、数据加解密、安全认证等),其余操作在非安全世界执行(如用户操作系统、各种应用程序等),安全世界 ...
【技术保护点】
1.一种基于用户级页表的进程内数据隔离保护方法,其特征在于,包括:将用户进程的虚拟空间划分出一部分由用户进程自行管理,作为用户自管理区域,将该用户自管理区域划分为用户级页表区域和用户自管理数据区域,该用户级页表区域用以存放用户级页表,该用户自管理数据区域用以存放受保护的敏感数据,该敏感数据仅由该用户级页表进行管理,管理内容包括修改虚实地址映射、设定读写执行权限、标记读写的访问状态。
【技术特征摘要】
1.一种基于用户级页表的进程内数据隔离保护方法,其特征在于,包括:将用户进程的虚拟空间划分出一部分由用户进程自行管理,作为用户自管理区域,将该用户自管理区域划分为用户级页表区域和用户自管理数据区域,该用户级页表区域用以存放用户级页表,该用户自管理数据区域用以存放受保护的敏感数据,该敏感数据仅由该用户级页表进行管理,管理内容包括修改虚实地址映射、设定读写执行权限、标记读写的访问状态。2.如权利要求1所述的基于用户级页表的进程内数据隔离保护方法,其特征在于,划分用户级页表和内核页表,具体的方法是,在该用户进程的访存指令触发硬件查找页表项时,判断该访存指令请求的虚拟地址是否属于用户自管理区域的界限内,若是,则选择用户级页表的根目录地址,在用户级页表区域查找页表项;否则选择内核页表的根目录地址,在内核区域查找页表项;处理器包括虚地址界限寄存器,用于存储该用户自管理区域的上界和下界;处理器还包括地址寄存器,用于存储该用户级页表的根目录地址。3.如权利要求1所述的基于用户级页表的进程内数据隔离保护方法,其特征在于,该用户级页表内容由该用户进程自行管理,该用户进程执行过程中自行申请和分配该用户自管理区域的虚拟页面,并为该用户自管理区域的虚拟页面与物理页面建立映射关系,其中该物理页面由该用户进程向内核申请所得。4.如权利要求1和3所述的基于用户级页表的进程内数据隔离保护方法,其特征在于,通过以下步骤限制该用户级页表映射物理页面的范围:在处理器写指令执行时,若该写指令的目的地址属于用户自管理区域的用户级页表区域,则该写指令的写入数据即为用户级页表区域的页表项,从该页表项中获取该目的地址映射的物理页面的物理页号,并判断该物理页号是否合法,合法是指由内核配置的属于用户级页表映射的物理页面范围,若不合法则产生中断,阻止该写指令将页表项写入用户级页表区域,否则允许该写指令将页表项写入用户级页表区域;通过以下步骤设定该用户级页表映射的物理页面范围:由内核建立一种数据结构,该数据结构中的数据元素为映射的物理页面地址,或映射的物理页面的物理页号,或该物理页号对应的指示位,对写该用户级页表时物理页号是否合法的判断,由查找该数据元素实现。5.如权利要求1所述的基于用户级页表的进程内数据隔离保护方法,其特征在于,限定对该用户级页表进行访问的程序对象,以保护该用户级页表。6.如权利要求1或3所述的基于用户级页表的进程内数据隔离保护方法,其特征在于,该用户自管理区域的虚拟页面与物理页面映射变换之前,先初始化一个自映射的多级页表,并分别在各级页表上建立对应的页表项指向各自页表的首地址,以完成该用户级页表的初始化过程。7.如权利要求1或3所述的基于用户级页表的进程内数据隔离保护方法,其特征在于,在该用户进程执行访存指令触发该用户自管理区域的虚拟页面与物理页面映射变换过程中,若发生中断,则执行以下步骤:步骤201,处理器在写回阶段检测中断,执行中断处理;步骤202,判断中断是否需要用户进程自行处理,若是,执行步骤203,否则执行步骤206;步骤203,用户进程自行处理该中断,处理器提供一组用户专用寄存器来保存中断指令的程序计数器、中断的原因和访存的地址;步...
【专利技术属性】
技术研发人员:赵阳洋,陈明宇,朱晓静,洪宗会,郭云格,
申请(专利权)人:中国科学院计算技术研究所,
类型:发明
国别省市:北京,11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。