基于编译置换的指令随机化系统设计与实现
2018-01-03何红旗王奕森董卫宇朱怀东
计算机应用与软件 2017年12期
何红旗 王奕森 董卫宇 朱怀东
(信息工程大学数学工程与先进计算国家重点实验室 河南 郑州 450001)
基于编译置换的指令随机化系统设计与实现
何红旗 王奕森 董卫宇 朱怀东
(信息工程大学数学工程与先进计算国家重点实验室 河南 郑州 450001)
指令集随机化技术是一种通过随机变换程序指令编码来抵御代码注入攻击的新型防御技术。现有指令集随机化技术还存在一定缺陷,如性能损耗大、指令数据混杂造成的编码难等。针对这些问题,提出一种基于编译置换的指令随机化技术。该技术在不降低防御效果的同时减少了随机化指令的数量,并在编译过程中实现了关键指令的随机置换,提高了指令随机化的性能和编码精确度。设计并实现了一套基于编译置换的指令随机化原型系统,验证了该技术的有效性。
指令随机化 编译置换 ShellCode DynamoRIO 指令定位
0 引 言
随着信息技术的快速发展,互联网在给人们带来便利的同时也带来了巨大的威胁。各类硬件和软件漏洞层出不穷,黑客为了获得非法利益利用漏洞对目标用户进行网络攻击,获取网络用户隐私信息并出售。因此提升软件的抗攻击性能对提升互联网的安全至关重要。根据OWASP组织在2013年公布的Web十大关键风险[1]显示,注入型攻击排名第一。代码注入型攻击是攻击者通过改变控制流来执行恶意代码从而达到攻击目的,其破坏性很大。目前最常见的代码注入型攻击为缓冲区溢出攻击(如栈溢出攻击和堆溢出攻击等)。……
登录APP查看全文
