CN101710378B - 一种基于序列模式挖掘的软件安全漏洞检测方法 - Google Patents
一种基于序列模式挖掘的软件安全漏洞检测方法 Download PDFInfo
- Publication number
- CN101710378B CN101710378B CN200910235658XA CN200910235658A CN101710378B CN 101710378 B CN101710378 B CN 101710378B CN 200910235658X A CN200910235658X A CN 200910235658XA CN 200910235658 A CN200910235658 A CN 200910235658A CN 101710378 B CN101710378 B CN 101710378B
- Authority
- CN
- China
- Prior art keywords
- sequence
- leak
- software security
- security flaw
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Debugging And Monitoring (AREA)
- Storage Device Security (AREA)
Abstract
本发明提出一种基于序列模式挖掘的软件安全漏洞检测方法。首先利用已检测到的、大量的软件安全漏洞相关操作序列数据,创建安全漏洞相关操作序列数据库,然后利用数据挖掘技术中的闭序列模式挖掘算法挖掘频繁发生的漏洞相关操作序,将挖掘到的频繁发生的漏洞相关操作序列用来检测当前软件系统的安全漏洞,从而降低漏洞检测漏报率,提高安全漏洞检测效率。随着漏洞数据的积累,本发明的安全漏洞检测效率高的优点会更加突出。
Description
技术领域
本发明涉及一种软件安全漏洞静态检测技术,特别涉及一种基于序列模式挖掘的软件安全漏洞检测方法,属于信息安全技术领域。
背景技术
随着计算机技术的迅速发展,人类社会的信息化程度越来越高,整个社会的政治、经济、军事、文化以及其他领域对计算机信息系统的依赖程度也越来越高。在这种情况下,计算机系统的安全性得到了人们越来越多的关注。然而,大型软件、系统的编写需要许许多多程序员共同完成,他们将一个软件或系统分成若干板块,分工编写,然后再汇总,测试;最后再修补、发布,因此在软件中存在安全漏洞几乎是不可避免的。软件安全漏洞指软件设计实现过程中被引入的、在数据访问或行为逻辑等方面的缺陷。这些漏洞常常被攻击者利用,从而使程序行为违背一定的安全策略。基于上述原因,目前对软件安全漏洞检测技术的研究越来越受到重视。
按照检测过程中是否需要执行程序的标准,软件安全漏洞检测技术分为动态检测和静态检测。
(1)动态测试
动态测试是在程序运行过程中注入测试数据,通过对程序的运行环境(包括环境变量、内存、堆和栈等)进行分析,观察程序运行是否正常、程序行为是否满足要求,来检测程序是否存在漏洞。动态检测技术的优点是不直接面对源代码,不需要修改目标程序源代码,这在一定程度上提高程序的保密性。但其缺点是仅关注程序运行的外部表现,因此,定位不准确、漏报率高,不能很好地发现隐藏在程序中的漏洞。动态测试主要应用于软件生命周期的测试阶段。
(2)静态检测
静态检测主要应用于软件生命周期的编码阶段。静态检测不编译运行程序,而是通过对程序源代码进行分析以发现其中的错误。静态检测的目标不是证明程序完全正确,而是作为动态测试的补充,在程序运行前尽可能多地发现其中隐含的错误,提高程序的可靠性和健壮性。对一些状态有限且对稳定性要求很高的软件来说,采用适当的静态检测技术是非常有必要的。但静态检测也有局限性,对于程序的某些性质(比如和指针运算、动态存储分配等相关的性质),用静态检测难以奏效。因此,静态检测并不能完全替代动态测试。
静态检测包括静态分析和程序验证。其中静态分析方法主要包括三种检测方法:词法分析,规则检查和类型推导。
静态分析方法直接扫描程序代码,提取程序关键语法,解释其语义,理解程序行为,根据预先设定的漏洞特征、安全规则等检测漏洞。各种静态分析工具的不同点主要体现在扫描程序的过程中所采用的算法不同,以及在与预先设定的漏洞特征进行比对时所采用的方法不同。静态分析方法的缺点是:①只关注程序表面特征,过于简单;②很多静态分析工具需要人工辅助定义类型和规则安全漏洞的检测,其扩展性和自动性差,可检查的漏洞也有限。
程序验证方法通过抽象程序得到形式化程序或模型,然后使用形式化验证技术进行检验证明,通过验证正确性的方式来检测漏洞。各种程序验证工具的不同点主要体现在从程序中抽象得到的模型不同,以及针对安全特性建立的模型不同。静态分析方法采用的是模拟扫描,而程序验证方法采用的是严谨的证明。与静态分析方法相比,程序验证方法的理论基础更加严格,在程序全局性的检测上,效果更加突出。程序验证方法的自动化程度高,可扩展性好。
静态检测中的程序验证方法包括模型检验,定理证明和符号执行。
安全特性模型检验程序MOPS(MOdel Checking Programs for Securityproperties)和SLAM是两个典型的模型检验工具。H.Chen,D.Wagner在文献《MOPS:an Infrastructure for Examining Security Properties of Software》(Technical Report,2002.)中介绍了MOPS,MOPS是一种检测软件安全特性的体系结构。MOPS利用硬件设计领域中的模型检验方法来检测软件安全特性,它分别对源程序和安全特性建模。安全特性模型用有穷自动机表示,源程序模型用下推自动机来表示。MOPS检验的基本思想是:通常程序都会执行一些与安全相关的操作,而安全特性则定义了这些操作的顺序,违背该顺序的操作序列可能导致潜在的安全漏洞。软件安全检验的目标就是验证程序是否很好的满足了安全特性。
T.Ball,S.K.Rajamani等人在文献《Automatically Validating TemporalSafety Properties of Interfaces》(Proc.8th Int’l SPIN Workshop on ModelChecking of Software,LNCS 2057,Springer-Verlag,2001,pp.103-122.)中介绍了SLAM,SLAM用模型检验的方法对C程序进行分析。SLAM的分析过程是一个对抽象的程序模型不断细化的反复迭代的过程。首先对程序进行抽象建立模型,然后分析模型。如果发现能够导致错误的路径则终止分析过程并报告错误;如果已经枚举证明所有可能的路径都不可能导致错误则对模型进行细化,建立并分析细化后的模型,如此迭代直到发现错误或者超时。
符号执行工具典型的有ESC和PREfix。ESC采用定理证明的方法进行程序分析验证。C.Flanagan等人在文献《An Annotation Assistant for ESC/Java.ESC.FME2001》(Lecture Notes in Computer Science 2021,2001,pp.500-517.)中介绍了ESC符号执行工具。ESC的基本思想是,首先由带规约的程序生成证明条件,然后由定理证明器进行处理。如果成功则说明程序中不包含错误,如果失败则可以通过后处理程序推导出导致失败的可能原因。ESC利用最弱前置条件和最强后置条件,将规约以及约束条件转换为Dijkstra卫式命令再转换成证明条件由定理证明器证明。ESC还可以用于检查多线程的并发程序中经常出现的一些错误。PREfix使用符号执行及约束求解方法对C/C++程序进行静态分析测试。W.R.Bush等人在文献《A static analyzer for finding dynamic programmingerrors》(Software-Practice and Experience,2000,30(7),pp.755-802.)中介绍了PREfix。PREfix的工作流程是首先分析源代码,将其转换成抽象的语法树,然后对过程依照调用关系进行拓扑排序,再为每个过程生成相应的抽象模型,最后静态模拟执行路径并用约束求解的方法对约束集合进行检测。
现有静态检测技术在利用漏洞相关数据分析软件安全时,只是对常见的一些相关漏洞建立一个简单的小数据库。由于漏洞数据收集的不充分,现有的漏洞检测工具存在的缺点是漏报率高,并且效率较低。
本发明涉及到的另外一项重要的已有技术是序列模式挖掘算法的CloSpan算法。
其算法描述如下:
算法ClosedMining(DS,min-sup,L)
输入:数据库DS和最小支持度min-sup
输出:闭合序列集L
(1)删除非频繁项集和空的序列,在待挖掘数据库DS中对序列中的每个项集进行排序。
(2)对长度为1的频繁项集调用CloSpan算法。
(3)删除结果集中的非闭合序列。
CloSpan(s,Ds,min-sup,L)算法描述如下:
输入:序列s,投影数据库Ds,最小支持度min_sup
输出:前缀搜索序列格L
一个序列之所以称为序列模式,它必须是频繁的,即它在数据库中出现的次数至少是min-sup次。最小支持度的取值视实际情况而定。本发明在软件安全漏洞检测中使用该算法时,DS表示漏洞相关操作序列数据库,L是挖掘到的频繁发生的漏洞相关操作序列,min-sup是最小支持度。
在软件安全漏洞检测中使用CloSpan算法对漏洞相关操作序列库进行数据挖掘得到频繁发生的漏洞相关操作序列以后,无需对漏洞相关操作序列库中的每一个漏洞相关操作序列和源代码程序进行比对,只需与频繁发生的漏洞相关操作序列比对即可,可大大提高效率。
发明内容
本发明的目的是针对上述已有技术存在的不足,提出一种基于序列模式挖掘的软件安全漏洞检测方法。本发明首先利用已检测到的、大量的安全漏洞相关操作序列数据,创建大的安全漏洞相关操作序列数据库,然后利用数据挖掘技术中的闭序列模式挖掘算法挖掘频繁发生的漏洞相关操作序,将挖掘到的频繁发生的漏洞相关操作序列用来检测当前软件系统的安全漏洞,从而降低漏洞检测漏报率,提高安全漏洞检测效率。随着漏洞数据的积累,本发明的安全漏洞检测效率高的优点会更加突出。
本发明的目的是通过下述技术方案实现的。
首先给出漏洞相关操作序列的定义:
漏洞相关操作序列是指会导致漏洞产生的一个有序的程序操作序列。
本发明的一种基于序列模式挖掘的软件安全漏洞检测方法的整体框架设计如图1所示。其具体操作步骤如下:
步骤一、利用已有的安全漏洞数据,创建软件安全漏洞序列数据库。
收集已有漏洞检测工具检测到的安全漏洞数据,创建软件安全漏洞序列数据库。软件安全漏洞序列数据库用S表示,包含已确认的软件安全漏洞对应的操作序列。S是元组<SID,s,time>的集合,其中SID是该漏洞相关操作序列的序列号;s是漏洞相关操作序列,序列s记作<e1,e2,e3,......,ei>,ei表示该漏洞的一个操作;time表示该漏洞操作序列的最近一次访问时间。
步骤二、对软件安全漏洞序列数据库进行预处理
在步骤一的基础上,利用数据挖掘中数据预处理阶段的数据清洗、数据集成和数据消减方法清除掉安全漏洞相关操作序列数据库中存在错误或异常的数据、不完整的数据、不一致数据以及冗余数据。
步骤三、挖掘频繁发生的漏洞相关操作序列
在步骤二的基础上,采用闭序列模式挖掘算法从软件安全漏洞序列数据库中挖掘出频繁发生的漏洞相关操作序列。
经过上述步骤,即可创建安全漏洞序列数据库以及挖掘出频繁发生的漏洞相关操作序列集(用B表示频繁发生的漏洞相关操作序列集)。
步骤四、进行软件安全漏洞检测
在步骤三挖掘出频繁发生的漏洞相关操作序列的基础上进行软件安全漏洞检测。其具体操作步骤如下:
第1步:从源程序中抽取程序执行路径
利用安全特性模型检验程序MOPS生成源程序的控制流图;然后利用转换命令将压缩后的控制流图转换为对应的程序路径,进一步生成程序可能执行路径序列集(用T表示)。
第2步:检测软件安全漏洞
对频繁发生的漏洞相关操作序列集B和可能执行路径序列集T取交集,若B与T的交集为空,则说明源程序不存在这些频繁发生的漏洞,结束操作;若B与T的交集不为空,则说明源程序存在这些频繁发生的漏洞,输出检测到的漏洞相关操作序列。
本发明还提供一种对漏洞相关操作序列库进行更新的方法,具体为:对旧序列的删除和对新序列的添加。按照time属性对于多时未访问的,时间上满足预定义条件的漏洞相关操作序列,将其删除。对于新出现的,数据库中不存在的安全漏洞,将其添加到序列数据库中。
有益效果
充分利用先验知识,即已有的安全漏洞数据,创建软件安全漏洞库,然后利用数据挖掘技术中的闭序列模式挖掘算法挖掘隐藏在漏洞数据背后的信息,将挖掘到的频繁发生的漏洞相关操作序列用来检测当前软件系统的安全漏洞,从而降低漏洞检测漏报率,提高安全漏洞检测效率。随着时间的推移,漏洞数据的积累,本发明的优点会更加突出。
附图说明
图1为本发明的一种基于序列模式挖掘的软件安全漏洞检测方法的整体框架设计流程图。
具体实施方式
下面结合具体实施方式对本发明技术方案进行详细描述。
本发明的具体操作步骤如下:
步骤一、利用已有的安全漏洞数据,创建安全漏洞序列数据库。
收集已有漏洞检测工具检测到的安全漏洞数据,创建软件安全漏洞序列数据库。序列数据库用S表示,包含已确认的安全漏洞对应的操作序列。S是元组<SID,s,time>的集合,其中SID是该漏洞相关操作序列的序列号;s是漏洞相关操作序列,序列s记作<e1,e2,e3,......,ei>,ei表示该漏洞的一个操作;time表示该漏洞操作序列的最近一次访问时间。
步骤二、对安全漏洞序列数据库进行预处理
在步骤一的基础上,利用数据挖掘中数据预处理阶段的数据清洗、数据集成和数据消减方法清除掉安全漏洞相关操作序列数据库中存在错误或异常的数据、不完整的数据、不一致数据以及冗余数据。
步骤三、挖掘频繁发生的漏洞相关操作序列
在步骤二的基础上,采用Yan等人在文献《CloSpan:Mining closedsequential patterns in large data sets》(Proceedings of the Third SIAMInternational Conference on Data Mining,San Francisco,CA,USA,May1-3,2003.)中提出的CloSpan算法从软件安全漏洞序列数据库中挖掘出频繁发生的漏洞相关操作序列。
步骤四、进行软件安全漏洞检测
在步骤三挖掘出频繁发生的漏洞相关操作序列的基础上进行软件安全漏洞检测。其具体操作步骤如下:
第1步:从源程序中抽取程序执行路径
利用安全特性模型检验程序MOPS生成源程序的控制流图;然后利用转换命令将压缩后的控制流图转换为对应的程序路径,进一步生成程序可能执行路径序列集(用T表示)。
第2步:检测软件安全漏洞
对频繁发生的漏洞相关操作序列集B和可能执行路径序列集T取交集,若B与T的交集为空,则说明源程序不存在这些频繁发生的漏洞,结束操作;若B与T的交集不为空,则说明源程序存在这些频繁发生的漏洞,输出检测到的漏洞相关操作序列。
对漏洞相关操作序列库进行更新时,具体操作为:对旧序列的删除和对新序列的添加。按照time属性对于多时未访问的,时间上满足预定义条件的漏洞相关操作序列,将其删除。对于新出现的,数据库中不存在的安全漏洞,将其添加到序列数据库中。
Claims (3)
1.一种基于序列模式挖掘的软件安全漏洞检测方法,其特征在于:具体操作步骤如下:
步骤一、利用已有的软件安全漏洞数据,创建软件安全漏洞序列数据库;
收集已有漏洞检测工具检测到的安全漏洞数据,创建软件安全漏洞序列数据库;软件安全漏洞序列数据库用S表示,包含已确认的软件安全漏洞对应的操作序列;S是元组<SID,s,time>的集合,其中SID是该漏洞相关操作序列的序列号;s是漏洞相关操作序列,序列s记作<e1,e2,e3,......,ei>,ei表示该漏洞的一个操作;time表示该漏洞操作序列的最近一次访问时间;
步骤二、对软件安全漏洞序列数据库进行预处理
在步骤一的基础上,利用数据挖掘中数据预处理阶段的数据清洗、数据集成和数据消减方法清除掉软件安全漏洞序列数据库中存在错误或异常的数据、不完整的数据、不一致数据以及冗余数据;
步骤三、挖掘频繁发生的漏洞相关操作序列
在步骤二的基础上,采用CloSpan算法挖掘出频繁发生的漏洞相关操作序列;
经过上述步骤,即可创建软件安全漏洞序列数据库以及挖掘出频繁发生的漏洞相关操作序列集,用B表示频繁发生的漏洞相关操作序列集;
步骤四、进行软件安全漏洞检测
在步骤三挖掘出频繁发生的漏洞相关操作序列的基础上进行软件安全漏洞检测;其具体操作步骤如下:
第1步:从源程序中抽取程序执行路径
利用安全特性模型检验程序MOPS生成源程序的控制流图;然后利用转换命令将压缩后的控制流图转换为对应的程序路径,进一步生成程序可能执行路径序列集,用T表示;
第2步:检测软件安全漏洞
对频繁发生的漏洞相关操作序列集B和可能执行路径序列集T取交集,若B与T的交集为空,则说明源程序不存在这些频繁发生的漏洞,结束操作;若B与T的交集不为空,则说明源程序存在这些频繁发生的漏洞,输出检测到的漏洞相关操作序列。
2.如权力要求1所述的一种基于序列模式挖掘的软件安全漏洞检测方法,其特征在于:步骤一中创建的软件安全漏洞序列数据库,其更新方法为:对旧序列的删除和对新序列的添加;按照time属性对于多时未访问的,时间上满足预定义条件的漏洞相关操作序列,将其删除;对于新出现的,软件安全漏洞序列数据库中不存在的安全漏洞,将其添加到软件安全漏洞序列数据库中。
3.如权力要求1所述的一种基于序列模式挖掘的软件安全漏洞检测方法,其特征在于:在步骤三挖掘频繁发生的漏洞相关操作序列时采用CloSpan算法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200910235658XA CN101710378B (zh) | 2009-10-10 | 2009-10-10 | 一种基于序列模式挖掘的软件安全漏洞检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200910235658XA CN101710378B (zh) | 2009-10-10 | 2009-10-10 | 一种基于序列模式挖掘的软件安全漏洞检测方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101710378A CN101710378A (zh) | 2010-05-19 |
CN101710378B true CN101710378B (zh) | 2011-04-06 |
Family
ID=42403164
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200910235658XA Expired - Fee Related CN101710378B (zh) | 2009-10-10 | 2009-10-10 | 一种基于序列模式挖掘的软件安全漏洞检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101710378B (zh) |
Families Citing this family (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102385550B (zh) * | 2010-08-30 | 2012-10-31 | 北京理工大学 | 一种针对软件缺陷的检测方法 |
CN101968766B (zh) * | 2010-10-21 | 2012-09-05 | 上海交通大学 | 计算机程序实际运行时触发软件漏洞的检测系统 |
CN102033789A (zh) * | 2010-12-03 | 2011-04-27 | 北京理工大学 | 一种用于嵌入式安全关键系统的可靠性分析方法 |
CN102708045B (zh) * | 2012-04-13 | 2014-07-23 | 电子科技大学 | 一种缓解路径爆炸的动态符号执行方法 |
CN103020529B (zh) * | 2012-10-31 | 2015-12-09 | 中国航天科工集团第二研究院七○六所 | 一种基于场景模型的软件漏洞分析方法 |
CN102945351B (zh) * | 2012-11-05 | 2015-10-28 | 中国科学院软件研究所 | 云环境下基于二维码的移动智能终端安全漏洞修复方法 |
CN104778403A (zh) * | 2014-01-15 | 2015-07-15 | 江苏南大苏富特科技股份有限公司 | 一种基于序列模式软件安全漏洞的检测方法 |
CN104933368B (zh) * | 2014-03-21 | 2018-05-22 | 腾讯科技(深圳)有限公司 | 一种网络安全漏洞的检测方法及装置 |
CN104008053B (zh) * | 2014-05-28 | 2016-07-06 | 电子科技大学 | 一种用于漏洞发掘的动态符号执行路径搜索方法 |
CN105279075A (zh) * | 2014-06-10 | 2016-01-27 | 江苏博智软件科技有限公司 | 一种基于序列模式软件安全漏洞的检测方法 |
CN104899137B (zh) * | 2015-05-22 | 2017-09-01 | 华中师范大学 | 一种并发程序的缺陷模式发现方法 |
CN104932865B (zh) * | 2015-07-10 | 2017-10-10 | 武汉工程大学 | 一种组件协议挖掘方法、装置及系统 |
CN105205002B (zh) * | 2015-10-28 | 2017-09-29 | 北京理工大学 | 一种基于测试工作量的软件安全缺陷发现模型的建模方法 |
CN107291606A (zh) * | 2016-03-31 | 2017-10-24 | 四川大学 | 演绎最弱前置条件的模型和算法 |
CN106528827A (zh) * | 2016-11-22 | 2017-03-22 | 山东浪潮云服务信息科技有限公司 | 一种基于大数据实现sql注入过滤的方法 |
CN107104853B (zh) * | 2017-03-31 | 2020-04-07 | 北京北信源软件股份有限公司 | 一种用于终端安全管理软件的测试床系统和测试方法 |
CN108182144B (zh) * | 2017-12-14 | 2020-12-11 | 东南大学 | 一种基于序列模式挖掘的并发程序剖析方法 |
CN108319458B (zh) * | 2018-01-17 | 2021-04-06 | 南京航空航天大学 | 一种基于图形化卫式命令演算的多任务编译方法 |
CN109032934B (zh) * | 2018-07-10 | 2021-07-02 | 北京计算机技术及应用研究所 | 一种fpga/ip核逻辑代码安全规则检测方法 |
CN110851353B (zh) * | 2019-10-22 | 2023-03-31 | 天津大学 | 一种基于Delta Debugging与约束求解的并发程序缺陷定位方法 |
CN112884614B (zh) * | 2019-11-29 | 2024-05-14 | 北京金山云网络技术有限公司 | 基于频繁序列的路线推荐方法、装置和电子设备 |
CN118036019B (zh) * | 2024-04-11 | 2024-06-18 | 成都派沃特科技股份有限公司 | 基于代码自动检测的漏洞定位方法及系统 |
-
2009
- 2009-10-10 CN CN200910235658XA patent/CN101710378B/zh not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
CN101710378A (zh) | 2010-05-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101710378B (zh) | 一种基于序列模式挖掘的软件安全漏洞检测方法 | |
Le Goues et al. | Specification mining with few false positives | |
Joshi et al. | Automatic generation of static fault trees from AADL models | |
CN101853200B (zh) | 一种高效动态软件漏洞挖掘方法 | |
CN101908006B (zh) | 一种基于gcc抽象语法树的缓冲区溢出漏洞检测方法 | |
CN104766015A (zh) | 一种基于函数调用的缓冲区溢出漏洞动态检测方法 | |
Islam et al. | Coherent clusters in source code | |
Xu et al. | Melton: a practical and precise memory leak detection tool for C programs | |
Di Nardo et al. | Generating complex and faulty test data through model-based mutation analysis | |
Cheon | Automated random testing to detect specification-code inconsistencies | |
Luo et al. | How to identify boundary conditions with contrasty metric? | |
Wang et al. | TsmartGP: a tool for finding memory defects with pointer analysis | |
CN114579431A (zh) | 一种基于混合分析的除零错误检测方法 | |
Bokaei et al. | A comparative study of whole issues and challenges in mutation testing | |
CN102779093B (zh) | 对象粒度收集的Java不变式检测系统 | |
Chen et al. | A modified similarity metric for unit testing of object-oriented software based on adaptive random testing | |
Ahrendt et al. | COST Action IC 1402 ArVI: Runtime Verification Beyond Monitoring--Activity Report of Working Group 1 | |
KR102413994B1 (ko) | 성능 개선을 위해 소프트웨어 소스 코드 변경한 후 이를 시각적으로 가시화하는 방법 및 그 장치 | |
CN116383834B (zh) | 针对源码漏洞检测工具异常的检测方法以及相关设备 | |
Nakamura et al. | Provenance-based Workflow Diagnostics Using Program Specification | |
Sahoo et al. | Concurrency testing using symbolic path finder | |
Sosnytskyi | Statical and Dynamical Software Analysis | |
Abroad | Publications of the Institute for System Software | |
Mohamed | Software Architecture-Based Failure Prediction | |
Lei et al. | Program Segment Testing for Software Fault Prevention |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20110406 Termination date: 20141010 |
|
EXPY | Termination of patent right or utility model |