本发明专利技术公开了一种适用于嵌入式处理器的信息流安全监控方法,包括污迹的标记、污迹的传播和污迹的检测。污迹标记是对外来隐患数据进行标记。污迹传播是使污迹信息随数据源一起参与到流水线的运算当中,并在数据操作过程中与数据绑定在一起且与数据保持同步。污迹检测对污迹数据源行为的安全性进行检测,监控污迹数据源在传播过程中的行为,当发现污迹数据被不安全的方式使用时,产生异常中断。由于本发明专利技术在污迹信息的传播过程中省略了污迹传播寄存器而以全传播的形式进行传播,在一定程度上减少了系统性能方面的开销,同时由于在污迹信息的检测过程中使用了污迹检测寄存器,可以更有针对性的防御不同类型的攻击,减小了整个信息流安全监控方法的误报率。
【技术实现步骤摘要】
本专利技术属于数字集成电路和嵌入式系统安全领域,具体涉及,该方法的核心是利用污迹追踪的方法监控嵌入式处理器信息流的安全,是一种高性能,低功耗,误报率较低的有效防御嵌入式系统中恶意软件攻击的方法。由于在设计时就考虑了性能与开销等因素,该方法完全适用于嵌入式系统,也适用于计算机系统,能够为其提供可靠的信息流安全的保障。
技术介绍
近些年来,嵌入式系统受到了来自恶意软件的严重威胁。2005年在芬兰赫尔辛基世界田径锦标赛上大规模爆发的手机病毒Cabir便是其中的典型代表。截至到2006年4 月,全球仅针对智能手机的病毒就出现了近两百种,并且数量还在迅猛增加。恶意软件已经开始威胁嵌入式设备的正常使用。嵌入式系统之所以容易成为恶意软件攻击的对象是基于以下几点原因。首先嵌入式系统的应用环境越来越开放,随着以Symbian、Windows CE、Linux为代表的嵌入式操作系统的推广,以及蓝牙、无线网络的兴起,导致恶意软件可以更方便的传播;其次嵌入式系统缺乏必要的安全防护措施;最后也是最关键的原因是作为嵌入式系统中核心部件的嵌入式处理器本身缺乏必要的安全机制。嵌入式处理器在嵌入式系统中从事着数据交换、处理等重要工作,但是嵌入式处理器不会检查所执行的程序是否安全。从处理器的角度来看,恶意软件与正常程序相同,这就造成了恶意软件在指令级层次是透明的,从而为恶意软件的攻击留下了潜在隐患。如果嵌入式处理器在软件运行的过程中能及时发现具有安全威胁的程序并予以中止,就可以大大提高嵌入式系统在运行时的安全性,为嵌入式设备在不安全的环境下的应用提供可靠保障。与桌面计算机所不同的是嵌入式系统是一个相对封闭的系统环境,与前代产品的兼容性问题小,并且嵌入式处理器结构简单,在体系结构上具有较大的改进余地。因而本专利技术从指令级层次入手研究嵌入式处理器的细粒度安全运行机制,探索在恶意软件威胁下提高嵌入式系统安全性的方法。国外从2000年开始,就展开了针对处理器安全性的研究。如图1所示,我们列举了近年来,在处理器架构安全性研究方面的发展历程。2000年,针对处理器的安全性问题,美国Manford大学率先提出了 XOM(eXecute-Only-Memory)架构。XOM主要思想是在存储器中保存只能执行的指令,不允许指令发生修改,并且通过对指令进行加密来保证指令的安全性。XOM可以抵御恶意篡改以及窃听,但是由于其对进出外部存储器的数据以及程序都要进行验证,因而工作效率很低, 同时这种方法不能防御来自应用程序本身的攻击。2003年麻省理工(MIT)人工智能实验室针对物理攻击提出的一种安全处理器架构AEGIS。AEGIS利用物理真随机数发生器(TRNG)产生一个唯一的身份标示,并作为签名添加到加密算法中,所有保存在外部存储器的数据都经过加密运算。AEGIS对物理攻击能做出很好的防范,但是AEGIS同样无法抵御来自内部的破坏,而且AEGIS的加密方式使其本身的性能受到了较大的影响。从2004年开始,利用硬件提高处理器安全性的研究开始逐步升温,出现了以Mios 为代表的控制流监控和以RIFLE为代表的信息跟踪两种主要方式。到了 2006年出现了以 Heapmon为代表的通过存储器访存追踪来进行安全性判断的方式。从追踪数据的角度上看, 这种方法与信息追踪方式相似,都是依靠监控运行时的数据轨迹来完成工作的。这两种方法同时也都存在着运行效能不高的问题。目前,控制流监控、信息追踪以及存储器追踪这三种安全处理方法已成为研究硬件架构安全性的主流方法。从2007年到2008年的研究中,不同方法之间的交叉研究成为新的趋势,例如FlexTaint。以上的安全架构多是以桌面计算机中的通用处理器为假想应用环境。其中XOM与 AEGIS不能应对来自应用软件本身的安全威胁,而RTM没有考虑嵌入式系统对来自系统外部程序的安全监控要求。因而这些模型不能解决嵌入式系统中存在的恶意软件威胁的问题。以嵌入式系统应用环境为参考点解决嵌入式处理器所面临的运行安全性问题将是我们的研究重点。国内在硬件安全方面的研究主要集中于安全协议以及AES、RSA等安全加密算法的实现上。但是在关于嵌入式处理器安全架构方面的研究,特别是在嵌入式处理器的硬件层次上,探索抗恶意软件攻击的研究基本上处于空白。目前工业界所广泛采用的安全产品缺乏自主知识产权,而且较为陈旧,不够安全。另一方面,一些先进的安全产品属于受限范围并且价格昂贵,在我国的使用受到了限制。这种情况严重威胁了我国在相关领域的公共安全。由于安全嵌入式处理器涉及敏感,国外公司不可能向我国公开其完整的设计方案以及其中可能存在的安全隐患,因而国外嵌入式处理器是否真正安全值得怀疑,嵌入式处理器在特殊行业的使用也受到了相应的限制。这些都不利于嵌入式设备在我国的进一步推广发展。
技术实现思路
本专利技术的目的在于提供,该方法与现有技术相比具有更小的硬件开销和误报率,能达到更优的性能,能够真正应用于对设计要求较高的嵌入式处理器中。本专利技术提供的,其特征在于,该方法包括(A)对攻击目标进行污迹标记;(B)对污迹进行传播当污迹数据源进入到嵌入式处理器内核时,在处理器流水线上污迹标记位随着系统对该污迹数据源进行各种各样的操作而传播;将污迹标记位在数据源被读入、读出及运算的过程中和数据源绑定在一起,以追踪污迹数据源的整个传播过程;(C)对污迹进行检测(Cl)在处理器内核设置污迹检测寄存器,在指令通过流水线时,处理器通过污迹检测寄存器完成对污迹的检测;(C2)在污迹检测过程中对威胁进行分类,将攻击源在内核中的威胁行为分为不同的级别。 鉴于嵌入式处理器安全性的重要性以及国内外的发展现状,为了解决嵌入式系统中存在的运行安全性差的问题,本专利技术从嵌入式处理器的体系结构入手,研究嵌入式处理器在恶意软件威胁条件下的安全运行机制及实现方法,采用针对嵌入式处理器的信息流安全监控方法。本专利技术针对嵌入式处理器的安全运行机制,采用污迹追踪的形式,对从外来隐患程序进行实时追踪和监控,从而保证原有程序的安全性。该污迹追踪方法在对污迹进行传播时采用了全传播的方法,这样在一定程度上减小了系统性能上的开销。同时该方法添加了污迹检测寄存器,用户可以通过软件进行配置这些寄存器的控制字,而且每个寄存器对应一类攻击,这样可以同时防御多个类型的攻击,因此可以大大的减小该设计在防恶意攻击时的误报率。在充分考虑嵌入式处理器的安全性、性能以及成本开销的前提下,提高嵌入式处理器的安全性,为嵌入式系统的安全应用提供可靠保障。附图说明图1为处理器架构安全性研究的发展示意图2为污迹追踪形式的示意图3为信息安全监控的基本过程图4为信息安全监控方法设计流程图5污迹全传播的操作示意图6为污迹检测寄存器示意图7为实现信息安全监控方法的系统结构图8为stack smashing的实验结果图9为format string的实验结果图10为处理器加入信息安全监控前后FPGA资源开销对比示意图。具体实施例方式下面结合附图和实例对本专利技术作进一步详细的说明。本专利技术提供了一种适用于嵌入式处理器的信息流监控方法,包括对来自恶意软件威胁的标记,传播和检测。它主要通过污迹追踪的形式对来自处理器外部的程序进行跟踪鉴别,对程序进行实时监控,及时判别其行为的安全性,从而保本文档来自技高网...
【技术保护点】
1.一种适用于嵌入式处理器的信息流安全监控方法,其特征在于,该方法包括:(A)对攻击目标进行污迹标记;(B) 对污迹进行传播:当污迹数据源进入到嵌入式处理器内核时,在处理器流水线上污迹标记位随着系统对该污迹数据源进行各种各样的操作而传播;将污迹标记位在数据源被读入、读出及运算的过程中和数据源绑定在一起,以追踪污迹数据源的整个传播过程;(C) 对污迹进行检测:(C1) 在处理器内核设置污迹检测寄存器,在指令通过流水线时,处理器通过污迹检测寄存器完成对污迹的检测;(C2) 在污迹检测过程中对威胁进行分类,将攻击源在内核中的威胁行为分为不同的级别。
【技术特征摘要】
1.一种适用于嵌入式处理器的信息流安全监控方法,其特征在于,该方法包括(A)对攻击目标进行污迹标记;(B)对污迹进行传播当污迹数据源进入到嵌入式处理器内核时,在处理器流水线上污迹标记位随着系统对该污迹数据源进行各种各样的操作而传播;将污迹标记位在数据源被读入、读出及运算的过程中和数据源绑定在一起,以追踪污迹数据源的整个传播过程;(C)对污迹进行检测(Cl)在处理器内核设置污迹检测寄存器,在指令通过流水线时,处理器通过污迹检测寄存器完成对污迹的检测;(C2)在污迹检测过程中对威胁进行分类,将攻击源在内核中的威胁行为分为不同的级别。2.根据权利要求1所述的信息流安全监控方法,其特征在于,步骤(Cl)中,污迹检测寄存器控制字的定义和操作如下(Cll)污迹检测寄存器中的pc定义了对程序指针的检测规则,如果pc位为“1”而且程序指针跳转到tag (0)值为“1”的地址就会产生异常;(C12)污迹检测寄存器中的inst定义了对指令的检测规则,如果inst位为“1”而且系统在取指令阶段所取指令的tag (0)值为“1”就会产生异常;(C13)污迹检测寄存器中的addrs定义对敏感地址及敏感地址段的检测规则,如果 addrs位为“01”而且外来攻击对敏感地址有操作,且污迹源对其内容进行改写时就产生异常;如果a...
【专利技术属性】
技术研发人员:刘政林,秦保力,朱庆春,周昭柳,李东方,殷雄,陈天山,董磬,郭超,
申请(专利权)人:华中科技大学,
类型:发明
国别省市:83
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。