导读:本文包含了控制流论文开题报告文献综述、选题提纲参考文献及外文文献翻译,主要关键词:静态,完整性,测试,监控器,时序,数据流,语义。
控制流论文文献综述
王丰峰,张涛,徐伟光,孙蒙[1](2019)在《进程控制流劫持攻击与防御技术综述》一文中研究指出控制流劫持攻击是一种常见的针对计算机软件的攻击,给计算机软件安全带来了巨大的危害,是信息安全领域的研究热点。首先,从攻击代码的来源角度出发,阐述了进程控制流劫持攻击的相关研究;其次,根据控制流劫持攻击技术的发展现状,基于不同防御思想介绍了近年来国内外的相关防御技术;最后对控制流劫持攻防技术发展趋势进行总结和展望。(本文来源于《网络与信息安全学报》期刊2019年06期)
帕尔哈提江·斯迪克,马建峰,孙聪[2](2019)在《一种面向二进制的细粒度控制流完整性方法》一文中研究指出控制流完整性是预防控制流劫持攻击的安全技术。出于性能开销的考虑,多数现有的控制流完整性解决方案为粗粒度的控制流完整性。文中提出一种面向二进制的控制流完整性保护方案Bincon。通过静态分析从二进制程序中提取控制流信息,在控制流发生转移处植入检验代码,根据静态分析的数据判断控制流转移的合法性。针对间接函数调用,分析目标二进制并根据参数寄存器和函数返回值寄存器的状态信息重构函数原型和调用点签名,通过限制间接函数调用点只调用类型兼容的函数来有效地降低间接调用指令合法目标的数量。与基于编译器的方案Picon对比,所提方法在无源码前提下能有效地控制精度损失,并显着减少了时间开销。(本文来源于《计算机科学》期刊2019年S2期)
姬秀娟,孙晓卉,许静[3](2019)在《基于复杂控制流的源代码内存泄漏静态检测》一文中研究指出C/C++源代码因其手动分配堆内存的特点,造成大量内存泄漏的问题。对于多分支的控制流结构,其内存分配点和释放点具有不确定性,使得内存泄漏检测的难度增大。针对这种复杂控制流中的内存泄漏问题,定义了一种基于路径抽象的内存泄漏分类方法,提出了一种基于投影的模型检测静态分析算法。该算法采用投影技术将原控制流图进行规约和简化;同时,在进行函数间的分析时,融合了Cloning Expands the ICFG和Expanded Supergraph两种方法,构建了一个函数间的内存定义-使用控制流图(Interprocedural Memory Control Flow Graph,IMCFG)。实验表明,该检测方法在有效性和准确率方面明显取得了较好的结果。(本文来源于《计算机科学》期刊2019年S2期)
左万娟,虞砺琨,黄晨,王小丽[4](2019)在《一种基于数据流/控制流+知识条目的回归影响域分析方案》一文中研究指出结合实例对基于数据流/控制流的回归影响域分析方法进行了阐述,总结了分析要点,强调加强变异流分析以确保分析充分性.针对需求更动,提出了基于知识条目的回归影响域分析方法.对两种分析方法进行对比分析,提出一种基于数据流/控制流+知识条目的回归影响域分析方案.实践证明,基于知识条目的分析方法可以对基于数据流/控制流的分析方法形成有效的补充,从而对回归测试的充分性形成有效的保证.(本文来源于《测试技术学报》期刊2019年05期)
沈立,杨耀华,王志英[5](2019)在《通过部分Warp重组消除GPGPU控制流的不一致性》一文中研究指出GPU已被广泛应用于当前的高性能计算系统中,但其性能却受到程序运行时不同控制流方向的严重制约。这一问题通常通过动态Warp重组技术来解决,即将一个或多个Warp内沿相同控制流执行的线程组合在一起,构成一个新的Warp。但是,这类方法普遍存在一些不必要的重组,引入了较大的额外性能开销。分析了线程重组的性能开销,并提出了一种称作"部分重组"的性能优化方法。这种方法在保证重组效率的前提下,避免了对包含活跃线程数量较多的Warp的重组,从而有效减少了线程重组引入的性能开销。测试结果表明,部分重组能够在保证重组效率的前提下带来较为明显的性能提升。(本文来源于《计算机工程与科学》期刊2019年08期)
赵利军,董莎莎[6](2019)在《ARMv8 ROP shellcode复杂控制流构造》一文中研究指出一个复杂的ROP shellcode从语义层面经常会用到循环和递归等控制流形式。条件跳转控制流gadget是循环和递归等控制结构的基础。然而ARMv7指令集中的间接条件跳转指令在ARMv8指令集中已经不再存在。ARMv8指令集中的条件跳转指令的目标地址的偏移已经被硬编码,不能被使用,所以ARMv8架构下只能通过无条件跳转gadget的重复使用实现循环和递归。这不仅执行效率低,而且浪费了大量的内存空间。基于上述问题,对ARMv7架构的条件跳转gadget进行了分析,提出一种ARMv8架构基于CMP指令和CSEL指令gadget构造条件跳转gadget方法。不仅解决了ARMv7架构基于间接条件跳转指令gadget构造ROP shellcode复杂控制流的方法在ARMv8架构中不再适用的问题,而且通过实验证明了与无条件跳转gadget方法相比,节省了大量的内存空间。(本文来源于《计算机应用与软件》期刊2019年05期)
李勇钢[7](2019)在《基于资源访问控制的控制流劫持检测与防御研究》一文中研究指出受商业利益等因素的驱使,各类恶意软件技术针对操作系统进行了多种多样的攻击,导致其安全问题变得越来越严峻。其中,控制流劫持作为攻击操作系统的基本手段之一而被攻击者广泛采用。控制流劫持是指攻击者通过篡改具有控制属性的数据或引导控制流进行非法跳转,使控制流按照攻击意图流动。针对内核控制流,攻击者通常采用Rootkit技术篡改具有控制属性的内核数据,以实现控制流重定向;针对用户控制流,攻击者通常使用代码复用攻击技术实现控制流的非法跳转。攻击者使用被劫持的控制流能够实现其攻击目的,因此如何检测和防御控制流劫持是确保系统安全的关键问题。控制流被劫持的根本原因在于操作系统固有的权级部署结构和对执行实体采用的极小干预架构设计,导致其缺乏对执行实体资源访问的有效控制。在传统的操作系统部署结构中,操作系统占据最高的特权等级ring0,使得操作系统中所有的执行实体所能获取到的最高执行权限不高于操作系统本身的特权等级。同时,为提高执行效率,现有的操作系统结构设计仅对执行实体的控制流做了基本的行为规范。这些因素致使已有的安全工具难以建立有效的资源访问控制模型,进而限制了对控制流重定向和非法跳转的检测和防御能力。现有的基于虚拟化的方法虽然在一定程度上可以解决这些问题,但它们依赖于复杂的虚拟化平台,一方面导致操作系统的性能损耗较大,另一方面缺乏对资源访问细粒度的控制机制。针对上述问题,本文构建了基于虚拟化技术的操作系统资源访问控制模型,为控制流劫持劫持检测和防御提供资源访问控制机制,并基于该机制分别建立了内核控制流劫持检测与防御模型和用户控制流检测与防御模型。概括地讲,本文的研究内容主要包括叁个方面:(1)针对现有方法无法在兼顾性能的基础上提供对操作系统资源访问有效控制的问题,利用硬件虚拟化技术构建资源访问控制模型VirtWall。(2)基于VirtWall建立内存访问控制机制和事件注入机制,构建针对内核控制流劫持的检测与防御模型SecProtector,并实现了对恶意内核对象的逆向追溯。(3)基于VirtWall建立页表重定向机制和代码差异化管理机制,构建针对用户控制流劫持的检测与防御模型ProShadow,实现了对用户控制流非法跳转的有效约束。(本文来源于《中国科学技术大学》期刊2019-05-01)
赵益民[8](2019)在《完善Coccinelle的控制流功能及测试》一文中研究指出随着代码规模的增大和系统复杂性的增加,软件开发者意识到依靠人工的方式去维护软件系统、排除系统错误已经变得非常困难。形式化方法由于其正确性高、可自动化的特点,已经开始被应用于大型复杂的软件系统中。模型检验作为一种广泛采用的形式化方法,建立在对系统模型的抽象和对性质规约验证的基础之上,利用算法对模型的性质进行验证;模型检验技术不仅适用于系统开发前的安全性和可靠性验证,也适用于系统后期的维护工作。Coccinelle作为基于模型检验技术的代码搜索和转化工具,主要用于解决系统API库接口变化引发的并行演变。它利用描述语言SmPL描述代码模式,还可以在代码中搜索软件错误和漏洞,提升代码质量。SmPL能够理解C程序中的控制逻辑,因此可以精确地在大规模的程序中搜索C语言的代码块。目前SmPL支持条件语句、循环语句等不同控制结构的模式描述,但是缺少了对do-while循环结构的支持,这会限制SmPL的表达能力,影响程序匹配的准确性。本文针对Coccinelle中缺少的do-while循环结构进行了建模和公式设计。我们通过对C语言代码中的do-while循环结构进行建模,抽象为具有通用性的控制流图。在SmPL中,需要将do-while循环的控制结构转为CTL公式;通过对do-while的语法定义的补充,完成从代码到AST,再到CTL公式的转换过程,从而拓展SmPL的表意能力,完善了Coccinelle的控制流功能。本文的成果主要包括:1.我们对拓展后的Coccinelle进行了测试,包含了功能测试和性能测试,测试结果显示拓展后的Coccinelle可以正确地解析包含复合控制结构和嵌套结构下的do-while循环。2.我们利用拓展后的Coccinelle对Linux内核中的代码模式进行了调研,统计了Linux内核中do-while结构的数量和代码分布情况。还成功地对现实中一个具体的内核问题进行了验证,结果说明本文成果兼具正确性和实用性。(本文来源于《兰州大学》期刊2019-05-01)
朱凯龙,陆余良,黄晖,邓兆琨,邓一杰[9](2019)在《基于混合分析的二进制程序控制流图构建方法》一文中研究指出构建控制流图(CFG)是二进制程序分析的基础工作,针对静态构建方法无法处理间接跳转,动态构建方法效率低、不适用于大规模程序的问题,提出结合静态分析和动态分析的混合分析方法.使用静态分析获得基础的控制流信息;采用模糊测试生成测试用例以进行动态分析,利用动态插桩获得间接跳转信息;融合静态分析和动态分析结果生成控制流图.基于该混合分析方法,设计并实现了面向x86平台二进制程序的控制流图构建工具CFGConstructor.分别在示例程序和CGC数据集上进行实验,评估该工具的有效性和性能.实验结果表明CFGConstructor相比于静态分析能够构建更加完备的控制流图,相比于动态分析分析效率更高,能够适用于大规模程序.(本文来源于《浙江大学学报(工学版)》期刊2019年05期)
张庆晨[10](2019)在《基于数据控制流图的缓冲区溢出漏洞检测方法》一文中研究指出随着计算机技术的不断发展,各行各业对软件的需求越来越大,越来越多的人享受着信息系统带来的方便快捷。在信息技术不断发展过程中不可避免要面对的问题就是软件漏洞。在软件开发过程中开发人员都会犯一些错误,有些错误是致命的,如果不及时找出来会造成很严重的后果。如今我们遇到的绝大多数安全漏洞都是不安全代码引起的,对计算机系统的保护在很大程度上取决于对软件漏洞的识别。因此,对软件漏洞的分析与研究日益成为信息安全领域关注的重点。在多年的研究过程中,国内外的研究人员从不同的角度研究了软件漏洞,并都取得了一定的进展。尽管目前在漏洞研究方面已经取了丰硕的成果,但是针对缓冲区溢出漏洞而言,目前在代码形式化方面的研究仍然不够全面,在漏洞挖掘方面的应用还不够充分,主要体现在以下的两个方面:一是目前在代码形式化的研究主要集中于定义化的描述,不能够很好地运用到实际的漏洞检测中;二是在现有代码形式化漏洞检测方法中,缺乏比较有效的权威性方法。以下对本文的主要工作进行阐述:1.本研究通过分析漏洞源代码,提出了一种基于数据控制流图(Data Control Flow Graph,DCFG)的危险函数识别方法。首先在数据控制流图(DCFG)的基础上,研究了基于DCFG的源代码中危险函数的识别方法(Danger Function Detection Method based on Data Control Flow Graph,记为FDMDC),同时给出所提FDMDC方法的具体识别框架并详细阐述了其中DCFG生成模块和危险函数判定模块的实现细节。本研究中提出了一种DCFG生成算法,用以指导数据流控制流图DCFG的生成,并且提出一种基于DCFG的危险函数判定(Danger Funtion Judging Based on Data Control Flow Graph,记为DCDFJ)算法,该算法的主要思想是对DCFG进行遍历并且记录可执行路径上的漏洞相关危险点。2.提出一种基于DCFG的缓冲区溢出漏洞检测方法。根据本文所提的基于DCFG的危险函数识别方法FDMDC,提出了基于DCFG的缓冲区溢出漏洞检测方法(Vulnerability Detection Method based on Data Control Flow Graph,记为DCVDM),重点介绍了基于DCFG的漏洞判定(Vulnerability Judging Based on Data Control Flow Graph,记为DCVJ)算法。该算法的主要思想是利用基于DCFG的危险函数识别方法确定所有的危险点并判断危险函数的类型,接着在危险点处构建危险函数的约束规则,建立约束系统,最后对约束系统进行求解得到漏洞判定的结果。3.设计并实现了一个漏洞检测原型系统——基于DCFG的缓冲区溢出漏洞检测系统(Vulnerability Detection System based on Data Control Flow Graph,记为DCFG-VDS)。DCFG-VDS系统中的主要模块有DCFG生成模块、基于DCFG的漏洞检测模块(记为DCVDM模块)和方法对比分析模块。DCFG生成模块的主要功能是对测试用例进行语法分析生成其对应的DCFG。漏洞检测模块的主要功能是导入漏洞测试用例和测试用例描述文件,选择要检测的漏洞类型和检测指标进行漏洞的检测。方法对比分析模块的主要功能是对不同方法的检测效果进行对比分析。(本文来源于《江苏大学》期刊2019-04-01)
控制流论文开题报告
(1)论文研究背景及目的
此处内容要求:
首先简单简介论文所研究问题的基本概念和背景,再而简单明了地指出论文所要研究解决的具体问题,并提出你的论文准备的观点或解决方法。
写法范例:
控制流完整性是预防控制流劫持攻击的安全技术。出于性能开销的考虑,多数现有的控制流完整性解决方案为粗粒度的控制流完整性。文中提出一种面向二进制的控制流完整性保护方案Bincon。通过静态分析从二进制程序中提取控制流信息,在控制流发生转移处植入检验代码,根据静态分析的数据判断控制流转移的合法性。针对间接函数调用,分析目标二进制并根据参数寄存器和函数返回值寄存器的状态信息重构函数原型和调用点签名,通过限制间接函数调用点只调用类型兼容的函数来有效地降低间接调用指令合法目标的数量。与基于编译器的方案Picon对比,所提方法在无源码前提下能有效地控制精度损失,并显着减少了时间开销。
(2)本文研究方法
调查法:该方法是有目的、有系统的搜集有关研究对象的具体信息。
观察法:用自己的感官和辅助工具直接观察研究对象从而得到有关信息。
实验法:通过主支变革、控制研究对象来发现与确认事物间的因果关系。
文献研究法:通过调查文献来获得资料,从而全面的、正确的了解掌握研究方法。
实证研究法:依据现有的科学理论和实践的需要提出设计。
定性分析法:对研究对象进行“质”的方面的研究,这个方法需要计算的数据较少。
定量分析法:通过具体的数字,使人们对研究对象的认识进一步精确化。
跨学科研究法:运用多学科的理论、方法和成果从整体上对某一课题进行研究。
功能分析法:这是社会科学用来分析社会现象的一种方法,从某一功能出发研究多个方面的影响。
模拟法:通过创设一个与原型相似的模型来间接研究原型某种特性的一种形容方法。
控制流论文参考文献
[1].王丰峰,张涛,徐伟光,孙蒙.进程控制流劫持攻击与防御技术综述[J].网络与信息安全学报.2019
[2].帕尔哈提江·斯迪克,马建峰,孙聪.一种面向二进制的细粒度控制流完整性方法[J].计算机科学.2019
[3].姬秀娟,孙晓卉,许静.基于复杂控制流的源代码内存泄漏静态检测[J].计算机科学.2019
[4].左万娟,虞砺琨,黄晨,王小丽.一种基于数据流/控制流+知识条目的回归影响域分析方案[J].测试技术学报.2019
[5].沈立,杨耀华,王志英.通过部分Warp重组消除GPGPU控制流的不一致性[J].计算机工程与科学.2019
[6].赵利军,董莎莎.ARMv8ROPshellcode复杂控制流构造[J].计算机应用与软件.2019
[7].李勇钢.基于资源访问控制的控制流劫持检测与防御研究[D].中国科学技术大学.2019
[8].赵益民.完善Coccinelle的控制流功能及测试[D].兰州大学.2019
[9].朱凯龙,陆余良,黄晖,邓兆琨,邓一杰.基于混合分析的二进制程序控制流图构建方法[J].浙江大学学报(工学版).2019
[10].张庆晨.基于数据控制流图的缓冲区溢出漏洞检测方法[D].江苏大学.2019