针对代码复用攻击的实时检测方法研究与实现

来源 :电子科技大学 | 被引量 : 0次 | 上传用户:mengzi_2008
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
网络服务器和个人主机经常受到网络黑客的威胁,他们使用恶意制作的数据包来利用软件漏洞并获得系统管理员权限。尽管当前研究人员针对软件漏洞及相应防御方法进行了大量的研究,但此类攻击仍然是安全领域最大的问题之一。随着数据执行保护和W⊕X的广泛部署,攻击者被迫在二进制文件中重用现有的代码片段。代码重用攻击可以执行任意的图灵完备计算而不用注入任何恶意代码。其中,面向返回的编程(ROP)已经成为攻击者规避最新操作系统的安全机制的重要手段。全世界的研究人员先后提出了许多防御与检测ROP攻击的方法,代表性的防御技术包括控制流完整性和地址空间布局随机化等。但这些方法大多都存在许多问题,要么是很容易被攻击者绕过,要么是检测率不高,要么是有较高的副作用,例如需要源代码信息、编译器支持等。因此,本文针对代码复用攻击的巨大威胁,研究运行时的底层硬件特征和gadget链特点,提出了2种针对代码复用攻击的检测方案,分别是低性能消耗、不需要任何边缘信息的基于硬件辅助的检测方法和检测覆盖面广、高检测率的基于深度学习的检测方法,并基于此实现了原型系统,进行实验验证了方案的可行性。本文的主要工作如下:首先,研究了ROP攻击在运行时发生的过程,发现了当发生ROP攻击时底层硬件性能事件的异常状况,会出现返回指令比例增加,出现大量的错误预测返回指令,指令转换后备缓冲区未命中异常增加,数据转换后备缓冲区未命中异常增加。根据此状况,在硬件性能计数器和最后分支记录的基础上,提出了一种基于硬件辅助的代码复用攻击实时检测方法——HBDROP(Hardware-based defend ROP)。其次,研究了代码复用攻击的执行需要大量gadget拼接这一特点,结合当前深度神经网络技术,将代码复用攻击的检测问题转换为一个2分类问题,提出了一种结合深度学习的代码复用攻击检测方法——Deep CRA。本文将良性gadget链和真实gadget链转换为数字化矩阵,作为输入数据送入卷积神经网络中进行训练,在检测阶段旨在将可疑gadget链进行分类,根据结果判断出是否有攻击发生。然后,由于Deep CRA中使用了深度学习技术,该方法就需要大量的数据集进行训练,受限于难以产生大量的真实的ROP攻击。本文研究了一种可以大量生成ROP gadget链的方法。该方法基于地址空间布局进行反汇编,将所有字节都视为内存地址,由此遍历整个地址空间。首先找到以间接返回指令为结尾的gadget,再将gadget拼接成链,由此生成了Deep CRA所需要的数据集。最后,在HBDROP和Deep CRA2种方法的基础上,本文在32位linux系统下分别设计并实现了针对代码复用攻击检测原型系统。在该系统中利用真实的ROP漏洞分别测试并验证了HBDROP和Deep CRA对代码复用攻击检测的有效性。同时,针对HBDROP,本文将其和同类方法进行了对比,在检测率和性能上高于同类方法;针对Deep CRA,本文从多个方面对其进行了评估,其中准确率在98%以上。最后,探讨了2种方法各自的限制。
其他文献
近年来,深度卷积神经网络(CNNs)在计算机视觉领域表现出色,同时计算机视觉等人工智能系统工程应用的需求也日益增长,对于神经网络压缩与加速的方法研究也日趋活跃。但是由于其过参数化的设计,卷积神经网络导致了网络模型巨大的参数量和昂贵的计算消耗,使得将模型部署到一些资源受限的设备的上变得非常困难,如嵌入式设备、移动手机等。如何在资源受限的设备上部署高可用、高可靠的网络模型,这成为了人工智能在现实生活中
随着信息与科学技术的繁荣发展,未来现代电子信息作战具有装备信息化程度高、交战过程实时变化性强、战场信息不确定性强、博弈强对抗等特征。指挥员针对敌方战场信息的认知提出了更高的要求,但传统的方法过于依赖专家提取特征,人为提出特征间的关系会带来主观性过强、经验依赖性过高以及实时性较差等问题。贝叶斯网络作为基于图论与概率统计的图模型,以数据学习为核心,避免了人为主观性过强等问题从而在许多领域发挥重要的作用
随着科技的发展与工程需要的多元化,计算技术在图像识别领域中的应用越来越广泛。其中卷积神经网络具有优秀的图像识别效果,相比于常规图像识别算法,它具有更为有效的特征提取结构以及识别结构,已成为图像识别领域中主要技术之一。众所周知,图像样本的质量、数量是影响图像识别的关键因素,但是在一些重要专业领域,如遥感、雷达、医疗等,不仅面临获取大量、高质量的图像数据存在困难,更面临对这些专业图像标注的专业人力不足
众包是一种分布式的计算范式,它可以整合社会中的群体智慧来完成一些计算机或非专业人员无法完成的复杂任务。共享经济社会的形成,推动了一种基于位置的众包服务应用——空间众包的出现和发展。它在便利生活、智能交通等生活领域贡献了巨大价值。空间众包中基本且核心的研究方向包括任务分配和用户隐私保护,但以往的研究大多仅关注众包任务和工人,而忽略了需要不同专业领域知识的多技能任务分配。其次,由于空间众包是基于位置的
近年来,移动智能设备(如智能手机和平板电脑)在商业上取得了越来越大成功,已经成为全球数十亿人日常生活中不可或缺的元素。移动设备不仅用于传统的通信活动,如语音通话和信息通信,还用于大量的多用途应用,如金融、游戏、视频会议和购物等。移动用户日常上网行为不仅带来了流量的爆炸式增长,同时也使用户行为呈现出复杂性和多样性。因此,深入分析移动应用流量,识别用户异常行为对移动互联网的安全防范具有重要意义。本文的
随着网络环境日益复杂,越来越多网络协议开发者选择构建私有协议来进行数据的发送和接收,以满足其个性化需求。但是也有许多恶意应用程序利用私有协议来进行网络数据的传输,大大降低被破解的可能性,同时让此类非法活动变得更加隐秘,给网络安全带来巨大威胁。因此,对这些未知协议进行分析和处理,是网络安全领域亟需解决的问题之一。采用传统的从软件层面逆向分析二进制代码的方式不仅实现复杂、可移植性低、无法分析加密程序,
在人类探索世界的过程中,存在着许多无法到达的场所,而足式机器人由于其承载能力强、稳定性好、适应各种不同地形而成为研究重点,六足机器人由于其相对四足机器人可以实现更好的稳定性,而与八足机器人相比,六足机器人机体结构又更为简单,因此有更简单的运动控制策略,因而有其重要应用。本文设计构建了六足机器人模型,从足尖轨迹规划、中枢模式发生器、深度强化学习三种运动控制方法对机器人运动控制策略进行了研究与仿真。本
新能源汽车代表着汽车电动化与智能化的发展走向。四轮轮毂电机独立驱动的汽车方案有着简洁的传动机构和更高的可控自由度,其动力系统一直是研究的热点。本文以四轮轮毂电机独立驱动的电动汽车为研究对象,对整车动力系统方案、动力系统域控制器平台设计展开研究。主要研究内容如下:(1)针对电动汽车建立动力系统仿真计算模型,用于分析其动力性能指标,主要包括分析该汽车动力驱动系统对驱动力矩、电机转速、动力驱动总功率等需
近几年各类新兴技术例如量子科技、区块链以及人工智能迅猛发展,给传统网络带来了极大的挑战,而网络虚拟化技术为传统网络能满足多元化的网络需求带来了可能性。本文主要从以下两个方面对虚拟网络映射问题进行研究:针对深度卷积神经网络的计算负载会使终端设备产生大量能耗的问题,本文将深度卷积神经网络的计算任务作为虚拟网络请求,将它映射到多个终端设备上,由多台终端共同分担计算来减少对自身的损耗。在实现时将神经网络每
同步定位与建图(Simultaneous Localization And Mapping,SLAM)已经在机器人视觉领域进行了几十年的研究,但是基于传统建图方法下的深度估计花费时间长,很难达到工程上要求的实时性,而且地图中不具包含义信息,使得三维建模在应用方面的拓展受阻。基于这些问题本文设计了一种基于深度学习的单目图象深度估计的方法,提高建图速度,同时设计了一种融合的语义分割网络,让整个系统能够