静态代码检测论文-尹华敏

静态代码检测论文-尹华敏

导读:本文包含了静态代码检测论文开题报告文献综述及选题提纲参考文献,主要关键词:Android,静态代码分析,恶意应用检测,应用功能分类

静态代码检测论文文献综述

尹华敏[1](2019)在《基于静态代码分析的Android应用程序检测技术研究》一文中研究指出Android应用商店作为下载Android应用程序的用户最受欢迎渠道之一,亟需采用有效的Android应用程序检测技术来组织管理庞大的应用,为用户提供安全、便捷的应用下载环境。其中,采用恶意应用程序检测技术,可有效防止恶意应用对用户的潜在危害。以往采用静态检测技术的研究中,都未全面考虑静态代码调用的上下文信息,无法检测到具有高杂性和隐匿性恶意行为的恶意应用。此外,为方便管理应用程序,以便用户能方便快捷地下载满足其所需功能的应用,应用商店也需提供应用功能类别检测技术,即应用程序功能分类技术。现有的应用功能分类技术是人工分类技术和粗粒度自动化分类技术,二者均无法高效准确地处理海量应用。基于以上情况,本文提出并实现了一种基于静态代码分析的Android应用程序检测技术,通过采用静态代码分析技术提取应用程序的静态特征信息,并采用多种机器学习模型,分别实现了恶意应用程序检测技术、应用程序功能分类技术,为应用商店提供了一种高效准确的应用程序自动化管理技术。具体包含以下研究内容:(1)提出了一种基于静态代码调用上下文信息分析的Android恶意应用检测方法。该方法采用静态代码分析技术,提取API调用的上下文信息:包括API的调用信息、API调用的回调函数信息以及与其相关联的其他API调用信息,并结合应用的权限声明信息作为联合特征。进一步地,该方法利用多种过采样算法来解决数据样本分布的不平衡性问题,以随机森林特征作为选择方法筛选特征,并结合多种不同的监督机器学习方法,选取最佳的分类器策略。经过实验验证,所提出的恶意应用程序检测方法达到96.2%的准确率,相比已有的未全面考虑静态代码调用上下文信息的检测方法性能更佳。(2)提出了一种基于静态代码细粒度调用信息分析的Android应用程序功能分类方法,该方法细粒度地考虑了应用程序UI界面的使用概率对应用所使用的特征权重的影响,采用静态代码分析方法更细粒度地提取应用各界面所使用的明文字符、API调用信息。并借鉴PageRank算法,将应用界面间的跳转类比于网页间的跳转,对UI界面分配权重,从而对其所包含的特征分配权重,并结合应用程序的权限声明作为联合特征。进一步地,采用多种过滤特征选择方法对特征进行筛选,并结合多种监督机器学习方法对应用样本学习训练。经过实验验证,本文所提出的应用功能分类方法,在应用功能的10分类标准下,其准确率达到了 86.2%,较已有的未考虑特征权重与UI界面有关的粗粒度分类方法提高了 7.3%。本文所提出并实现的基于静态代码分析的Android应用程序检测技术,为Android应用商店的自动化管理应用程序技术提供了一定的研究与实用价值。(本文来源于《北京邮电大学》期刊2019-03-25)

韩承锋,唐云善,杨维永[2](2019)在《适用于分布式静态检测的Java代码依赖性分析技术》一文中研究指出为满足Java静态分布式检测系统对Java程序源代码解耦分包的需求,解决代码检测单节点单进程运行耗时过长问题,实现分布式检测系统单任务多节点并行运行的目的,本文提出了Java源代码文件间依赖性分析方法.该方法以生成源代码文件抽象语法树的方式抽取文件文本信息,遍历分析抽象语法树,获取文件与其他源代码文件类依赖关系,再通过定位类所在的文件方式得到文件与文件之间依赖关系.同时,以无入边顶点的带环有向图表示文件间依赖关系图,本文提出的方法基于该图进行了文件间解耦的分析.最后,通过对示例程序逐步剖析的实验以及对数个开源工具源代码解耦拆分的实验,验证了本文提出的文件间依赖性分析方法的可行性.(本文来源于《计算机系统应用》期刊2019年03期)

张玮康[3](2018)在《基于恶意代码API的静态检测技术研究》一文中研究指出随着信息技术的发展,利用电脑进行办公在人们生活中变得越发的普遍。同时伴随着网络金融的迅猛发展,数据安全以及个人信息隐私的保护越发受到大众的关注。然而,以病毒和木马为主要代表的一系列恶意代码在不断地威胁着人们的数据安全。目前,恶意代码主要影响的操作系统仍然是微软开发的Windows操作系统。同时,针对恶意代码的检测方法也在不断地发展。其中,如何快速高效地对恶意代码进行检测一直是研究的热门方向。本文通过对恶意代码在信息获取、启动以及反检测等方面的关键技术进行分析研究。将动态行为检测的思路应用在静态检测中,并综合传统静态特征分析方法,对恶意代码在静态环境下进行快速高效的检测。本文在Windows系统下进行了基于恶意代码API的静态检测技术研究,包括:1.将动态分析的思路应用于静态分析的检测中,提出了改进的静态恶意代码特征分析方法,其主要特点为通过构建特征库的形式来实现行为特征的静态分析。通过前期对恶意代码关键技术的分析归纳,提取得到恶意代码的敏感API。通过构建特征库的形式保存敏感API特征,并在检测时用于对样本API特征进行匹配。将匹配结果作为样本的部分特征。通过加入该特征,实现了传统行为分析对于未知恶意代码的高识别度以及静态分析的快速和安全性的优势的结合;2.设计并实现了基于恶意代码API的静态检测模型,并进行了相关性能测试分析。从特征选取、分类器选择等方面对结果的影响进行了比对分析。对本文设计的模型进行了性能测试。测试结果表明,该方法对于恶意代码样本的检测率达到了99.975%,与其他静态检测方法最好结果相比提高约2.2%。与动态分析相比,该方法批量分析10000个文件耗时仅为动态分析单个文件的20%。验证了模型的可行性。综合这些技术,讨论恶意代码在Windows中的功能与隐蔽性的实现方式,分析通过特征库实现对动态特征的静态分析的可行性,以及机器学习的引入对于恶意代码检测的重要意义。从攻击技术的方向,通过研究恶意代码实现的关键技术,有针对性的进行高效地安全检测。(本文来源于《西安电子科技大学》期刊2018-06-01)

方登辉[4](2018)在《基于抽象语法树的代码静态缺陷检测工具开发》一文中研究指出当前软件开发火爆的同时也暴露出越来越多的安全问题。高质量的软件系统是保证系统稳定运行的关键。软件测试是保证软件质量的重要手段。静态代码检测技术作为软件测试重要组成部分,能够在不执行代码的情况下挖掘潜在缺陷,具有发现问题早、检测快速等优点,受到越来越多关注。本文研究了如何从抽象语法树提取信息用于静态代码检测,完成了一个基于抽象语法树的静态代码检测工具的开发。该工具首先使用Clang编译器将源代码转化为抽象语法树,分析缺陷代码和正常代码的差异性,记录区分这些差异性的关键信息如上下文信息、程序结构信息、数据流信息或控制流信息等,然后利用这些关键信息基于GJB安全规范和PVS缺陷库构建检测规则,之后遍历语法树,在遍历过程中调用规则检测,记录违反规则的代码片段及错误信息,最后生成测试报告。本文提出了基于抽象语法树挖掘缺陷的方案设计,用户可基于此框架二次开发扩展规则集,丰富代码缺陷检测能力。本文对github上七个开源项目做了测试,实验发现每个软件都不同程度存在缺陷漏洞。实验结果验证了本工具的有效性,也暴露出当前大部分软件存在编码问题。(本文来源于《北京邮电大学》期刊2018-03-12)

邱子谨[5](2018)在《基于静态分析技术的PHP代码自动化缺陷检测工具的研究与设计》一文中研究指出随着信息时代网络技术的蓬勃发展,计算机网络已逐步成为大众学习、工作、生活中不可缺少的一部分,Web应用系统也影响着我们生活的方方面面。因此,保障Web应用系统的安全,可以降低Web系统被攻击的风险,并有效降低用户因为黑客入侵而造成的损失。PHP语言作为一种动态的开发语言,具有较好的特性,一直以来是Web网站开发者最常用的开发语言之一。所以有必要在PHP开发的网站部署之前,对网站源代码进行检测,尽早发现可能存在的潜在风险,并及时修复可能存在的安全隐患,提前为网站的防御系统添加一层保护盾牌。为了能够在网站部署前尽可能多的发现潜在的安全隐患,本文研究并设计了一款基于静态分析的PHP源码缺陷自动化检测工具。首先,本文对PHP语言的特性以及PHP中常见的漏洞原理进行的分析,为PHP源码静态检测工具的设计奠定了良好的基础,对现有的PHP源码的静态检测工具进行了综述,分析了各个工具的优势与不足,对现有的静态分析技术进行了简单介绍。其次,本文对数据流分析技术和污点分析技术进行了深入研究。在数据流分析技术研究中,本文采用的是基于格的数据流分析框架,该框架检测准确率较高;在污点分析技术的研究中,本文提出了一种基于有效路径的污点分析方法,该方案能够有效的检测由字符编码导致的安全缺陷,如宽字节注入等。之后,本文详细设计并实现了一款名为“MyPHPScan”的基于静态分析技术的PHP源码自动化缺陷检测工具,通过与同类型的静态检测工具实验数据进行对比,发现该工具对污点型漏洞检测效果较好,具有较低的漏报率和误报率。最后,本文对现有的PHP源码静态检测工具进行研究,发现共有的不足,针对不足提出了一种基于统计分析的PHP源码检测优化方案,该方案集成了多个PHP源码静态检测工具。通过对实验理论与数据的分析,证明了该方案能够有效的降低PHP源码缺陷检测的漏报率和误报率。本文在静态分析技术研究中,重点关注的是污点型漏洞的检测。提出的污点分析算法能够更加高效地检测污点型漏洞,最后提出的基于统计分析的PHP源码静态检测优化方案,也有效的改进了静态检测技术在源代码缺陷检测中的不足,对Web网站开发者与运维者而言,具有较好的参考价值。(本文来源于《北京邮电大学》期刊2018-03-10)

章亮[6](2017)在《二进制代码漏洞静态检测研究》一文中研究指出软件漏洞会增加网络安全事件,基于源码的检测在过去十年已经引起安全研究人员的广泛关注了,并在此基础上实现了很多源码漏洞检测工具,检测效果明显。近几年各种商业软件频繁地爆出漏洞,严重影响到企业的安全,因此第叁方应用程序的安全受到越来越多的重视。与高级语言漏洞检测相比,二进制代码由于缺乏程序属性信息且机器码指令相对高级语言更难以理解,因此对二进制代码的检测要困难的多,目前国内外关于这项研究还处于起步阶段。在现有的二进制代码漏洞检测方法中,动态检测是在程序运行时进行检查,往往需要消耗大量CPU资源,自动化程度低。与动态检测相比,静态检测不需要执行程序,而是通过模拟程序执行流程来遍历代码,可以检测程序所有路径,能够在程序执行前检测漏洞,而且不用消耗大量CPU资源,自动化程度高。本文采用静态分析方法,对现代处理器指令集的语义进行分析。将二进制代码转换成更易于理解和分析的中间表示语言,再应用源码分析技术检测转换后的中间表示语言,同时针对现有中间表示语言的不足,本文重新设计了一种易于分析的中间表示语言,并以此中间语言作为检测目标,抽象解释理论作为检测方法,应用抽象域分层的方法提高检测精度,最终实现了二进制代码漏洞静态检测系统Binana。Binana可以检测包括Windows、Linux以及ARM平台的应用程序或者核心组件漏洞,目前已经验证了大量的已知漏洞并且还发现了1个0day漏洞。此外,本文还以Binana作为辅助分析工具,静态分析较大规模的应用软件,并在此基础上检测较大规模程序的漏洞。本文最后通过对不同类型的RTF文档漏洞进行检测,并与现有方法和工具进行对比,验证系统的有效性和实用性。(本文来源于《华侨大学》期刊2017-03-15)

尹钦[7](2017)在《静态与动态分析相结合的PHP代码缺陷检测技术研究与实现》一文中研究指出随着互联网的快速发展,中国网民规模日益扩张,网站总量日益增多,Web应用与人民的生活越来越密切,web页面不再只是简单的静态html页面,而是由各种动态脚本语言开发,PHP由于语法简单上手容易,是目前web应用开发中占比最大的编程语言。然而,Web系统由于存储了大量用户数据而遭受越来越多的黑客攻击,不时有大量用户信息泄露的事件发生。许多初级开发人员都不具备基本的安全知识,所以在产品上线前都得经过安全人员的代码审计。然而人工审计的效率实在太低,而且典型的开源静态代码工具Rips和商业工具Fortify的检测效果都不太好,误报率太高,同时动态工具既不适合某些特定场景又需要大量人工干预,也没有理想的开源动态分析工具,因此,研究并设计一款准确可靠的代码审计系统是当前国内外研究的一个热点。本文在对词法分析、语法分析、数据流分析、Fuzzing技术和反射技术进行研究后,结合作者遇到的实际场景以及做渗透测试时的实际经验,提出了一种静态分析与动态分析相结合的代码缺陷检测技术。静态分析相对效率较高,主要用于分析代码语法,根据自定义的安全规则,通过遍历分析PHP-Parser生成的抽象语法树,准确定位危险函数并进行污点回溯,详细输出污点传播路径。动态分析主要基于反射技术与Fuzzing技术来实现,利用反射技术来动态调用用户自定义的过滤函数,根据预先定义的安全规则,通过对比输入与输出来判断是否为净化函数。(本文来源于《北京邮电大学》期刊2017-03-07)

王丹[8](2016)在《静态代码和模型检测一致性的设计研究》一文中研究指出针对代码与模型之间的不一致性问题,本文提出了一种基于UML模型和Java代码之间的一致性检测方法。首先,给出了怎样检测模型与代码一致性的步骤,对模型检测中所要用到的模型和代码进行预处理,其次设计出模型代码一致性检测的框架,在本文的后面重点研究静态的模型与代码一致性。对静态检测设计了算法,进行了一致性验证研究。(本文来源于《数字技术与应用》期刊2016年05期)

李鹤[9](2015)在《基于多特征的Android恶意代码静态检测方法的研究》一文中研究指出随着移动互联网的快速发展,智能手机和平板电脑等移动设备成了现代人们日常不可或缺的电子设备。而基于Android系统的移动设备在目前的移动市场中占据着主要地位,这就给基于Android系统的恶意代码开发者创造了机会。智能手机等移动设备一旦被感染,攻击者便可轻松地获取用户的大量隐私信息,如用户手机号,地理位置信息等,不但如此,甚至还能够截断用户的短信息接收,删除用户手机中的应用程序,带来了一系列严重的危害。因此,基于Android系统的恶意代码检测技术的研究在目前就显得尤为重要。而传统的基于恶意代码签名的检测方法,虽然能够对恶意软件准确的检测,但对于未知的恶意代码没有作用。因此,本文分析了多种Android静态特征,并通过特征和机器学习识别算法的选择提出了基于多特征的Android恶意代码检测方法。本文提取了Android系统的权限特征,系统API特征以及基于函数调用关系图的结构特征叁类特征。权限特征的提取首先通过反编译Android应用程序包,在得到的配置文件中记录了该应用程序在安装运行时需要申请的系统权限。系统API特征的提取过程为在反编译得到的Dalvik字节码中,检索调用系统API的调用指令,进而对系统API的调用进行提取。基于函数调用关系图的结构特征,是以Android应用程序的函数调用关系图为基础来提取特征的。首先通过静态分析工具Androguard获取Android应用程序的函数调用关系图,然后通过构造函数调用关系图的图核函数计算图之间的相似度。最后,本文针对每种特征分别建立了恶意代码检测模块,并通过模型融合的方式生成了本课题的检测模型。本文通过实验对挖掘出的多类静态特征的检测能力进行了对比分析。实验结果显示,基于函数调用关系图的结构特征与权限和API等文本特征的结合在Android恶意代码的检测中起到了不错的效果。实验显示,本文提出的检测模型能够有效提升对未知Android恶意代码的检测能力。(本文来源于《哈尔滨工业大学》期刊2015-12-01)

李奇军[10](2015)在《基于符号执行的代码静态检测方法研究与实现》一文中研究指出随着软件技术的普及发展,软件系统被应用到我们生活的各个方面,在带来极大便利的同时我们也承受着由软件漏洞所带来的巨大风险。如何有效的保证软件质量是一个极为迫切的需求。在保证软件质量的方法中有两大类,前期可以通过静态分析源代码尽早发现潜在漏洞;后期可以动态运行二进制代码分析实际运行结果。程序的漏洞越早发现其修改成本越小,所以程序静态分析是一种重要的软件质量保证方法。在众多的静态分析方法中,符号执行以其高度的精确性获得了极大关注。符号执行是一种路径敏感上下文相关的分析方法,在计算资源足够充分的情况下它可以对程序进行非常精确地分析,从而发现一些细微的漏洞。然而符号执行理论本身也面临着几大难题,其中包括路径爆炸、约束求解和内存模型。论文首先对近叁十年来符号执行技术的发展进行了概述,讨论了符号执行的基本原理和近年提出的一些改进方法。这些改进包括:在测试数据生成方面提出了动态符号执行,它是一种结合具体值和符号值的方法;在路径爆炸抑制方面提出一些启发式搜索策略;在约束求解方面主要提出了无关约束消除和增量式求解。本文紧接着分析讨论了一种非常强大的中间语言LLVM IR,对其语法构成、数据类型及指令集做了分析,并对其数据类型和指令集进行了形式化描述。本文随后对符号执行中内存模型展开了讨论,对比了当下符号执行理论中各种主流内存模型(名字值模型、数组模型和基于区域的叁元组模型)的优缺点,并提出一种树状结构的内存模型TMM(Tree-memory model)。这种内存模型的核心思想是以树状结构来表示那些嵌套数据。该内存模型能够有效的解决内存模型理论中类型转换、指针与别名和大小不确定数据等难题。本文最后以LLVM IR指令集的一个核心子集和TMM内存模型为基础并集成SMT求解器Z3,实现了一个简单的符号执行引擎SSE(Simple symbolic execution engine),并通过实验验证了SSE和TMM的有效性和先进性。(本文来源于《电子科技大学》期刊2015-04-12)

静态代码检测论文开题报告

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

此处内容要求:

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

写法范例:

为满足Java静态分布式检测系统对Java程序源代码解耦分包的需求,解决代码检测单节点单进程运行耗时过长问题,实现分布式检测系统单任务多节点并行运行的目的,本文提出了Java源代码文件间依赖性分析方法.该方法以生成源代码文件抽象语法树的方式抽取文件文本信息,遍历分析抽象语法树,获取文件与其他源代码文件类依赖关系,再通过定位类所在的文件方式得到文件与文件之间依赖关系.同时,以无入边顶点的带环有向图表示文件间依赖关系图,本文提出的方法基于该图进行了文件间解耦的分析.最后,通过对示例程序逐步剖析的实验以及对数个开源工具源代码解耦拆分的实验,验证了本文提出的文件间依赖性分析方法的可行性.

(2)本文研究方法

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

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

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

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

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

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

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

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

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

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

静态代码检测论文参考文献

[1].尹华敏.基于静态代码分析的Android应用程序检测技术研究[D].北京邮电大学.2019

[2].韩承锋,唐云善,杨维永.适用于分布式静态检测的Java代码依赖性分析技术[J].计算机系统应用.2019

[3].张玮康.基于恶意代码API的静态检测技术研究[D].西安电子科技大学.2018

[4].方登辉.基于抽象语法树的代码静态缺陷检测工具开发[D].北京邮电大学.2018

[5].邱子谨.基于静态分析技术的PHP代码自动化缺陷检测工具的研究与设计[D].北京邮电大学.2018

[6].章亮.二进制代码漏洞静态检测研究[D].华侨大学.2017

[7].尹钦.静态与动态分析相结合的PHP代码缺陷检测技术研究与实现[D].北京邮电大学.2017

[8].王丹.静态代码和模型检测一致性的设计研究[J].数字技术与应用.2016

[9].李鹤.基于多特征的Android恶意代码静态检测方法的研究[D].哈尔滨工业大学.2015

[10].李奇军.基于符号执行的代码静态检测方法研究与实现[D].电子科技大学.2015

标签:;  ;  ;  ;  

静态代码检测论文-尹华敏
下载Doc文档

猜你喜欢