首页 | 本学科首页   官方微博 | 高级检索  
     检索      

基于指令校验的软硬件协同代码重用攻击防护方法
引用本文:吕雅帅.基于指令校验的软硬件协同代码重用攻击防护方法[J].电子学报,2016,44(10):2403-2409.
作者姓名:吕雅帅
作者单位:中国人民解放军装备学院 国防科技重点实验室,北京,101416
基金项目:国家自然科学基金(61202129)
摘    要:面向x86处理器的代码重用攻击难于防护的一个重要原因是,在x86程序代码中存在大量合法但非编程者预期要执行的指令.这些在代码中大量存在的非预期指令可被用于构造实现CRA的组件.先前研究均采用软件方法解决非预期指令问题,运行开销大且应用受限.本文的主要贡献之一是提出了一种低开销的软硬件协同方法来解决x86的非预期指令问题.实验表明,本文的实现方法仅给应用程序带来了-0.093%~2.993%的额外运行开销.此外,本文还提出采用硬件实现的控制流锁定作为一项补充技术.通过同时采用两个技术,可以极大降低x86平台遭受代码重用攻击的风险.

关 键 词:代码重用攻击  非预期指令  指令校验
收稿时间:2015-01-28

An I nstruction Verification Based Hardware/Software Co-design Approach for Mitigating Code-Reuse Attacks
L&#,Ya-shuai.An I nstruction Verification Based Hardware/Software Co-design Approach for Mitigating Code-Reuse Attacks[J].Acta Electronica Sinica,2016,44(10):2403-2409.
Authors:L&#  Ya-shuai
Abstract:Code-reuse attacks (CRAs)are difficult to detect and defend,especially on widely used x86 processors. One reason is that lots of unintended but legal instructions exist in x86 binary codes.The unintended instructions make the finding of so called gadgets for CRAs is much easier than that of RISC processors.Previous studies rely on software-only means to tackle the unintended instruction problem,which makes their approaches are either very costly or can only be ap-plied under restricted conditions.In this paper,we propose a hardware/software co-design approach to tackle the unintended instruction problem.The proposed mechanism has little performance impact on the examined SPEC CPU 2006 benchmarks. We also propose using hardware control-flow locking as a complementary technique.By using the two techniques together, an attacker will have little chance to carry out CRAs on x86 processors.
Keywords:code-reuse attack  unintended instruction  instruction verification
本文献已被 万方数据 等数据库收录!
点击此处可从《电子学报》浏览原始摘要信息
点击此处可从《电子学报》下载免费的PDF全文
设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号