软件逆向分析论文-周祥

软件逆向分析论文-周祥

导读:本文包含了软件逆向分析论文开题报告文献综述及选题提纲参考文献,主要关键词:软件安全,逆向分析,污点分析,反调试

软件逆向分析论文文献综述

周祥[1](2017)在《低代价的软件防逆向分析方法研究与实现》一文中研究指出伴随着软件行业不断的发展,随之产生的软件逆向问题也变得越发重要。针对软件逆向的保护技术也层出不穷,如虚拟机保护技术、加壳保护技术、API保护技术、反调试保护技术等等。这些保护技术一般分为两类,一类是利用加密算法或程序结构变化使程序变的极其复杂,晦涩难懂,给逆向分析人员在逆向程序的过程中造成困扰,进而达到保护程序的目的。另一类是对逆向分析过程中使用到的信息和方法进行针对性保护。第一类方法保护强度大但往往容易对程序的性能造成较大的影响,第二类方法虽然不会对程序造成较大的影响但是其存在着容易被去除的缺点。针对这些问题,本文提出低代价的防逆向分析方法,此方法具体的由两种方法组成,分别是反污点分析方法和隐式反调试方法,它们是针对逆向分析过程中的关键步骤设计而成,在不对程序性能造成较大损耗的前提下提高程序的抗逆向分析能力。针对逆向分析根据程序数据流获取程序控制流这一环节设计了反污点分析方法,通过叁种技术实现了对污点数据的漂白,可以有效保护程序的敏感数据不被跟踪,进一步保护程序数据流信息,使目标程序防逆向能力提升。针对一般反调试容易被去除的问题提出隐式反调试方法,将程序的调试信息与运行信息相结合,由于其隐藏了反调试保护方法的特征,所以在反调试的同时也提升了反调试被发现和去除的难度。这两种方法都不会对程序造成较大的性能损耗。最后根据本文所提出的方法实现了低代价的防逆向分析原型系统,它结合了本文所提出的方法,可以对程序进行保护,使程序的防逆向能力提升。最后通过有效性分析分析了本文方法的有效性,实验表明本文所提出方法不会对程序造成较大的性能损耗。(本文来源于《西北大学》期刊2017-06-01)

井靖,蒋烈辉,刘铁铭,司彬彬,曾韵[2](2016)在《软件逆向分析过程中的多维图谱抽取方法》一文中研究指出由于软件逆向分析过程中产生的结果通常是形式化的符号,且复杂难懂,因此基于软件逆向分析进行代码阅读或漏洞挖掘等工作的效率非常低下。针对这种情况,首先设计多维图谱抽取框架,基于该框架定义多维图谱描述约束(schema),使多维图谱抽取与具体的逆向分析过程之间相互独立;给出逆向分析算法库的构造方式及算法库调用接口,实现基于多维图谱描述的抽象图谱生成;设计基于图形描述语言DOT的抽象图谱转换接口,实现抽象图谱的快速可视化;最后给出多维图谱抽取算法。实验结果表明,采用该方法能有效提高逆向分析过程中生成结果的可读性,大幅提升分析人员代码阅读及漏洞挖掘的工作效率。(本文来源于《计算机应用与软件》期刊2016年04期)

井靖,何红旗,司彬彬,朱晓青,刘春玲[3](2015)在《嵌入式软件逆向分析中的动静态分析交互机制》一文中研究指出由于动静态分析相结合的软件逆向分析方法缺乏规范的交互模式,软件逆向分析工作的效率低下,可复用性不强。基于嵌入式软件动静态分析流程,提出了由静至动(STD)、由动至静(DTS)以及动静结合(SDM)的3种动静态分析交互机制,详细给出了3种交互机制的实现方法。测试结果表明,STD、DTS和SDM交互机制适用于静态分析结果中异常结点的修正,动态提取信息的优化以及隐藏代码的识别等,能大幅提高嵌入式软件逆向分析工作的效率。(本文来源于《信息工程大学学报》期刊2015年05期)

刘铁铭,井靖,朱晓青,张有为,司彬彬[4](2015)在《《软件逆向分析》课程中任务驱动式教学模式研究》一文中研究指出《软件逆向分析》是重点培养学员逆向思维和软件逆向分析能力的一门课程。课程教学采用以教员为中心的传统教学模式已不能满足新的人才培养目标要求,需要从根本上进行改变。以此为出发点,课程组把任务驱动式教学模式引入教学实施各环节,试图构建一种新的以教员为主导、学员为主体的教学模式。本文正是基于这种教学实践,总结课程组近年来在教学实施过程中的一些具体做法,重点介绍了本课程任务驱动式教学的模式构建、任务设计和实施步骤。(本文来源于《中国电子教育》期刊2015年03期)

邱景[5](2015)在《面向软件安全的二进制代码逆向分析关键技术研究》一文中研究指出二进制代码逆向分析是一种针对二进制代码的程序分析技术。它在源代码无法获取的情形中至关重要。如在恶意软件检测与分析中,由于恶意软件作者往往不公开源代码,二进制代码逆向分析几乎是唯一的分析手段。在对商业软件的安全审查以及抄袭检测中,由于没有源代码,也只能对其二进制代码进行分析。二进制代码逆向分析技术还可以应用于加固现有软件,减少安全漏洞,也可以用于阻止软件被破解,防止软件被盗版,保护知识产权。当前,无论是在巨型计算机,还是在智能手机以及嵌入式设备中,绝大多数软件都是以二进制代码形式发布。所以,研究二进制代码逆向分析对于提高计算机软件的安全性,具有重要的科学理论意义和实际应用价值。由于二进制代码和源代码间存在巨大的差异,使得二进制代码逆向分析相对于程序源代码分析要困难得多。混淆技术的使用和编译器优化也会增加对二进制代码进行分析的难度。此外,为保护软件不被检测和分析,恶意软件会使用各种反分析方法,如基于完整性校验的反修改和基于计时攻击的反监控。为分析这些软件,需要对抗这些反分析。这又进一步增加了二进制代码逆向分析的难度。本文重点对二进制代码反分析的识别,反汇编,函数和库函数的识别等关键技术进行深入研究。针对当前反分析识别的研究都只针对特定类型的反分析设计特定的反分析识别方法、缺乏通用性的问题,分析了各种反分析方法之间的概念相似性,提出了一个基于信息流的反分析识别框架。针对当前对抗基于完整性校验的反修改需使用硬件辅助且不能处理自修改代码的问题,研究了一个无需硬件辅助的基于动态信息流的识别方法。首先使用后向污点分析来识别可执行内存位置或用来计算可执行位置值的内存位置,然后使用前向污点分析来识别校验过程。对于基于计时攻击的反监控,亦可以使用这种方法识别。首先将常见获取时间的指令和系统调用的返回值作为污点源,然后使用污点分析识别验证过程。本文方法可以成功识别现有研究文献中的基于完整性校验的反修改和基于计时攻击的反监控技术,并提供识别出的反分析的基础结构信息,进而可以帮助分析人员设计出对抗这些反分析的技术。针对当前动静结合反汇编方法仍存在覆盖率低的问题,研究了一种多路径探索方法来反汇编代码。静态反汇编无法区分可执行代码区域中的数据和代码,也无法处理自修改代码。动态反汇编方法代码覆盖率低,只会处理已执行的路径。本文使用基于二进制插桩技术的动态分析技术记录程序指令执行轨迹,并通过逆转已执行路径中的条件分支来实现多路径探索,从而提高动态分析的覆盖率。然后精简合并所有执行轨迹。最后使用静态反汇编来发现未处理区域中的代码。该方法能够高准确度高覆盖率地反汇编二进制代码。当前函数识别方法无法识别无交叉引用和无头尾特征的函数。针对这个问题,研究了一个以函数返回指令为识别特征的函数识别方法。因为一个函数至少有一个返回指令使得控制流离开函数,因此,相比传统方法使用的函数头尾特征,本文采用的返回指令作为识别特征更可靠。首先引入逆向扩展控制流图(Reverse Extended Control Flow Graph,RECFG)的概念。它是特定代码区域中,包含指定返回指令所有可能的控制流图集合。然后提出一种基于RECFG的函数识别方法,该方法首先从一个代码区域中的所有可解释为返回指令的地址开始逆向分析控制流图,构造RECFG。设计了4个图剪枝规则来移除非编译器正常生成的点和路径。然后对于每个独立的RECFG,最后使用多属性决策方法来挑选一个子图作为函数的控制流图。该方法可以准确地识别特定代码区域中可能的函数。针对传统库函数识别方法无法识别内联库函数的问题,研究了一个识别库函数的新方法。由于内联及优化的库函数存在非连续性和多态性,传统的基于函数头n个字节的特征匹配方法无法识别内联函数。本文首先引入执行流图(Execution Flow Graph,EFG)的概念,用EFG来描述二进制代码的内在行为特征。然后通过在目标函数中识别相似EFG子图来识别库函数。通过分析其各指令内执行依赖关系识别目标函数中非连续内联库函数。通过指令标准化识别经编译优化后存在的多形态内联库函数。由于子图同构测试非常耗时,因此本文定义了5个过滤器过滤掉不可能匹配的子图,并引入收缩执行流图(Reduced Execution Flow Graph,REFG)来加速子图同构测试。EFG和REFG方法的查准率都比当前最先进的工具高,并可以准确地识别传统方法难以识别的内联库函数。相对于EFG,REFG可以在保持相同查准率和查全率的情况下显着降低EFG方法的处理时间。综上所述,上述方法为识别包括基于完整性校验的反修改在内的反分析、提高动态反汇编方法覆盖率、识别无交叉引用无明显头尾特征的函数、快速识别库函数等关键技术问题提供了新思路和新方法。(本文来源于《哈尔滨工业大学》期刊2015-09-01)

徐天伦,林云,彭鑫,赵文耘[6](2015)在《面向页面流的Web软件可变性逆向分析》一文中研究指出面向特定领域的Web应用软件开发通常是通过代码级的复用开发多个相似的变体产品。随着这种变体产品数量和复杂性的不断增长,如何分析并掌握这些变体产品的整体共性和差异性状况成为一个关键问题。针对这一问题,提出基于Web软件的页面流,通过逆向分析技术实现对于可变性的逆向分析。所提出的逆向分析方法能够产生带有可变性描述的页面流程图,从而辅助开发人员理解变体Web软件产品在页面流程方面的共性和差异性。该方法已经被实现为一个包含逆向分析和图形化展示功能的支持工具,并通过一个案例研究初步验证了其有效性。(本文来源于《计算机应用与软件》期刊2015年08期)

彭建山,张咪,曹宇[7](2015)在《夺旗竞赛引入软件逆向分析实践教学的探索》一文中研究指出针对软件逆向分析课重点培养学生逆向思维能力的教学实际,结合该课程和夺旗竞赛都存在正向逆向对抗的特点,在实践教学中引入夺旗竞赛形式,通过学习效果验证了该教学方式的有效性。(本文来源于《科教导刊(中旬刊)》期刊2015年05期)

马开睿[8](2015)在《基于Android的应用软件逆向分析及安全保护》一文中研究指出自从Google公司2007年发布Android系统以来,Android发展迅猛,目前已经广泛用于手机、智能家电、汽车等行业。伴随着Android的发展,其面临的安全威胁也越来越多,恶意软件数量呈爆发式增长,应用软件版权不断遭到侵害。应用软件盗版与破解,恶意代码植入等安全问题越发严峻。针对恶意软件带来的威胁,对恶意程序进行研究,理解恶意程序的执行过程和方法,针对软件被恶意注入,提出防范措施,对保护软件的安全具有重要作用。论文详细分析了Android的安全机制及当前机制所面临的安全缺陷,研究了常用的Andrord应用程序逆向分析方法,讨论了恶意软件的恶意行为,并以一个曾经产生过重要危害的恶意软件为样本,使用逆向分析技术与工具对恶意软件进行分析,在此基础上,梳理出对Android恶意软件进行分析的注意点,总结出具有可操作性的逆向分析Android应用的一般步骤。为了进一步验证Android系统面临的安全风险以及权限分配机制缺陷,更直观地体验恶意软件的行为实施过程,针对Android应用的如下风险点:(1)可以通过第叁方进行下载安装应用软件,(2)可通过权限控制对Android设备中隐私数据的窃取,(3)利用群发短信的方式传播含恶意代码的程序。本文设计了一款针对Android系统一般风险点的恶意软件,并将恶意代码注入到目标应用程序,对恶意代码功能进行测试。针对应用软件能被恶意注入的情况,在对现有软件保护技术和方法研究基础上,结合Android应用自身特点,提出利用混淆java代码、利用加壳器技术、反动态调试、防止程序二次打包等一系列方法来保护应用软件,防止软件被逆向工程,被重新修改打包。综合利用这些方法,可对软件的保护起到一定的积极作用。(本文来源于《西南交通大学》期刊2015-05-01)

赵北庚[9](2015)在《软件逆向分析过程中基于OllyDbg的叁种汇编代码定位方法》一文中研究指出软件逆向分析技术在信息安全领域中发挥着至关重要的作用。软件逆向分析过程中,对汇编代码的定位速度极大地影响着工作效率。本文以Olly Dbg为调试工具,结合具体的实例,总结和分析了叁种汇编代码定位思路。(本文来源于《网络安全技术与应用》期刊2015年02期)

朱珊[10](2014)在《基于动态二进制平台的软件网络通信过程逆向分析》一文中研究指出本文提出了使用二进制平台进行通信软件的逆向分析,先将目标函数的数据和信息进行记录和监控,为了提高通信的效率采用了多线程的方式进行信息的传输,为了使多线程达到同步传输信息的目的,使用了事件对象的方式,最后通过使用I/O通信,从而达到通信软件的逆向分析。(本文来源于《电子技术与软件工程》期刊2014年18期)

软件逆向分析论文开题报告

(1)论文研究背景及目的

此处内容要求:

首先简单简介论文所研究问题的基本概念和背景,再而简单明了地指出论文所要研究解决的具体问题,并提出你的论文准备的观点或解决方法。

写法范例:

由于软件逆向分析过程中产生的结果通常是形式化的符号,且复杂难懂,因此基于软件逆向分析进行代码阅读或漏洞挖掘等工作的效率非常低下。针对这种情况,首先设计多维图谱抽取框架,基于该框架定义多维图谱描述约束(schema),使多维图谱抽取与具体的逆向分析过程之间相互独立;给出逆向分析算法库的构造方式及算法库调用接口,实现基于多维图谱描述的抽象图谱生成;设计基于图形描述语言DOT的抽象图谱转换接口,实现抽象图谱的快速可视化;最后给出多维图谱抽取算法。实验结果表明,采用该方法能有效提高逆向分析过程中生成结果的可读性,大幅提升分析人员代码阅读及漏洞挖掘的工作效率。

(2)本文研究方法

调查法:该方法是有目的、有系统的搜集有关研究对象的具体信息。

观察法:用自己的感官和辅助工具直接观察研究对象从而得到有关信息。

实验法:通过主支变革、控制研究对象来发现与确认事物间的因果关系。

文献研究法:通过调查文献来获得资料,从而全面的、正确的了解掌握研究方法。

实证研究法:依据现有的科学理论和实践的需要提出设计。

定性分析法:对研究对象进行“质”的方面的研究,这个方法需要计算的数据较少。

定量分析法:通过具体的数字,使人们对研究对象的认识进一步精确化。

跨学科研究法:运用多学科的理论、方法和成果从整体上对某一课题进行研究。

功能分析法:这是社会科学用来分析社会现象的一种方法,从某一功能出发研究多个方面的影响。

模拟法:通过创设一个与原型相似的模型来间接研究原型某种特性的一种形容方法。

软件逆向分析论文参考文献

[1].周祥.低代价的软件防逆向分析方法研究与实现[D].西北大学.2017

[2].井靖,蒋烈辉,刘铁铭,司彬彬,曾韵.软件逆向分析过程中的多维图谱抽取方法[J].计算机应用与软件.2016

[3].井靖,何红旗,司彬彬,朱晓青,刘春玲.嵌入式软件逆向分析中的动静态分析交互机制[J].信息工程大学学报.2015

[4].刘铁铭,井靖,朱晓青,张有为,司彬彬.《软件逆向分析》课程中任务驱动式教学模式研究[J].中国电子教育.2015

[5].邱景.面向软件安全的二进制代码逆向分析关键技术研究[D].哈尔滨工业大学.2015

[6].徐天伦,林云,彭鑫,赵文耘.面向页面流的Web软件可变性逆向分析[J].计算机应用与软件.2015

[7].彭建山,张咪,曹宇.夺旗竞赛引入软件逆向分析实践教学的探索[J].科教导刊(中旬刊).2015

[8].马开睿.基于Android的应用软件逆向分析及安全保护[D].西南交通大学.2015

[9].赵北庚.软件逆向分析过程中基于OllyDbg的叁种汇编代码定位方法[J].网络安全技术与应用.2015

[10].朱珊.基于动态二进制平台的软件网络通信过程逆向分析[J].电子技术与软件工程.2014

标签:;  ;  ;  ;  

软件逆向分析论文-周祥
下载Doc文档

猜你喜欢