【技术实现步骤摘要】
程序流水线的控制方法、处理装置和存储介质
[0001]本公开的实施例涉及一种程序流水线的控制方法、处理装置和存储介质。
技术介绍
[0002]内存安全是计算机主机安全的关键方向,而控制流完整性保护又是维护内存安全、阻断黑客攻击的重要手段。近年来各个硬件处理器厂商均推出自己的硬件扩展和软件配套方案,对控制流完整性保护提供了不同程度的支持,这些方案包括Intel的CET(Control
‑
flow Enforcement Technology)、ARM的PACBTI(Pointer Authentication Code&Branch Target Identification)扩展等。但是,在这些商业化的系统方案中,需要综合考虑性能、兼容性和安全性等因素,对安全特性做出取舍,从而在各自系统架构的设计空间中选取最优点。因此,各个厂商的安全方案中虽然各有自己的优势,但也在一定程度上暴露出了这些方案的劣势。
[0003]Intel CET具有以下缺点:(1)标记类型有限,仅仅支持一种落地点标 ...
【技术保护点】
【技术特征摘要】
1.一种程序流水线的控制方法,包括:接收第一指令;获取所述第一指令对应的第一内存标记信息,其中,所述第一内存标记信息包括第一内存标记,所述第一内存标记对应于存储所述第一指令的第一存储地址在内存空间中的第一存储位置;获取所述目标地址对应的第二内存标记信息,其中,所述第二内存标记信息包括第二内存标记,所述第二内存标记对应于所述第一指令的目标地址在所述内存空间中的第二存储位置,所述第二存储位置存储有所述程序流水线中的返回地址或跳转目标指令;基于所述第一内存标记信息和所述第二内存标记信息,确定所述第一内存标记和所述第二内存标记是否匹配;响应于所述第一内存标记和所述第二内存标记匹配,允许所述第一指令继续执行,或者,响应于所述第一内存标记和所述第二内存标记不匹配,进入异常处理。2.根据权利要求1所述的控制方法,其中,基于所述第一内存标记信息和所述第二内存标记信息,确定所述第一内存标记和所述第二内存标记是否匹配,包括:从所述第一内存标记信息中提取所述第一内存标记以及从所述第二内存标记信息中提取所述第二内存标记;比较所述第一内存标记和所述第二内存标记,以确定所述第一内存标记和所述第二内存标记是否匹配。3.根据权利要求2所述的控制方法,其中,从所述第一内存标记信息中提取所述第一内存标记以及从所述第二内存标记信息中提取所述第二内存标记,包括:获取所述第一内存标记或所述第二内存标记对应的标记宽度信息,根据所述标记宽度信息,从所述第一内存标记信息中提取部分数据位以得到所述第一内存标记,以及从所述第二内存标记信息中提取部分数据位以得到所述第二内存标记。4.根据权利要求3所述的控制方法,其中,获取所述第一内存标记或所述第二内存标记对应的标记宽度信息,包括:获取所述第一内存标记信息或所述第二内存标记信息对应的标记存储位置;根据所述标记存储位置获取所述标记宽度信息。5.根据权利要求3所述的控制方法,其中,获取所述第一内存标记或所述第二内存标记对应的标记宽度信息,包括:从所述目标地址本身中的冗余位获取所述标记宽度信息。6.根据权利要求3所述的控制方法,其中,获取所述第一内存标记或所述第二内存标记对应的标记宽度信息,包括:从所述内存空间中与所述第一存储地址或所述目标地址相邻的存储地址获取所述标记宽度信息。7.根据权利要求3所述的控制方法,其中,获取所述第一内存标记或所述第二内存标记对应的标记宽度信息,包括:从第一寄存器中获取所述标记宽度信息,其中,所述标记宽度信息由系统设置于所述第一寄存器中。8.根据权利要求4
‑
7任一所述的控制方法,其中,在获取所述第一内存标记或所述第二
内存标记对应的标记宽度信息的同时获取所述内存空间中的标记内存粒度信息。9.根据权利要求2
‑
7任一所述的控制方法,其中,比较所述第一内存标记和所...
【专利技术属性】
技术研发人员:马乐乐,
申请(专利权)人:北京奕斯伟计算技术股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。