[发明专利]控制流完整性实施的设备和方法在审
申请号: | 202010973287.1 | 申请日: | 2020-09-16 |
公开(公告)号: | CN112541178A | 公开(公告)日: | 2021-03-23 |
发明(设计)人: | 阿米·卡沙尼;戈帕拉克里希南·耶尔 | 申请(专利权)人: | 株式会社电装 |
主分类号: | G06F21/57 | 分类号: | G06F21/57 |
代理公司: | 北京集佳知识产权代理有限公司 11227 | 代理人: | 王萍;候艳超 |
地址: | 日本*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 控制 完整性 实施 设备 方法 | ||
涉及控制流完整性实施的设备和方法。一种计算机装置(110)包括存储器(116)。该计算机装置还包括至少一个处理器(114),所述至少一个处理器(114)被配置成执行过程并且针对该过程管理存储器。处理器还被配置成:执行与应用相关联的一个或更多个程序指令;到达针对所述一个或更多个程序指令的控制流转移;响应于未能满足目标控制流,展开与所述一个或更多个程序指令相关联的调用堆栈;识别违规函数调用;以及重写违规函数调用。经重写的函数调用包括存储器操作边界检查。
技术领域
本公开内容涉及与软件相关的控制流完整性。
背景技术
攻击者利用大多数漏洞改变应用的正常控制流,以使用所利用的应用的特权执行任意恶意活动。控制流完整性(control flow graph,CFI)是一种安全机制,其不允许对编译后的二进制代码的原始控制流图进行更改,从而使得执行这样的攻击显著地变得更加困难。
发明内容
根据一个实施方式,一种计算机装置包括存储器,该计算机装置还包括至少一个处理器,所述至少一个处理器被配置成执行过程并且针对该过程管理存储器。处理器还被配置成:执行与应用相关联的一个或更多个程序指令;到达(reach)针对所述一个或更多个程序指令的控制流转移;响应于未能满足目标控制流;展开(unwind)与所述一个或更多个程序指令相关联的调用堆栈;识别违规函数调用;以及重写违规函数调用。经重写的函数调用包括存储器操作边界检查(memory operation boundary check)。
根据第二实施方式,一种针对在处理器上执行的过程来管理存储器的方法,包括:执行与应用相关联的一个或更多个程序指令;到达针对所述一个或更多个程序指令的控制流转移;响应于未能满足目标控制流,展开与所述一个或更多个程序指令相关联的调用堆栈;识别违规函数调用;以及重写违规函数调用,其中,经重写的函数调用包括存储器操作边界检查。
根据第三实施方式,一种在交通工具中的计算机装置包括存储器和至少一个处理器,所述至少一个处理器被配置成执行过程并且针对该过程管理存储器。处理器被配置成执行与应用相关联的一个或更多个程序指令。处理器还被配置成:到达针对所述一个或更多个程序指令的控制流转移;响应于未能满足目标控制流,展开与所述一个或更多个程序指令相关联的调用堆栈;识别违规函数调用以及与违规函数调用相关联的存储器中的寄存器的数据大小限制;以及重写违规函数调用,经重写的函数调用包括存储器操作边界检查。
附图说明
图1是根据本公开内容的实现方式的用于检测分配给过程的存储器的一部分中的错误的示例计算机系统的图;
图2是根据本公开内容的实现方式的示例计算机装置的示意性框图;以及
图3是根据本公开内容的实现方式的控制流完整性(CFI)实施的示例方法的流程图300。
具体实施方式
本文描述了本公开内容的实施方式。然而,应当理解,所公开的实施方式仅仅是示例,并且其他实施方式可以采取各种不同的和可替选的形式。附图不一定按比例绘制;一些特征可以被放大或缩小以示出特定部件的细节。因此,本文所公开的具体结构性和功能性细节不应被解释为是限制性的,而仅仅是作为用于教示本领域技术人员以各种方式采用实施方式的代表性基础。如本领域的普通技术人员将理解的,参照任一附图说明和描述的各种特征可以与在一个或更多个其他附图中说明的特征组合以产生未明确说明或描述的实施方式。所说明的特征的组合针对典型应用提供代表性的实施方式。然而,针对特定的应用或实现可能需要与本公开内容的教示一致的特征的各种组合和修改。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于株式会社电装,未经株式会社电装许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010973287.1/2.html,转载请声明来源钻瓜专利网。