一种新型安全机制的嵌入式模块的制作方法

文档序号:8543964阅读:494来源:国知局
一种新型安全机制的嵌入式模块的制作方法
【技术领域】
[0001]本发明涉及一种新型安全机制的嵌入式模块,它是一种硬件辅助的嵌入式系统安全模块,它利用纯硬件支持的方法将程序执行时产生的信息同预先通过离线的程序分析得到的信息进行比较,防止对程序代码的恶意攻击行为发生。属于嵌入式系统安全技术领域。
【背景技术】
[0002]随着电子科学与计算机技术的发展,越来越多的嵌入式设备进入了人们的生活中,逐渐在诸多领域发挥重要的系统自动控制及数据存储的作用。同时越来越多的应用及更为方便的网络接入,使嵌入式平台面临着越来越多的安全挑战。嵌入式系统在运算能力、内存、能量等方面有着严格的资源约束限制。采用通用计算机上的病毒扫描和防入侵软件来防御安全攻击,将会带来性能的降低和功耗的增加。因此,嵌入式系统的安全问题比通用系统的安全问题更具有挑战性。
[0003]安全攻击是以植入恶意数据或代码,破坏程序的正常执行为最终目的。程序代码决定了程序的执行行为,对保证程序的安全执行起到决定性的作用。但是,保护应用程序数据同样也同样非常重要。在SPEC测试基准程序中函数调用和返回构成了极少部分的指令比例,分支指令占少部分,而load/store (装载/存储)指令超过了它们两者之和。假定每一个控制指令都代表一个恶意控制转移的攻击点,那么装载和存储操作对数据值的破坏,也将会对程序的正常执行起到决定性作用。
[0004]完整性检测可以保证信息在存储和传输的过程中没有遭受非授权方式的篡改或破坏。有效的数据和代码完整性保护方案包括检测非法篡改和防止重放攻击。完整性涉及两个过程,一个在发送实体上,一个在接收实体上。发送实体给数据单元附加上一个量,这个量是该数据的函数,可以是象分组校验码那样的补充信息,也可以是一个密码校验值,而且它本身也可以被加密。接收实体产生一个相应的量,并把它与接收到的那个量进行比较以决定该数据是否在转送中被篡改过。
[0005]攻击行为反应到硬件层,就是对二进制数据和代码的执行错误或破坏,因此监控数据和代码的完整性,可以有效的防止对数据、代码的恶意植入和破坏,保证程序的正常执行。
[0006]而应用程序在编译链接之后,其存放位置和运行位置将被映射到内存中不同的段。这些段都有各自的读、写以及可执行等属性,很多安全攻击就是违反了这些属性,如对代码段、只读数据段进行了非法的写操作,执行缓冲区溢出植入到堆栈数据段中的攻击程序等。因此,研宄人员设计了安全标签技术,将这些读、写以及可执行属性编码成数据特性,并在程序的执行过程中当作安全策略强制执行。

【发明内容】

[0007]1、目的:本发明的目的是提供一种新型安全机制的嵌入式模块,对嵌入式处理器进行实时监控。它利用硬件辅助的方法将程序执行时产生的信息同预先通过离线的程序分析得到的信息进行实时比较,防止对程序代码的恶意攻击行为发生。
[0008]技术方案:
[0009]本发明设计一个与处理器并行运行的专用硬件模块,对程序运行数据和代码的完整性进行监控,以增强嵌入式系统的程序执行安全。安全模块从嵌入式处理器输入程序计数器信号和当前指令值信号,将之与监控信息存储模块中读取安全模块标记的信息进行实时对比。当程序进入一个新的基本块时,通知监控信息存储模块读取相应预先存储的基本块监控信息。当程序在基本块中执行时,将当前指令值信号传递给安全模块,迭代计算哈希值。当程序退出一个基本块时,将迭代计算出的整个基本块的哈希值与基本块监控信息中的哈希值对比,如果对比信息不一致,可以中止程序的运行,或进行系统恢复。
[0010]本发明一种新型安全机制的嵌入式模块,它由监控信息比较模块、监控信息存储模块和硬件安全分模块组成。三者之间的关系是:嵌入式处理器将采集到的程序计数器和当前指令值传送到监控信息比较模块,然后通过监控信息存储模块和硬件安全分模块对数据进行处理。
[0011 ] 所述监控信息比较模块主要是比较作用,它从嵌入式处理器输入程序计数器信号和当前指令值信号,将之与监控信息存储模块中读取的信息和循环冗余校验计算模块计算出的信息进行对比,以判断嵌入式处理器中实时运行的程序的合法性。
[0012]所述监控信息存储模块主要是存储作用,它存储有预先提取的程序控制流信息,采用二分搜索的方法,可以快速高效地搜索到需要读取的信息。
[0013]所述硬件安全分模块是校验作用,它输入程序指令信号值,进行迭代运算,输出基本块的哈希值。整个硬件辅助的嵌入式系统安全分模块提高了程序执行的安全性。这里的输入数据是一个位宽为512位的指令段,通过硬件安全分模块计算后输出的位宽为80位的校验值。与CRC校验模块相比,此算法安全性更好,同时又兼顾了硬件资源开销以及存储资源开销。
[0014]3、优点及功效:这种硬件辅助的嵌入式系统安全模块具有以下几个优点:
[0015](I)本发明所述的硬件辅助的嵌入式系统安全模块嵌入式CPU并行运行,能够不受软件攻击,自身安全性方面很高。
[0016](2)本发明采用硬件辅助的方法,所述安全模块与嵌入式处理器并行执行,安全模块的所有操作均可在一个时钟周期内完成,提高了系统的运行效率。
[0017](3)本发明所述的硬件辅助的嵌入式系统安全模块占用资源少,在提高了系统安全性的同时,对系统整体资源的占用较少。
[0018](4)本发明所述的硬件辅助的嵌入式系统安全模块,适合各类嵌入式系统,具有较好的防护效果。
【附图说明】
[0019]图1是本发明模块的安全机制结构框架。
[0020]图2是本发明模块在嵌入式系统中的结构示意图。
[0021]图中符号说明如下:
[0022]图2中,IF是取指级:指令缓存或数据的缓存的访问;ID是译码级:解码指令,同时改变寄存器窗口 ;EXE是执行级:分支跳转,同时进行算术及逻辑操作;ME
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1