站内搜索

计算机系统漏洞自动化利用研究关键技术及进展

  随着技术的进步和国际局势的变化,网络空间的攻防对抗也愈演愈烈。近年来不断有组织受到匿名黑客的攻击,从美国的石油管道遭黑客攻击停运到SolarWinds遭受APT组织攻击等事件表明,网络安全对国家安全至关重要。软件作为网络空间信息交互与传播的载体,提供各项关键的基础服务,但随着软件架构的复杂性不断提高,更多深层次的漏洞难以在第一时间发现,为网络安全带来了潜在的隐患。面对日益严峻的软件安全威胁,国内外相关研究单位均加大了在软件漏洞分析利用方面的投入。

  传统的漏洞利用过程,主要依靠安全从业人员的专业知识及经验,通过代码审计等方式,对软件中潜在的安全漏洞进行挖掘、利用并提出相应的解决方案。这种人工的漏洞分析与利用技术存在以下几个方面的问题。首先,软件漏洞的可复现性难度大。通过调查目前互联网存在的各漏洞库可以发现,不少漏洞信息存在描述不准确、信息不完整的问题,这些问题会占用研究人员大量的时间,导致漏洞修复困难重重,甚至还会出现因为漏洞的复现失败导致研究人员判断错误。其次,在漏洞复现成功后研究人员往往还需要对漏洞的可利用性进行判断,这又需要研究人员花费大量的精力去理解二进制程序以及掌握程序源代码的运行过程。考虑到安全漏洞存在较长的修复周期,研究者不可能对所有的漏洞都投入大量的人力与物力,所以漏洞的可利用性评估就显得至关重要。如何快速的识别漏洞并分析其可用性也成为当前漏洞挖掘与利用的关键问题之一。

  人工智能的发展让漏洞挖掘领域已经出现了很多自动化及半自动化的技术,漏洞挖掘的效率得到大幅提升,目前的漏洞利用自动生成过程如图1所示。

  首先对被测程序进行预处理,对其存在的漏洞进行挖掘。其次对其漏洞类型进行判断,检测其是否可以执行代码。若该漏洞能够进行代码执行,则根据其利用方式通过符号执行等方法计算是否有满足条件的解,若存在满足条件的解,则根据漏洞类型结合其求解出的条件生成漏洞利用。然而,随着软件开发技术的迭代升级,软件的复杂程度远超过去,所以在漏洞自动化利用方面,仍存在着不少的挑战。

  本文旨在综述漏洞自动化利用的研究,第一章概述自动化利用所涉及的技术 ;第二章概述漏洞自动化利用的研究方向及已有成果 ;第三章讨论当前研究的局限性,并展望未来的研究方向,最后总结全文。

一、关键技术

1.1 符号执行

  符号执行最早出现在20世纪70年代,作为一种程序分析技术,它能够系统性的探索程序执行的路径。符号执行的关键思想是,将程序的输入转化为符号值,在程序运行到目标代码时,输出的值可以转化为一个符号输入值的函数,即相应的路径约束,最后通过约束求解器对路径约束进行求解获得可以使目标代码运行的具体值。符号执行技术目前已被学术界和工业界广泛应用在漏洞挖掘与自动利用领域,虽然其已被当作一种强有力的工具,但仍因以下几点不足而难以占据主导地位。

1)路径爆炸问题

  路径爆炸问题又称状态爆炸问题,它是符号执行在现实应用中的最主要的阻碍。在符号执行的过程中,每有一个分支节点,符号执行就会相应的产生两个符号执行实例,当分支条件增多时,程序中的分支路径会出现指数级的上升。在进行较大规模的程序分析时,符号执行的执行效率会受到阻碍,无法在有限时间内完成对所有执行路径的遍历。为了缓解这一矛盾,目前的主要方法有以下几种:采用启发式搜索方法对程序路径空间进行搜索、冗余路径剪枝、状态合并、利用现有的回归测试集确定执行的优先顺序、基于约束的符号执行。

2)约束求解

  符号执行中存在的另一问题是约束求解的效率问题,作为符号执行的基础,其执行的效率会影响符号执行的分析效率。动态符号执行时会频繁调用可满足…………

二、研究方向及已有成果

2.1 数据流与控制流劫持类漏洞利用自动生成

  内存溢出类漏洞又称为内存越界漏洞,可能由堆、栈和格式化的字符串造成。表1列出了目前已有的针对数据流与控制流劫持类漏洞利用自动生成的主要研究成果。

  自动化漏洞利用方法APEG是最早针对内存溢出类漏洞进行的尝试,由BrumleyD等人于2008年首次提出。该方法通过补丁对比,实现了漏洞利用的自动生成,其主要方法是利用二进制的分析工具对比已安装补丁的程序和未及时更新补丁的程序,找到程序的补丁位置,再通过对补丁程序的分析发现其新增的检测点并据此生成测试数据作为候选项,最后通过污点传播等方法挑选出所有能够造成程序崩溃的有效利用。

  随后,AVGERINOS等人于2011年提出了测试方法AEG,AEG在APEG的基础上通过构造包括内存越界写、恶意的格式化字符串在内的一系列非安全输入使程序的扩展指令指针寄存器(ExtendInstructionPointer,EIP)能被任意操纵,该方法弥补了APEG需要补丁程序的不足,通过构造控制流劫持实现了对漏洞利用的自动生成。但AEG只对程序运行时的信息进行分析,且只针对漏洞触发点而非漏洞本身生成相对应的exp,这些问题可能会使生成的exp在生效之前就失去相应的功能。

………………

  计算机系统漏洞自动化利用研究关键技术及进展 PDF 完整版下载(文字复制):

https://www.aliyundrive.com/s/SgvM1eW8nET 提取码: 70oq
Copyright © XiakeShu.com 版权所有 | 备案号:浙ICP备11004787号-12