您当前所在位置:主页 > 新闻中心 > 行业动态 >
新闻中心 / News
联系智融 / CONTACT US

技术经理:13871093995

邮箱:gongch@zronggsoft.com

QQ: 点击这里给我发消息 点击这里给我发消息
行业动态

用多密钥加密方法防御面向返回编程的攻击

发布时间:2015-06-15 14:13
  针对面向返回编程(ROP)攻击的特性,提出了一种利用多密钥加密函数返回地址值防ROP攻击的方法。这种方法通过密钥指定位以及密钥迷惑位的巧妙设置,防止密钥在泄露情况下攻击者实施有效攻击的可能。利用二进制代码动态翻译工具PIN开发了原型系统,在实现时,为了避免攻击者攻击原型系统而直接访问密钥,引入了诱饵密钥,在增加攻击难度的同时降低了可信计算基。其有效性分析和实验结果表明,在不需要其他信息(如源码、调试信息等)条件下,多密钥加密防御方法能在适当的性能开销下,有效防御ROP攻击,并且其误报率极低。
  
  关键词 代码复用类攻击,返回编程(ROP)攻击,多密钥加密保护,密钥迷惑位,诱饵密钥O引言最早代码复用类攻击是返回库into1ibc,攻击¨,2|,由于RILC攻击所利用的代码段粒度大,可供攻击选用的函数数量少,并且依赖于标准库中几种关键函数,因此不方便组装。攻击者倾向于选择具有图灵完全运算能力的面向返回编程(re—一oriented pr0孕踟“ng,ROP)方式实施攻击”’。
  
  由于程序中存在大量以0xC3字符(即ret指令)结尾的短序列代码碎片,因此仅仅通过去除标准库中的若干个函数(如system()函数),难以有效地防御ROP攻击。同时ROP攻击已经在真实攻击中被用来绕过Windows系统的w o x防御方法H1,即数据执行保护,DEP)技术。
  
  为防御ROP攻击,研究者提出了多种防御方法。包括指令对齐方法【5再]、恶意代码消除一。0|、设置影子栈保护返回地址值?J、控制流一致性检测¨2’坫。等。
  
  然而现有的方法或是需要源代码信息,或者性能开销过大。部分方法需要依靠动态翻译工具实现防御,从而扩大了可信计算基的范围。
  
  针对ROP攻击需要连接指令ret的执行将各个组装并连续运行的特点,可采用对返回地址值加密保护的方法予以防御。然而这种方法由于只需要一个随机生成的密钥,并且加密方法简单,因此在加密地址泄露后(如通过格式化字符串攻击),很容易被攻击者猜出密钥值。为解决上述问题,本文提出利用多密钥加密方法防御代码复用类攻击。多密钥加密方法在程序运行时引入多个随机生成的密钥,同时为返回地址随机指定不同的密钥。为防止攻击者在获取全部密钥的情况下成功猜测密钥与地址的匹配关系,本文引入了密钥迷惑位,进一步提高了攻击者成功猜测加密方法的难度。多密钥加密方法不仅继承了返回地址值加密保护的优点,并且能在部分密钥泄露甚至在全部加密密钥被攻击者所获知的情况下,有效防御ROP攻击。本文阐述了多密钥加密的防御方法,介绍了多密钥加密的实现,分析了多密钥加密方法的有效性并用实验予以验证,评估了其性能开销并分析其局限性,讨论了相关工作,最后给出了结论。

上一篇:CAD的发展给企业选择加密软件带来的困惑

下一篇:多密钥加密方法

 
 
点击这里给我发消息

经理电话:13871093995

-->

报价申请
加密软件价格申请
技术咨询
加密软件技术咨询
关注我们

智融科技