一种处理器内部寄存器组异常行为实时检测方法及系统技术方案

技术编号:28735288 阅读:29 留言:0更新日期:2021-06-06 11:40
本发明专利技术公开了一种处理器内部寄存器组异常行为实时检测方法,包括以下步骤:S1、建指令集测试使用的处理器环境;S2、遍历处理器所有的公开指令集;S3、分析指令集在译码、执行、回写过程中的执行情况及处理器的内核结构,并获得相关信号;S4、获得寄存器组的状态;S5、获取每一条指令的特征信息;S6、对取指令操作后的指令流进行修正处理;S7、对寄存器组状态进行简化处理;S8、进行第一次检测与弱预警;S9、对寄存器组异常行为进行二次检测与强预警。本发明专利技术只需采样处理器内核的相关信号,就能在两个时钟周期后给出寄存器组状态的检测结果,在一定程度上保证了处理器硬件层面的可靠性与安全。全。全。

【技术实现步骤摘要】
一种处理器内部寄存器组异常行为实时检测方法及系统


[0001]本专利技术属于本专利技术属于计算机和集成电路领域,特别涉及一种处理器内部寄存器组异常行为实时检测方法及系统。

技术介绍

[0002]硬件木马指的是:在芯片或者电子系统中故意植入的特殊模块或者设计者无意留下的缺陷模块,在特殊条件触法下,该模块能够被攻击者利用而实现具有破坏性的功能。插入的硬件木马可能会导致泄露信息,改变电路功能,甚至破坏电路。处理器的通用寄存器组是处理器运行中的所有中间数据的载体,一旦寄存器组遭受了恶意攻击,这对于处理器将会是毁灭性的打击。这些攻击包括:硬件木马、隐藏后门和设计漏洞。
[0003]现有方法主要包括:
[0004](1)检测技术:“L.Liu,et al.:A Hardware Security Enhanced Server CPU with Cores under Runtime Surveillance by an In

Package Dynamically Reconfigurable Processor,HCS Papers(2019)1(DOI:10.1109/HOTCHIPS.2019.8875682).”(基于动态可重构计算处理器实时监控的内核硬件安全增强服务器CPU芯片),通过动态可重构计算处理器采集CPU相关信息,并与参考模型进行对比,从而实现对CPU行为的检测。主要缺点是:1)资源开销很大;2)无法实时检测;3)定期采集数据进行分析,存在漏检风险;
[0005](2)主动安全处理器(ASP):“D.Meng,et al.:Built

in Security Computer:Deploying Security

First Architecture Using Active Security Processor,IEEE Transactions on Computers 69(2020)1571(DOI:10.1109/TC.2020.3011748).”。ASP通过不对称的地址空间与CPU进行物理隔离,ASP与CPU都可以在其各自的操作系统和应用程序中独立运行自己的内存空间。ASP具有整个系统的最高权限(超级根)。主要缺点是:1)对于硬件木马的恶意攻击(如:篡改通用寄存器的值),按照该论文的主动检测恶意行为的方法是无法检测与防御硬件木马的攻击的;2)成本高;3)无法实时检测;4)定期采集数据进行机器学习预测与分析,存在漏检风险。

技术实现思路

[0006]本专利技术的目的在于克服现有技术处理器寄存器组易遭受到硬件木马、处理器设计漏洞、隐藏后门的恶意攻击的问题,提供一种只需采样处理器内核的相关信号,就能在两个时钟周期后给出寄存器组状态的检测结果的处理器内部寄存器组异常行为实时检测方法,并提供一种对应的监测系统。
[0007]本专利技术的目的是通过以下技术方案来实现的:一种处理器内部寄存器组异常行为实时检测方法,包括以下步骤:
[0008]S1、搭建指令集测试使用的处理器环境;
[0009]S2、遍历处理器所有的公开指令集;
[0010]S3、分析指令集在译码、执行、回写过程中的执行情况及处理器的内核结构,并获得相关信号;
[0011]S4、获取处理器寄存器组模块的32个通用寄存器状态与其端口信号,并通过实时处理获得寄存器组的状态;
[0012]S5、根据指令集在处理器的遍历测试,获取每一条指令的特征信息;
[0013]S6、根据步骤S3获取的相关信号、步骤S4获取的寄存器组状态以及步骤S5获取的指令特征信息,对取指令操作后的指令流进行修正处理,使指令流的每一条指令与步骤S4实时获取的寄存器组状态匹配到一个时钟周期;
[0014]S7、根据修正后的指令流以及步骤S4获取的寄存器组状态和处理器寄存器组模块的写端口信号对步骤S4实时获取的寄存器组状态进行简化处理,使其用2Bit信号来表示;
[0015]S8、判决寄存器组状态是否异常:根据步骤S6修正后的指令流与步骤S5获取的指令特征信息,通过逻辑组合生成修正后的指令流中的指令对应的唯一的寄存器组状态值(2Bit表示),再将此寄存器组状态值与步骤S7获得的寄存器组状态值进行比较,当两者状态值不一致时,产生第一次预警,并执行步骤S9,若一致则结束操作;
[0016]S9、二次判决寄存器组状态是否异常:将步骤S4实时获取的寄存器组模块的写通道信号、指令信息和32个通用寄存器的值进行比较,若三者信息一致则结束操作,否则产生第二次预警。
[0017]进一步地,所述步骤S3中的相关信号具体包括:1)处理器每个流水阶段的valid信号;2)流水冲突与数据冲突指示信号。
[0018]进一步地,所述步骤S4具体包括以下分步骤:
[0019]S41、实时采样寄存器组的32个通用寄存器的值;
[0020]S42、将S41采集到的值通过时序逻辑延迟一个时钟周期,作为通用寄存器新的值;
[0021]S43、将步骤S41和步骤S42得到的值进行比较,若同一寄存器的两个值不同,则将该寄存器状态信号记为1,反之记为0,得到32Bit的寄存器组状态信号;
[0022]S44、实时采样处理器寄存器组模块的写通道信号,并使用写通道信号对步骤S43得到的寄存器组状态信号进行修正。
[0023]进一步地,所述步骤S5获得指令的特征信息包括:1)指令的生命周期;2)指令类型,记录指令是否为多周期指令,对于非定长周期指令按照其出现的最小周期数进行记录;3)指令对寄存器组的操作类型。
[0024]进一步地,步骤S6中对取指令操作后的指令流进行修正处理的目标为:还原处理器在运行过程中真正的指令执行顺序。
[0025]进一步地,所述步骤S7中信号简化表达指令对应的寄存器组状态的具体包括以下内容:
[0026]1)2

b00:指令没有对目标寄存器进行写操作,且其它寄存器没有被写入值;
[0027]2)2

b01:指令没有对目标寄存器进行写操作,且其它寄存器被写入了值;
[0028]3)2

b10:指令对目标寄存器进行写操作,且其它寄存器没有被写入值;
[0029]4)2

b11:指令对目标寄存器进行写操作,且其它寄存器被写入了值。
[0030]进一步地,所述步骤S9中写通道信号、指令信息以及寄存器组值的信息不一致的具体表现为:
[0031]1)指令信息指示对寄存器组进行写操作,而写通道的写使能未拉高;
[0032]2)指令信息指示的目标寄存器与写通道的地址信号的值不一致;
[0033]3)目标寄存器的值与写通道的数据信号的值不一致。
[0034]本专利技术的另一个目的是提供一种处理器内部寄存器组的异常行为的实时检测方法,包括以下模块:
[0035]指令执行周本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种处理器内部寄存器组异常行为实时检测方法,其特征在于,包括以下步骤:S1、搭建指令集测试使用的处理器环境;S2、遍历处理器所有的公开指令集;S3、分析指令集在译码、执行、回写过程中的执行情况及处理器的内核结构,并获得相关信号;S4、获取处理器寄存器组模块的32个通用寄存器状态与其端口信号,并通过实时处理获得寄存器组的状态;S5、根据指令集在处理器的遍历测试,获取每一条指令的特征信息;S6、根据步骤S3获取的相关信号、步骤S4获取的寄存器组状态以及步骤S5获取的指令特征信息,对取指令操作后的指令流进行修正处理,使指令流的每一条指令与步骤S4实时获取的寄存器组状态匹配到一个时钟周期;S7、根据修正后的指令流以及步骤S4获取的寄存器组状态和处理器寄存器组模块的写端口信号对步骤S4实时获取的寄存器组状态进行简化处理,使其用2Bit信号来表示;S8、判决寄存器组状态是否异常:根据步骤S6修正后的指令流与步骤S5获取的指令特征信息,通过逻辑组合生成修正后的指令流中的指令对应的唯一的寄存器组状态值(2Bit表示),再将此寄存器组状态值与步骤S7获得的寄存器组状态值进行比较,当两者状态值不一致时,产生第一次预警,并执行步骤S9,若一致则结束操作;S9、二次判决寄存器组状态是否异常:将步骤S4实时获取的寄存器组模块的写通道信号、指令信息和32个通用寄存器的值进行比较,若三者信息一致则结束操作,否则产生第二次预警。2.根据权利要求1所述的一种处理器内部寄存器组的异常行为的实时检测方法,其特征在于,所述步骤S3中的相关信号具体包括:1)处理器每个流水阶段的valid信号;2)流水冲突与数据冲突指示信号。3.根据权利要求1所述的一种处理器内部寄存器组的异常行为的实时检测方法,其特征在于,所述步骤S4具体包括以下分步骤:S41、实时采样寄存器组的32个通用寄存器的值;S42、将S41采集到的值通过时序逻辑延迟一个时钟周期,作为通用寄存器新的值;S43、将步骤S41和步骤S42得到的值进行比较,若同一寄存器的两个值不同,则将该寄存器状态信号记为1,反之记为0,得到32Bit的寄存器组状态信号;S44、实时采样处理器寄存器组模块的写通道信号,并使用写通道信号对步骤S43得到的寄存器组状态信号进行修正。4.根据权利要求1所述的一种处理器内部寄存器组的异常行为的实时检测方法,其特征在于,所述步骤S5获得指令的特征信息包括:1)指令的生命周期;2)指令类型,记录指令是否为多周期指令,对于非定长周期指令按照其出现的最小周期数进行记录;3)指令对寄存器组的操作类型。5.根据权利要求1所...

【专利技术属性】
技术研发人员:李磊袁世伟周婉婷
申请(专利权)人:电子科技大学
类型:发明
国别省市:

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

1