[发明专利]提供具有基于能力的安全性的函数级隔离的技术在审
申请号: | 201910456888.2 | 申请日: | 2019-05-29 |
公开(公告)号: | CN110659101A | 公开(公告)日: | 2020-01-07 |
发明(设计)人: | V.苏霍姆利诺夫;K.多希;M.勒梅;D.巴波金;A.梅利克-阿达姆延 | 申请(专利权)人: | 英特尔公司 |
主分类号: | G06F9/455 | 分类号: | G06F9/455;G06F21/53;G06F21/62 |
代理公司: | 72001 中国专利代理(香港)有限公司 | 代理人: | 姜冰;杨美灵 |
地址: | 美国加利*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 地址空间 操作模式 特权 关联 调用指令 可访问 堆栈 调用 准许 检测 访问 | ||
1.一种用于实现安全函数调用的计算机实现的方法,包括:
检测与地址空间关联的第一函数,所述第一函数发起对所述地址空间中的第二函数的调用指令,所述第一函数在去特权操作模式中调用所述第二函数;
为所述第二函数定义对于所述地址空间的段的可访问地址范围,每段在所述地址空间中具有不同的地址范围,其中准许所述第二函数在所述去特权操作模式中访问;
切换到与所述第二地址空间和所述第二函数关联的堆栈;以及
在所述去特权操作模式中发起所述第二函数的执行。
2.如权利要求1所述的计算机实现的方法,包括:
检测所述第二函数执行的完成;
将控制返回给所述第一函数,以便基于返回地址在所述调用指令之后的下一指令的执行;
切换到与所述第一函数关联的所述地址空间中的堆栈;以及
从所述去特权模式操作切换到正常模式操作。
3.如权利要求2所述的计算机实现的方法,包括:基于放置在与所述第二函数关联的第二堆栈上的特殊值来确定所述返回地址以将控制返回给所述第一函数。
4.如权利要求1所述的计算机实现的方法,包括:发起异常处理程序以处理由所述第二函数在处于所述去特权操作模式中时发起的系统调用指令,所述系统调用指令包括SYSCALL指令、VMCALL指令、CALL FAR指令、JMP FAR、载荷段寄存器指令和一组操作中的至少一个来操纵定义为有特权的系统参数。
5.如权利要求4所述的计算机实现的方法,包括:
检测由所述第二函数对所述系统调用指令之一的调用;
引起异常;以及
执行如下至少一项:将控制返回给所述第一函数以便执行在所述调用指令之后的下一指令;以及由异常处理程序引起异常。
6.如权利要求1所述的计算机实现的方法,包括:确定在所述第二函数的调用地址中定义的保护密钥,以防止所述第二函数执行如下的一个或多个操作:修改在所述地址空间的准许部分之外的位;以及跳到所述第二函数的所述第二地址空间之外。
7.如权利要求1所述的计算机实现的方法,包括:
调用时钟计数器以在处于所述去特权操作模式中时针对值向超时值进行计数;以及
当所述值等于所述超时值时引起异常。
8.如权利要求1所述的计算机实现的方法,包括:利用段寄存器来存储所述段的基址值,其中每个基址值是段的可访问范围的下限。
9.如权利要求1所述的计算机实现的方法,包括:
将第一基址值存储在扩展段(ES)寄存器中,以设置数据段的访问范围的下限;
将第二基址值存储在FS寄存器中,以设置代码段的第二地址范围的第二下限;以及
将第三基址值存储在GS寄存器中,以设置堆栈段的第三地址的第三下限。
10.一种包含代码的机器可读介质,所述代码当被执行时使机器执行如权利要求1至9中任一项所述的方法。
11.一种实现安全函数调用的设备,包括
存储器,所述存储器用于存储指令;以及
处理电路,所述处理电路与所述存储器耦合,所述处理电路可操作以执行所述指令,所述指令当被执行时,使处理电路能够:
检测与地址空间关联的第一函数,所述第一函数发起对所述地址空间中的第二函数的调用指令,所述第一函数在去特权操作模式中调用所述第二函数;
为所述第二函数定义对于所述地址空间的段的可访问地址范围,每段在所述地址空间中具有不同的地址范围,其中准许所述第二函数在所述去特权操作模式中访问;
切换到与所述第二地址空间和所述第二函数关联的堆栈;以及
在所述去特权操作模式中发起所述第二函数的执行。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于英特尔公司,未经英特尔公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910456888.2/1.html,转载请声明来源钻瓜专利网。
- 上一篇:容器管理方法、装置和设备
- 下一篇:可扩展的分组处理