首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到19条相似文献,搜索用时 140 毫秒
1.
静态分析方法可以自动地提取软件的行为信息,从而检测出软件中的安全漏洞。和其他程序分析方法相比,该方法具有自动化程度高和检测速度快的优点。本文介绍了Java语言的安全漏洞的故障模式,说明了类型推断、数据流分析和约束分析等主要静态分析方法及两种特别的分析方法,最后介绍了几种常用的静态代码安全检测工具。  相似文献   

2.
随着计算机软件技术的快速发展,由软件代码缺陷引起的安全问题也日趋严重。通过对静态分析技术以及静态检测工具的深入研究,针对当前静态检测工具误报率、漏报率较高的问题,提出一个多策略的软件代码缺陷检测方法。该方法平台一方面综合运用多种静态检测工具进行检测,对比单个检测工具降低误报率,扩大检测覆盖率;另一方面,对确定性不高的静态检测结果进一步进行动态检测,不但降低静态检测的误报率,而且还能发现静态检测技术检测不到的缺陷,降低漏报率。实验结果证明,多策略检测方法是一个有效的软件漏洞检测方法。  相似文献   

3.
软件测试是排除软件故障,提高软件质量和可靠性的重要手段。从是否需要执行被测程序角度考虑,软件测试分为静态测试和动态测试。动态测试通过输入测试数据,动态执行程序来发现软件中存在的错误。尽管动态测试能发现部分软件错误,但对于一些特殊类型错误的检测无效。鉴于此,本文采取了一种特殊的静态分析技术来实现对代码的测试。本文首先讨论了传统软件测试方法的缺点和局限性,给出了软件的故障模型,进而提出了基于抽象语法树的静态分析技术,并给出了故障自动检测算法。依据该算法开发了自动化测试工具,给出了实验结果和对比分析,并指出了下一步的研究方向。  相似文献   

4.
主要介绍了通过ANSOFT软件对直线步进电机进行静态力分析的方法,分析了气隙大小对电机性能的影响,并且通过与实验结果的比较,证明了该分析方法和软件的正确性和可用性。  相似文献   

5.
介绍了现代源代码分析技术中使用的安全规则,并对此技术可以测试出的软件中存在的内存管理、变量未初始化、空指针引用、数组访问越界或异常四类主要代码缺陷和缓冲区溢出等安全漏洞类缺陷几大问题做了研究。通过介绍一个基于源代码分析的静态测试工具Klocwork,提出了基于源代码分析技术的静态测试过程的四个阶段并对其进行分析,总结了其应用到大型航天软件中存在的一些问题,并说明解决其相应难题还需要准备进一步的研究工作。  相似文献   

6.
介绍了电压稳定性的概念及NEPLAN软件,时常用的电压稳定静态分析方法进行了较详细的分析.运用NEPLAN的电压稳定模块可有效判断系统电压是否稳定,并可找出影响电压稳定的薄弱母线和薄弱区域以及影响电压稳定性的一些关键因素;以一个23节点系统为例,分析说明了NEPLAN软件在电力系统电压稳定性静态分析方面的应用情况.  相似文献   

7.
基于抽象语法树的代码静态自动测试方法研究   总被引:1,自引:0,他引:1  
软件测试是排除软件故障,提高软件质量和可靠性的重要手段。从是否需要执行被测程序角度考虑,软件测试分为静态测试和动态测试。动态测试通过输入测试数据,动态执行程序来发现软件中存在的错误。尽管动态测试能发现部分软件错误,但对于一些特殊类型错误的检测无效。鉴于此,本文采取了一种特殊的静态分析技术来实现对代码的测试。本文首先讨论了传统软件测试方法的缺点和局限性,给出了软件的故障模型,进而提出了基于抽象语法树的静态分析技术,并给出了故障自动检测算法。依据该算法开发了自动化测试工具,给出了实验结果和对比分析,并指出了下一步的研究方向。  相似文献   

8.
静态分析是检测软件代码缺陷和提升软件代码质量的有效方式. 由于静态分析不实际运行代码,不能获取足够的运行时信息,因此分析结果的准确性有待提高. 相比而言,符号执行技术能够模拟执行程序并收集大量的数据流信息,提升数据流分析的准确程度,弥补静态分析的不足. 为了提高静态分析工具分析程序缺陷的准确性,本文设计并实现了一个代码缺陷检测工具ABAZER-SE,它基于GCC抽象语法树,综合采用符号执行与静态分析技术以检测源代码中的缺陷. 使用Toyota ITC静态分析基准对该工具进行了评估,实验结果表明,本文方法及工具可以提高静态分析结果的准确性.   相似文献   

9.
黄玉文 《科技信息》2010,(25):I0095-I0095,I0199
提出了一种基于二进制代码的缓冲区溢出漏洞检测模型,该模型采用静态检测技术和动态检测技术相结合的方法,最大程度的检测程序中可能存在的缓冲区溢出漏洞,并且对静态检测和动态检测的结果进行人工分析,以提高检测的准确率。  相似文献   

10.
软件测试是软件工程的重要组成部分,程序静态分析技术是软件测试中静态测试的基础,该技术通过对程序源代码进行分析以发现其中的错误.文章提出了一种程序静态分析方法,建立了一个树形结构的模型PAT(Program Analysis Tree)形式化描述了Java程序,准确地描述了Java程序的逻辑结构.最后给出了一个基于此模型的程序分析方法.  相似文献   

11.
随着计算机技术的成熟和Internet技术在各行各业的应用,信息安全问题变得越来越重要.各种各样的软件漏洞可能会被病毒、木马利用而产生各种各样的信息安全问题.在所有的软件漏洞中,数据驱动型漏洞是最常见的、也是最容易被利用的漏洞之一.目前的检测工具往往不够深入,仍然存在许多的不足.该文提出了一种基于语义分析的数据驱动型漏洞的静态检测算法.该算法定义了漏洞的词法成分和语法成分,在词法分析和语法分析的基础上,实现了对漏洞的语义层次检测.与传统的采用编译原理方法实现的静态检测工具相比,本算法实现了对数据驱动型漏洞更准确的检测.最后,设计并实现了一个静态检测原型系统,并通过实验证明了系统的有效性.  相似文献   

12.
基于IEC61850的智能变电站严重依赖于信息和通信技术,信息安全成为不得不面对的新问题。从智能变电站信息安全脆弱性和传统信息安全评估手段的局限性2个方面对智能变电站的安全现状进行分析,提出了可覆盖智能变电站信息系统和控制系统的安全脆弱性评估方法。该方法分别采用已知漏洞扫描技术、未知漏洞挖掘技术以及静态评估方法,分别对智能变电站的各层设备和日常管理进行安全评估工作。通过对智能变电站实验环境的现场实际测试,发现了存在于信息系统、自动化设备中的系统漏洞,验证了该方法评估智能变电站信息安全脆弱性的有效性。应用该方法可以实现对智能变电站信息和控制系统潜在安全漏洞的多方位管控,提升智能变电站的整体安全。  相似文献   

13.
智能合约是区块链三大特点之一,也是区块链具有应用价值和灵活性的领域.本质上,智能合约是一段用特定脚本语言实现的代码,不可避免地存在安全漏洞风险.如何及时准确地检查出各种智能合约的漏洞,就成为区块链安全研究的重点和热点.为了检测智能合约漏洞,研究者提出了各种分析方法,包括符号执行、形式化验证和模糊测试等.随着人工智能技术的快速发展,越来越多基于深度学习的方法被提出,并且在多个研究领域取得了很好的效果.目前,针对基于深度学习的智能合约漏洞检测方法并没有被详细地调查和分析.本文首先简要介绍了智能合约的概念以及智能合约漏洞相关的安全事件;然后对基于深度学习的方法中常用的智能合约特征进行分析;同时对智能合约漏洞检测中常用的深度学习模型进行描述.此外,为了进一步推动基于深度学习的智能合约漏洞检测方法的研究,本文将近年来基于深度学习的智能合约漏洞检测方法根据其特征提取形式进行了总结分类,从文本处理、静态分析和图像处理3个角度进行了分析介绍;最后,总结了该领域面临的挑战和未来的研究方向.  相似文献   

14.
为解决大规模漏洞分类问题,提出一种基于卷积神经网络(convolutional neural network,CNN)的漏洞自动分类方法,借鉴深度学习的技术思想自动获取漏洞描述的相关局部特征,通过batchnorm规范化数据解决文本训练不稳定问题,进而实现漏洞类型的有效划分.实验表明,与传统方法相比,该方法在漏洞自动分类效率上能够得到显著的提高.   相似文献   

15.
一种防范多阶段网络攻击的综合分析方法   总被引:1,自引:0,他引:1  
提出了一种防范多阶段网络攻击的综合分析方法,首先捕获系统漏洞、攻击者的能力、以及这些信息之间的关系,将其模型化;然后利用改进的模型检测器NuSMV自动产生只包含能对系统造成危害的漏洞的攻击链;最后以攻击链为基础建立简化的攻击树,通过将攻击树量化进行风险评估、可靠性评估、最短路径分析等等。仿真实验表明该方法不仅能够有效的防范多阶段攻击,而且能够对网络进行脆弱性评估。  相似文献   

16.
用符号值作为输入, 模拟程序执行, 提取执行路径上相应的约束条件, 即安全约束、攻击约束以及防御约束, 并构成可满足矩阵(SAT)以及不可满足矩阵(UNSAT)两个注入类漏洞安全分析与检测模型, 矩阵模型的求解结果可映射为注入类安全漏洞的安全状态。对Web应用注入类漏洞的检测实验表明, 与目前安全分析主流工具相比, 该分析技术具有降低误报率、漏报率、能自动生成攻击向量等优点。  相似文献   

17.
With the rapid development of software technology, software vulnerability has become a major threat to computer security. The timely detection and repair of potential vulnerabilities in software, are of great significance in reducing system crashes and maintaining system security and integrity. This paper focuses on detecting three common types of vulnerabilities: Unused_Variable, Use_of_Uninitialized_Variable, and Use_After_ Free. We propose a method for software vulnerability detection based on an improved control flow graph(ICFG) and several predicates of vulnerability properties for each type of vulnerability. We also define a set of grammar rules for analyzing and deriving the three mentioned types of vulnerabilities, and design three vulnerability detection algorithms to guide the process of vulnerability detection. In addition, we conduct cases studies of the three mentioned types of vulnerabilities with real vulnerability program segments from Common Weakness Enumeration(CWE). The results of the studies show that the proposed method can detect the vulnerability in the tested program segments. Finally, we conduct manual analysis and experiments on detecting the three types of vulnerability program segments(30 examples for each type) from CWE, to compare the vulnerability detection effectiveness of the proposed method with that of the existing detection tool Cpp Check. The results show that the proposed method performs better. In summary, the method proposed in this paper has certain feasibility and effectiveness in detecting the three mentioned types of vulnerabilities, and it will also have guiding significance for the detection of other common vulnerabilities.  相似文献   

18.
Android系统WebView组件应用广泛,相关漏洞危害大、影响广,但现有依赖静态匹配敏感函数的检测方法存在漏洞误报率高等问题.为此,本文提出了基于静态分析与动态验证技术融合的WebView组件漏洞自动化检测与验证方法,通过对漏洞可疑点进行可达性分析,避免对不可达路径的无效动态遍历,提高了分析效率;将数据依赖分析与模拟真实攻击行为的动态验证相结合,及时判断漏洞触发的真实性,降低了误报率.已实现原型工具XWebViewDigger并测试了80个Android应用,检出并验证18个应用存在漏洞,与现有方法相比,误报率有效降低.   相似文献   

19.
Software vulnerability is always an enormous threat to software security. Quantitative analysis of software vulnerabilities is necessary to the evaluation and improvement of software security. Current vulnerability prediction models mainly focus on predicting the number of vulnerabilities regardless of the seriousness of vulnerabilities, therefore these models are unable to reflect the security level of software accurately. Starting from this, we propose a vulnerability prediction model based on probit regression in this paper. Unlike traditional ones, we measure the seriousness of vulnerability by the loss it causes and aim at predicting the accumulative vulnerability loss rather than the number of vulnerabilities. To validate our model, experiment is carried out on two software — Open SSL and Xpdf, and the experimental result shows a good performance of our model.  相似文献   

设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号