以病毒、蠕虫以及木马为代表的恶意软件攻击具有成本低廉、危害广泛的特点,是嵌入式系统在实际应用中所面临的最具威胁性与破坏性的攻击方式,传统的软件防护策略已无法满足嵌入式系统应用环境中的新型安全需求,因而迫切需要寻求一种新的防御方法。 课题拟从嵌入式处理器的体系结构入手,采用计算机防侵入技术中的完整性检测以及行为阻断的思想,对嵌入式处理器中所运行程序进行指令级监控,建立细粒度的安全运行机制,解决恶意程序所带来的运行安全性问题。与以往单纯的安全性研究所不同的是本项目拟在虚拟执行部件的基础上,从程序的完整性、指令的运行行为以及数据运行轨迹等角度出发,在嵌入式处理器内构建多层次的防御机制并对其底层硬件进行相应的延伸性研究。其研究结果还可以应用于其他安全敏感的电子设备中,为保密通信、网上银行、电子商务、电子政务等系统的安全运行提供基础支持。
embedded system;information flow track;integrity verification;memory monitor;taint trace
项目采用嵌入式处理器指令级的细粒度监控策略,以程序运行时的存储器和信息流轨迹为参考,研究了嵌入式处理器在恶意软件威胁条件下的安全运行机制,对现有的信息流追踪和存储器监控方法进行了改进,并采用将信息流追踪和存储器监控结合,即所谓多策略方法来抵御恶意软件的攻击,该方法对软件透明,是一种硬件实现的安全策略。 在信息流追踪方面,采用了污迹追踪机制对外来隐患程序进行实时追踪和监控,从而保证原有程序的安全性。其方法包括对攻击目标进行污迹标记,对污迹进行传播和对污迹进行检测。在处理器内核设置污迹检测寄存器,在指令通过流水线时,处理器通过污迹检测寄存器完成对污迹的检测,同时在污迹检测过程中对威胁进行分类,将攻击源在内核中的威胁行为分为不同的级别。该方法与现有技术相比具有更小的硬件开销和误报率。 在存储器监控方面,项目提出的存储器监控防御机制包括栈保护模块,堆保护模块以及全局数据保护模块三个单元,它们根据各自的监控方法从流水线中提取监控所需要的信息,利用这些信息对程序行为的合法性进行动态监控。项目提出的存储器监控模块功能的实现不依赖于程序的源代码,完全通过动态监控对程序进行安全检查,在功能上实现对程序全部数据空间的保护,能够防御当前存在的大部分缓冲区溢出攻击。 项目将信息流追踪和存储器监控相结合以构建多策略安全机制来抵御恶意软件的攻击,多策略方法弥补了单一信息流追踪和存储器监控的不足,实现二者的优势互补,可以检测出更多的恶意攻击。 项目建立了计算机软件仿真攻击平台和模拟真实环境的硬件攻击平台,在LEON3处理器上实现上述安全防御机制,并对处理器进行恶意攻击测试,实验结果证明,提出的安全机制可以有效的抵御恶意软件攻击。在充分考虑性能、功耗以及成本开销的前提下,对上述方法进行了设计、综合和静态时序分析,结果表明可以较小的代价实现上述功能。另外,还对存储器完整性校验进行了研究,提高了嵌入式系统中存储器保存信息的安全性。 在本项目中,申请嵌入式处理器安全运行机制的相关发明专利2项;发表论文14篇,其中SCI收录2篇,EI收录9篇,中文核心3篇,毕业博士1名,在读2名,毕业硕士8名,在读3名。