导读:本文包含了代码相似性论文开题报告文献综述及选题提纲参考文献,主要关键词:图标相似性,哈希算法,导入表比对,局部敏感哈希
代码相似性论文文献综述
杨萍,赵冰,舒辉[1](2019)在《基于图标相似性分析的恶意代码检测方法》一文中研究指出据统计,在大量的恶意代码中,有相当大的一部分属于诱骗型的恶意代码,它们通常使用与常用软件相似的图标来伪装自己,通过诱骗点击达到传播和攻击的目的。针对这类诱骗型的恶意代码,鉴于传统的基于代码和行为特征的恶意代码检测方法存在的效率低、代价高等问题,提出了一种新的恶意代码检测方法。首先,提取可移植的执行体(PE)文件图标资源信息并利用图像哈希算法进行图标相似性分析;然后,提取PE文件导入表信息并利用模糊哈希算法进行行为相似性分析;最后,采用聚类和局部敏感哈希的算法进行图标匹配,设计并实现了一个轻量级的恶意代码快速检测工具。实验结果表明,该工具对恶意代码具有很好的检测效果。(本文来源于《计算机应用》期刊2019年06期)
周振飞,方滨兴,崔翔,刘奇旭[2](2017)在《基于相似性分析的WordPress主题恶意代码检测》一文中研究指出已有的主题安全检测方法主要依赖于已知恶意代码特征,无法应对未知恶意代码。文章总结出恶意代码植入主题存在的主题重打包与恶意代码复用两个现象并提出基于相似性分析的恶意代码检测方法。该方法通过对多个主题同时进行分析,根据页面样式相似性得出主题间的同源关系,进而检测出同源主题相异代码与非同源主题相似代码,最后通过阈值与白名单过滤出高度可疑的恶意代码。文章针对252个非官方主题进行实验,检测出17个含有恶意代码的主题。实验证明,该检测方法能够在不依赖特征的情况下检测出未知的恶意代码,一定程度上优于现有的方法。(本文来源于《信息网络安全》期刊2017年12期)
陈鹏,赵荣彩,单征,韩金,孟曦[3](2018)在《基于动静结合的Android恶意代码行为相似性检测》一文中研究指出针对同家族恶意软件行为具有相似性的特点进行研究,提出通过静态分析与动态运行程序相结合的方式度量软件行为的相似性。通过反编译和soot代码转换框架获取程序控制流图,利用行为子图匹配算法从静态方面对程序行为相似性进行度量;通过自动化测试框架运行程序,利用文本无关压缩算法将捕获到的trace文件压缩后进行相似性度量。该检测方法综合静态检测执行效率高和动态检测准确率高的优点,提高了软件行为相似性度量的效率和准确率。实验分析表明,该检测技术能够准确度量程序之间行为的相似性,在准确率上相较于Androguard有大幅提升。(本文来源于《计算机应用研究》期刊2018年05期)
陈鹏[4](2017)在《基于混合特征的Android恶意代码行为相似性检测技术》一文中研究指出同族恶意软件在行为上表现出趋同性和一致性,因此针对同族软件行为具有相似性的特点,我们可以利用已知行为模式评估软件的恶意性和可能产生的危害。基于行为相似的代码检测又划分为动态和静态两种方法。动态检测方法通过在真实或者模拟环境中运行软件,但是检测效率低且不易全面触发恶意行为,很难进行自动化测试;静态检测方法不需要执行程序,通过反编译技术对汇编代码进行控制流和数据流分析,但是无法完全还原经过加密混淆过的代码,无法检测在运行过程中释放的恶意行为,因此静态检测准确率较低。针对上述问题,本文综合当前恶意代码检测技术的研究成果,提出了基于混合特征的Android恶意代码行为相似性检测技术,综合了静态检测执行效率高和动态检测准确率高的优点,论文的研究内容和创新点如下:1.提出了基于程序行为子图的图同构行为判别方式,从静态方面对程序行为的相似性进行度量。首先利用代码转换框架将反编译得到的高级语言代码转换成统一的中间语言代码表示,优化了程序内部的指令格式,进而绘制出程序的行为子图;其次利用子图过滤算法筛除掉与行为相似性度量无关的子图,解决了图匹配为NP问题将会消耗大量的计算资源和占用大量内存的问题,提高了系统运行效率;最终利用图同构算法完成程序静态特征的行为相似性度量。2.设计了Android应用程序动态运行的完整事件流,利用静态检测出的可疑组件作为动态检测运行的指导路径,完善了应用程序内以及应用程序与系统间交互的事件流,解决了动态运行程序覆盖率较低的问题,提高了应用程序执行路径的覆盖率。3.改进了基于文本无关的压缩算法,根据程序运行时的局部性原理对原始的系统调用序列进行压缩处理,压缩后结果集形成不定长的行为序列片段,它们完整地保存了程序行为语义,解决了动态运行程序时产生巨量trace记录带来度量困难的难题,通过对软件行为序列片段的相似性度量,最终完成程序动态特征的行为相似性检测。(本文来源于《解放军信息工程大学》期刊2017-04-20)
程啸[5](2017)在《代码相似性检测及其一致性维护研究》一文中研究指出在软件开发和维护过程中,开发者们经常采用复制代码片段不经过任何修改直接粘贴复用、或者粘贴后经过些许修改后复用的开发方法以提高开发效率,这使得软件系统中存在大量相似的代码片段,这些代码片段被称为克隆。虽然代码克隆可以提高开发效率,但是代码克隆也给软件维护带来了巨大的挑战。当其中一个代码片段发生修改,即与克隆中其他的代码片段的一致性被破坏,很有可能会在软件系统中引入与克隆相关的错误。这些错误不容易被发现而且可能会在软件演化过程中潜伏很长时间,可能会对代码质量造成严重威胁。代码克隆检测能帮助开发者发现软件系统中的相似代码片段,而代码一致性维护能帮助维护者管理这些相似代码片段,从而防止克隆相关的错误的引入。根据克隆代码是否用同一种程序语言编写,可以将代码克隆检测技术分为单语言和跨语言的克隆代码检测。目前,代码克隆检测技术主要针对同一种语言编写的代码的相似性进行检测,跨语言的克隆代码检测研究存在着巨大挑战。不同的程序语言有不同的语法和应用程序编程接口。不同语言的代码片段,即使实现相同的功能,在结构上也有差异,而不同的程序语言之间很少存在共同的中间表示语言来比较代码片段进而区分代码克隆。而现有的跨语言的代码克隆检测技术,仅支持跨.NET语言家族中的语言,这些语言都共享一个中间表示语言。然而,并不是所有程序语言都共享该中间表示语言。为此,本文引入不需要中间表示语言的跨语言克隆检测方法。此外,本文还以移动应用为研究对象,利用该方法进一步探索差异更大的跨平台的代码相似性的检测方法。相似代码的一致性维护则是防止克隆相关错误的另一个关键技术。在同一代码克隆组(对)中,当其中一个克隆实例发生修改时,克隆组(对)中的其他克隆实例可能需要相同或者相似的修改来维持克隆代码之间的一致性。然而,相似代码的一致性维护技术的研究滞后于相似代码的检测,现有的单语言克隆代码的一致性维护技术只能维护差异较小的克隆代码之间的一致性,这并不能满足相似代码一致性维护的需求,为此,本文提出规则制导的对差异较大但仍然存在相似性的代码片段的一致性进行维护的方法。此外,本文还提出一种基于双向变换的相似代码一致性维护方法,同步重构前后结构上差异较大的代码。本文主要的贡献如下:·本文提出第一个无需中间表示语言的检测跨语言克隆的方法CLCMiner。该方法从软件演化的历史版本中挖掘克隆代码,通过比较软件历史版本中的代码变化将跨语言克隆检测问题转化为差异匹配问题。·本文研究不同程序语言编写的不同移动平台的同一应用的标识符的相似性,并透过标识符相似性洞察检测跨平台克隆的可行方法。·本文提出一种规则制导的代码克隆同步的方法CCSync。该方法可以抹平克隆代码相互间的结构上的差异,从克隆关系中提取出同步规则,当克隆中的一个代码片段被更新,通过同步规则自动将更新传导给其他代码片段中。·本文提出一种利用双向变换对重构前后代码进行同步与维护的方法,并应用该方法实现对重构后代码选择性的撤销这一功能,帮助程序员可以保留重构以后代码的修改而撤销重构操作。本文通过在一个具体的重构上实现了选择性的撤销验证了该方法的可行性。本文基于上述方法,开发了对应的工具原型,并设计实验评估其精度和准度,实验结果显示上述方法具有较高的精度与准度,从而验证了上述方法的有效性。(本文来源于《上海交通大学》期刊2017-02-19)
李思宇[6](2017)在《基于局部敏感性哈希的代码相似性检测技术研究》一文中研究指出随着社会的进步,软件系统被广泛运用在日常生活的各个方面,软件系统的代码量不断提升。各类软件系统都有可能面临系统重构和知识产权保护的需求,这就需要对于软件系统源代码进行相似性检测。但是,近些年提出的检测技术对检测效率的提升还有进一步提高的空间。本文通过将局部敏感性哈希应用在高维源代码关键信息矩阵中的近邻搜索,从而快速的得到相似对查询结果。源代码会首先被进行预处理,将源代码转换成q-gram的标识序列。代码段的q-gram标识序列集合通过基于Jplag的相似代码块检测技术进行分类并利用局部敏感性哈希算法将分类结果放置到不同的桶中,在桶中的数据会被重新组织为前缀树形式的数据结构。为了定位不同代码集合中的相似代码对,需要对查询代码段进行相同的哈希运算,可以得到相似概率大于给定阈值的代码块前缀树,利用前缀树的搜索算法对相似代码对进行准确的定位。由于在使用局部敏感性哈希进行分类的过程中就已经将相似的代码块分到同一个桶中,所以可以有效的降低无效查找的时间成本,提高处理效率。本文对基于局部敏感性哈希的代码相似性检测方法进行了研究与分析,提出了使用局部敏感性哈希进行相似代码对快速检索的方法。实验证明了相比原有方法本文提出的方法处理效率提高了约10%。(本文来源于《天津工业大学》期刊2017-01-12)
李思宇[7](2016)在《基于中间表示的代码相似性检测方法》一文中研究指出研究表明软件系统普遍存在重复代码,为了维护和重构系统,人们需要代码相似性检测工具找到重复代码。大部分传统代码相似性检测方法和工具是基于特定程序语言和目标平台,但是许多软件系统包含多种程序语言编写的源代码。为了使代码相似性检测方法不局限于特定语言或平台,本文提出了一种基于中间表示的代码相似性检测方法。中间表示包含了程序的运行的基本信息,并且很少受到语言与平台的影响。所以基于中间表示的代码相似性检测方法能够有效的检测出代码的相似程度,并且具有跨语言和跨平台的特性。这种方法的主要思想是利用编译器将源代码编译为中间表示,再对中间表示进行文本的相似性比较,最后利用局部敏感性哈希高效的检测出相似代码对。实验表明基于中间表示的代码相似性检测方法比其他方法有更高的精确性。(本文来源于《电子技术与软件工程》期刊2016年19期)
戴中印[8](2016)在《基于组件和行为相似性的Android恶意代码检测研究》一文中研究指出近年来,随着移动互联网的飞速发展以及应用APP的兴起,以智能手机为代表的智能设备给人们的生活带来了极大的便利,同时也成为了人们日常生活中必不可少的工具。Android系统因为其开源的特性而受到各大厂商的喜爱,从而成为移动平台上的主流操作系统。在Android系统市场份额不断提高的同时,Android恶意代码已成为危害Android系统用户信息和财产安全的主要因素。根据百度手机卫士最新发布的互联网移动安全报告,Android平台恶意代码已成爆发式增长,如何有效的检测Android平台下恶意代码成为了移动安全领域研究和讨论的重点。本文主要对Android平台恶意代码进行检测,在结合传统检测方法的基础上,提出了恶意因子与组件相似性两方面的静态检测以及调整余弦相似度的代码行为数据分析的动态检测方法,并实现了相应的检测系统原型。本文主要工作包括:对Android平台下恶意代码的检测技术进行了研究,在此基础上提出了本文的检测方法。首先,本文对Android系统的框架结构、系统关键服务进程进行了介绍,分析了Android系统和应用的安全机制,指出了系统和应用安全机制存在的缺陷,并介绍了恶意代码的相关检测技术。接下来本文通过各种技术手段深入分析Android系统上的恶意代码,总结其所常用的各种恶意技术手段,如ELF加密技术、动态加载技术、数据窃取技术等,发现了其所常用API。最后在已知的检测技术上,利用上述两点研究内容,提出了基于静态代码恶意因子的检测方法、基于应用代码组件相似性的检测方法和基于调整余弦相似度的代码行为数据分析方法。首先通过静态代码恶意因子的检测方法,静态遍历应用的权限和组件信息,计算出应用的恶意因子,然后利用组件相似性的检测方法,检测应用是否为重打包的恶意样本,最后通过动态注入技术获得应用运行时的行为数据,利用调整余弦相似度算法计算应用同相同类型的恶意代码行为数据的相似度。通过结合这叁种检测方法对应用进行检测,最终给出应用的检测报告。设计、实现并测试了Android平台下恶意代码的检测系统原型。基于上述提出的恶意因子和组件相似性的静态分析方法,实现了检测系统的静态快速检测;通过调整余弦相似度算法,实现了应用代码行为数据的动态检测。该检测系统能够全面的对Android平台上的恶意代码进行检测,不仅可以避免动态加载、代码混淆等技术干扰,而且可以提高恶意代码的检测速度,减轻分析人员的工作量。(本文来源于《电子科技大学》期刊2016-03-30)
王春晖[9](2015)在《一种基于串匹配的程序代码相似性识别方法》一文中研究指出相同功能的程序代码之间存在较高的相似度,识别出这些相似的代码有助于代码的抄袭检测、软件中克隆代码检测以及代码同源性检测。将程序转换成了一些量化的标识串(Token),然后使用高效的RKR-GST串匹配算法找出每对Token串的所有最长公共子串,然后根据公式计算相似度,最后根据相似度的值作为判定相似性的依据。(本文来源于《黑龙江科技信息》期刊2015年29期)
江志雄[10](2015)在《基于函数调用图比对的恶意代码相似性分析技术研究与实现》一文中研究指出恶意代码相似性分析是恶意代码检测、防范以及同源关系研究等领域里比较重要比较基础的工作之一。恶意代码的发展逐渐呈现出一种模块高度复用、变种演变速度较快的特点,相似性分析就比较适合针对这样的特点对恶意代码进行更细致的离线分析。本文提出了一种恶意代码相似性度量的方法,该方法基于函数调用图,充分利用恶意代码函数的指令序列信息和函数调用关系的结构信息,通过计算函数调用图之间的相似匹配和转化成本来度量恶意代码的相似性程度,最后对原型系统进行了设计和实现。本文利用IDA Pro反汇编工具对恶意代码进行反汇编,采用IDC脚本编写的插件对静态特征中的函数指令序列和函数调用关系图进行提取,并对相关信息进行标准化描述和存储。考虑到恶意代码指令序列的相似性比较与生物信息学中的基因序列比对存在着相似点,故采用双序列比对算法来比较函数指令序列的相似程度。同时,利用邻接矩阵计算函数调用关系的相似程度。在此基础上,为参与比对的函数调用图建立带权的完全二分图,将前面计算的两个特征的相似性分数结合起来作为图中的对应函数之间的边的权值,利用完全二分图的最大权匹配算法Kuhn-Munkres算法找出最佳匹配,算出该匹配的最大权值,并计算出两图进行相似转化的最小匹配成本,以此度量恶意代码样本的相似性。借鉴生物信息学中构建系统发生树的方法,利用UPGMA法对样本间的相似性分数进行层次聚类处理,构建样本集的聚合树,计算并展现恶意代码样本间的相似关系。函数调用图是一种不容易受到代码混淆等影响的结构性特征,本文提出的基于函数调用图的相似性比较方法充分利用了恶意代码底层的结构特征和指令信息以及函数之间的内在关联,提高了比较的准确性,能比较深入的刻画函数的相似性以及函数调用关系间的相似性,有效的反映出恶意代码之间的相似关系,有助于了解恶意代码家族之间的关系以及它们的演变和发展情况。(本文来源于《国防科学技术大学》期刊2015-05-01)
代码相似性论文开题报告
(1)论文研究背景及目的
此处内容要求:
首先简单简介论文所研究问题的基本概念和背景,再而简单明了地指出论文所要研究解决的具体问题,并提出你的论文准备的观点或解决方法。
写法范例:
已有的主题安全检测方法主要依赖于已知恶意代码特征,无法应对未知恶意代码。文章总结出恶意代码植入主题存在的主题重打包与恶意代码复用两个现象并提出基于相似性分析的恶意代码检测方法。该方法通过对多个主题同时进行分析,根据页面样式相似性得出主题间的同源关系,进而检测出同源主题相异代码与非同源主题相似代码,最后通过阈值与白名单过滤出高度可疑的恶意代码。文章针对252个非官方主题进行实验,检测出17个含有恶意代码的主题。实验证明,该检测方法能够在不依赖特征的情况下检测出未知的恶意代码,一定程度上优于现有的方法。
(2)本文研究方法
调查法:该方法是有目的、有系统的搜集有关研究对象的具体信息。
观察法:用自己的感官和辅助工具直接观察研究对象从而得到有关信息。
实验法:通过主支变革、控制研究对象来发现与确认事物间的因果关系。
文献研究法:通过调查文献来获得资料,从而全面的、正确的了解掌握研究方法。
实证研究法:依据现有的科学理论和实践的需要提出设计。
定性分析法:对研究对象进行“质”的方面的研究,这个方法需要计算的数据较少。
定量分析法:通过具体的数字,使人们对研究对象的认识进一步精确化。
跨学科研究法:运用多学科的理论、方法和成果从整体上对某一课题进行研究。
功能分析法:这是社会科学用来分析社会现象的一种方法,从某一功能出发研究多个方面的影响。
模拟法:通过创设一个与原型相似的模型来间接研究原型某种特性的一种形容方法。
代码相似性论文参考文献
[1].杨萍,赵冰,舒辉.基于图标相似性分析的恶意代码检测方法[J].计算机应用.2019
[2].周振飞,方滨兴,崔翔,刘奇旭.基于相似性分析的WordPress主题恶意代码检测[J].信息网络安全.2017
[3].陈鹏,赵荣彩,单征,韩金,孟曦.基于动静结合的Android恶意代码行为相似性检测[J].计算机应用研究.2018
[4].陈鹏.基于混合特征的Android恶意代码行为相似性检测技术[D].解放军信息工程大学.2017
[5].程啸.代码相似性检测及其一致性维护研究[D].上海交通大学.2017
[6].李思宇.基于局部敏感性哈希的代码相似性检测技术研究[D].天津工业大学.2017
[7].李思宇.基于中间表示的代码相似性检测方法[J].电子技术与软件工程.2016
[8].戴中印.基于组件和行为相似性的Android恶意代码检测研究[D].电子科技大学.2016
[9].王春晖.一种基于串匹配的程序代码相似性识别方法[J].黑龙江科技信息.2015
[10].江志雄.基于函数调用图比对的恶意代码相似性分析技术研究与实现[D].国防科学技术大学.2015