共查询到19条相似文献,搜索用时 140 毫秒
1.
2.
3.
4.
Web应用程序数量多、应用广泛,然而它们却存在各种能被利用的安全漏洞,这当中跨站脚本(XSS)的比例
是最大的。因此为了更好地检测Web应用中的XSS漏洞,提出了一种结合污染传播模型的代码静态分析及净化单元
动态检测的方法,其中包括XSS漏洞所对应的源规则、净化规则和接收规则的定义及净化单元动态检测算法的描述。
分析表明,该方法能有效地发现W cb应用中的XSS漏洞。 相似文献
5.
针对现有的内存相关漏洞检测方法中存在依赖指针数据流而导致大量误报漏报、缺乏漏洞特征的形式化描述以及漏洞特征描述不全面的问题,提出一种基于抽象内存模型的内存相关漏洞检测方法.对抽象内存模型进行相关定义;基于抽象内存模型,对内存泄露、重复释放内存和读写释放后的内存这三种与内存相关的漏洞类型的特征进行形式化符号表示;基于代码... 相似文献
6.
软件建模是软件活动的根本任务和模型驱动开发过程的核心,软件工程界一直追寻“银弹”式的软件建模方法。在分析现有软件建模方法的基础上,提出了协同状态网,以实现对软件系统的静态和动态特征描述。首先给出了协同状态网的形式化定义、图形化表示以及相关概念解释。以锅炉控制软件系统为例,详细说明了模型构造算法、模型可靠性分析方法。阐述了协同状态网在软件建模与实现等方面的一些优点,如便于理解,一个模型描述静动态特征,模型可分析可执行,可视化和一致性较好等。 相似文献
7.
安全漏洞检测是保障软件安全性的重要手段.随着互联网的发展,黑客的攻击手段日趋多样化,且攻击技术不断翻新,使软件安全受到了新的威胁.本文描述了当前软件中实际存在的一种新类型的安全漏洞隐患,我们称之为数值稳定性相关的安全漏洞隐患.由于黑客可以利用该类漏洞绕过现有的防护措施,且已有的数值稳定性分析方法很难检测到该类漏洞的存在,因而这一新类型的漏洞隐患十分危险.面对这一挑战,本文首先从数值稳定性引起软件行为改变的角度定义了数值稳定性相关的安全漏洞隐患,并给出了对应的自动化检测方法.该方法基于动静态相结合的程序分析与符号执行技术,通过数值变量符号式提取、静态攻击流程分析、以及高精度动态攻击验证三个步骤,来检测和分析软件中可能存在的数值稳定性相关安全漏洞.我们在业界多个著名开源软件上进行了实例研究,实验结果表明,本文方法能够有效检测到实际软件中真实存在的数值稳定性相关漏洞隐患. 相似文献
8.
9.
为满足用户对网络服务的个性化、定制化和主动化需求,主动规则成为解决这些问题的关键技术.研究了在网络环境下基于规则的复杂应用中,大量规则集同时触发所带来的规则终止性问题,提出的分析方法确保主动规则能够有效运行,以提供更加灵活的主动服务.讨论了以静态分析方法为主的主动规则终止性分析相关工作,随后给出问题描述和相关形式化定义.分析了基于关联图的终止性分析方法的保守性,引入触发路径和有限触发环概念,提出了基于触发路径的两种终止情形分析方法,提高了规则集终止性分析的准确性,采用两阶段分析算法保证了分析效率.与相关分析方法的实验比较说明,文中方法能够更准确高效地检测主动规则集的终止性,并适应基于主动规则的其它应用. 相似文献
10.
状态图是UML(Unified Modeling Language)语言中刻画对象行为的重要视图,而如何对状态图模型定义的正确性和有效性进行检验一直是一个亟待解决的问题。本文提出采用动态描述逻辑对UML状态图形式化,并利用该逻辑系统的推理能力对状态图相关静态和动态特性进行检测。我们首先将状态图描述为一个形式系统。其中,状态图中的一个状态对应于该形式系统中的一个状态,状态特性及描述被表示为该形式系统中的概念和公理,事件被表示为该形式系统中的动作。然后,我们通过概念测试来检验状态图状态可满足性和冗余性,通过公式可满足性测试来验证状态转移引起的对象特性变化。 相似文献
11.
12.
13.
基于静态分析的安全漏洞检测技术研究 总被引:9,自引:1,他引:9
消除软件中的安全漏洞是建立安全信息系统的前提。静态分析方法可以自动地提取软件的行为信息,从而检测出软件中的安全漏洞。和其它程序分析方法相比,该方法具有自动化程度高和检测速度快的优点。在本文中,我们首先描述了静态分析的理论基础,然后说明了类型推断、数据流分析和约束分析等主要静态分析方法及其在安全漏洞检测中的应用,并比较这些方法的优缺点。最后给出了几种支持安全漏洞静态检测的编程语言。 相似文献
14.
Crash(程序崩溃)分析是漏洞挖掘与利用的关键阶段,判定Crash是由何种类型漏洞产生的是进行Crash分析和漏洞利用的前提。针对现有漏洞检测平台无法有效识别Crash类型的问题,提出一种二进制可执行程序漏洞检测和Crash类型判定的方法。该方法通过对二进制可执行程序Fuzz出的Crash进行污点标记,在污点传播阶段兼顾污点清除、间接污染等污点传播规则,在污点检查阶段通过收集崩溃点上下文信息,匹配多种漏洞触发规则。基于上述方法开发出对二进制程序漏洞检测和判定Crash所属漏洞类型的原型系统,实验结果表明,该方法适用于栈溢出、格式化字符串、堆溢出等漏洞导致的覆盖返回地址、函数指针等模式,具有较高准确率。 相似文献
15.
随着区块链技术在各行各业的广泛应用,区块链系统的架构变得越来越复杂,这也增加了安全问题的数量.目前,在区块链系统中采用了模糊测试、符号执行等传统的漏洞检测方法,但这些技术无法有效检测出未知的漏洞.为了提高区块链系统的安全性,本文提出了基于形式化理论的区块链系统漏洞检测模型VDMBS (Vulnerability Detection Model for Blockchain Systems),该模型综合了系统迁移状态、安全规约和节点间信任关系等多种安全因素,同时提供了基于业务流程执行语言BPEL (Business Process Execution Language)流程的漏洞模型构建方法.最后,本文用NuSMV在基于区块链的电子投票选举系统上验证了所提出的漏洞检测模型的有效性,实验结果表明,与现有的五种形式化测试工具相比,所提出的VDMBS模型能够检测出更多的区块链系统业务逻辑漏洞和智能合约漏洞. 相似文献
16.
17.
提出了一种基于特征矩阵的软件代码克隆检测方法.在此基础上,实现了针对多类脆弱性的检测模型.基于对脆弱代码的语法和语义特征分析,从语法分析树抽取特定的关键节点类型描述不同的脆弱性类型,将4种基本克隆类型细化拓展到更多类,通过遍历代码片段对应的语法分析树中关键节点的数量,构造对应的特征矩阵.从公开漏洞数据库中抽取部分实例作为基本知识库,通过对代码进行基于多种克隆类型的聚类计算,达到了从被测软件代码中检测脆弱代码的目的.与基于单一特征向量的检测方法相比,对脆弱性特征的描述更加精确,更具有针对性,并且弥补了形式化检测方法在脆弱性类型覆盖能力上的不足.在对android-kernel代码的测试中发现了9个脆弱性.对不同规模软件代码的测试结果表明,该方法的时间开销和被测代码规模成线性关系. 相似文献
18.
19.
当前漏洞检测技术可以实现对小规模程序的快速检测,但对大型或路径条件复杂的程序进行检测时其效率低下。为实现复杂路径条件下的漏洞快速检测,文中提出了一种复杂路径条件下的漏洞检测技术SymFuzz。SymFuzz将导向式模糊测试技术与选择符号执行技术相结合,通过导向式模糊测试技术对程序路径进行过滤,利用选择符号执行技术对可能触发漏洞的路径进行求解。该技术首先通过静态分析获取程序漏洞信息;然后使用导向式模糊测试技术,快速生成可以覆盖漏洞函数的测试用例;最后对漏洞函数内可以触发漏洞的路径进行符号执行,生成触发程序漏洞的测试用例。文中基于AFL与S2E等开源项目实现了SymFuzz的原型系统。实验结果表明,SymFuzz与现有的模糊测试技术相比,在复杂路径条件下的漏洞检测效果提高显著。 相似文献