CN101930401A - 一种基于检测对象的软件漏洞模型检测方法 - Google Patents
一种基于检测对象的软件漏洞模型检测方法 Download PDFInfo
- Publication number
- CN101930401A CN101930401A CN201010286664.0A CN201010286664A CN101930401A CN 101930401 A CN101930401 A CN 101930401A CN 201010286664 A CN201010286664 A CN 201010286664A CN 101930401 A CN101930401 A CN 101930401A
- Authority
- CN
- China
- Prior art keywords
- state
- detected object
- function
- change
- node
- 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.)
- Granted
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 55
- 238000000034 method Methods 0.000 claims abstract description 37
- 238000006243 chemical reaction Methods 0.000 claims abstract description 23
- 230000008569 process Effects 0.000 claims abstract description 22
- 230000008859 change Effects 0.000 claims description 82
- 230000006870 function Effects 0.000 claims description 73
- 230000007704 transition Effects 0.000 claims description 16
- 230000009471 action Effects 0.000 claims description 9
- 238000012300 Sequence Analysis Methods 0.000 claims description 8
- 238000012360 testing method Methods 0.000 claims description 8
- 230000015654 memory Effects 0.000 claims description 6
- 230000006399 behavior Effects 0.000 claims description 3
- 238000004364 calculation method Methods 0.000 claims description 3
- 238000012882 sequential analysis Methods 0.000 claims description 3
- 238000012546 transfer Methods 0.000 claims description 3
- 238000012545 processing Methods 0.000 abstract description 5
- 230000003068 static effect Effects 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Images
Landscapes
- Debugging And Monitoring (AREA)
Abstract
一种基于检测对象的软件漏洞模型检测方法,步骤包括:1)漏洞载入流程,建立漏洞模型的数据结构;漏洞模型由漏洞状态机的状态的集合和操作的集合构成,状态表示状态机的状态,2)漏洞模型检测处理流程,3)函数程序操作序列分析流程,表示针对检测对象进行函数程序序列分析的过程,4)操作的状态转换处理过程,计算操作后的转换状态。本发明提供一种基于漏洞模型的软件漏洞模型检测方法。基于软件漏洞的状态机模型,以重点检测对象为中心,对软件代码进行抽象建模,只对与漏洞状态相关的程序操作序列进行漏洞静态检测,判断漏洞模型在代码中的存在性。克服现有技术需要大量重复工作、影响检测速度、准确性不高的问题。
Description
技术领域
本发明涉及计算机软件的检测方法,尤其是一种软件漏洞模型检测方法。
背景技术
软件因存在着隐藏的安全漏洞易于受到攻击而遭受损失,其安全威胁有不断增加的趋势。通过对软件代码进行漏洞检测,发现和消除软件安全漏洞是减少安全威胁、降低安全风险的重要手段之一。漏洞模型检测是一种具有代表性的代码漏洞检测方法。我们提出一种基于检测对象的漏洞模型检测方法,以供对软件代码中可能存在的漏洞进行自动检测。
目前的漏洞模型软件漏洞检测方法在检测过程中存在着重复检查、不够准确等缺点,检测的速度和准确性显得不足,影响着检测方法的适用性。因此,我们提出一种具有较高检测精度和速度的检测方法,该方法并不采用原有的模拟程序执行流程的检测顺序,而是只检测与漏洞模型相关的程序操作特征,注重对重点参数的检测,以提高软件漏洞检测的速度和准确性。
发明内容
针对目前软件漏洞检测方法存在大量重复工作、影响检测速度、准确性不高的问题,本发明提供一种基于漏洞模型的软件漏洞模型检测方法。基于软件漏洞的状态机模型,以重点检测对象为中心,对软件代码进行抽象建模,只对与漏洞状态相关的程序操作序列进行漏洞静态检测,判断漏洞模型在代码中的存在性。
为实现本发明的所述目的,本发明提供一种基于检测对象的软件漏洞模型检测方法,方法主要步骤包括:
1)漏洞载入流程,建立漏洞模型的数据结构;
漏洞模型由漏洞状态机的状态的集合和操作的集合构成,状态表示状态机的状态。每个状态有状态号、类型和特征等属性。类型是指漏洞的分类,如文件、内存等类别。特征有开始、过渡和漏洞等值。操作表示引起状态发生变化的动作,每个操作具有操作号、动作、特征、检测对象指示、原状态和新状态等属性。操作的动作指具体的程序动作。操作的特征有产生、转移、使用等值。检测对象为程序中漏洞相关操作所涉及的需检测的变量,检测对象指示为操作涉及的参数编号。状态、操作的集合分别存储在数据库中的一个表中:状态表和操作表。为方便模型检测处理,在内存中建立由操作动作进行检索的操作转换表。每个操作动作对应一个链表,链表的结点为一个操作,表示一个原状态到新状态的转换关系。具体步骤如下。
步骤20是起始状态。步骤21在数据库操作表中取一个操作的记录。步骤22若取到转步骤23,否则转步骤26。步骤23判断取得该操作动作的操作转换表表头是否已存在。若已存在转步骤24,否则转步骤25。步骤24创建一个操作结点,结点的操作号、特征、检测对象指示、原状态和新状态分别为该操作的操作号、特征、检测对象指示、原状态和新状态。把此结点连接到对应的操作动作操作转换表的链表尾部,转步骤21。步骤25创建该操作动作的操作转换表表头,创建一个操作结点,结点的操作号、特征、检测对象指示、原状态和新状态分别为该操作的操作号、特征、检测对象指示、原状态和新状态。把此结点作为该操作动作的第一个结点,转步骤21。步骤26为结束状态,操作转换表建立完成。
通过对程序抽象提取处理,过滤去处无关的操作,提取了与漏洞模型相关的操作序列。程序特征链表以函数为单位进行组织,每个函数对应若干个与检测对象相关的操作序列链表,链表的每个结点为一个与漏洞状态相关的操作或函数。函数的检测对象包括输入检测对象和本地检测对象两类。程序特征载入时,将磁盘中程序特征链表装入内存,包括输入检测对象集合和本地检测对象集合及其操作序列链表。
2)模型检测处理流程,以函数为单位进行模型检测工作,并报告漏洞的存在,步骤30:起始状态;步骤31初始化:设置所有函数的访问标记为 OFF (值为0);取main的检测对象集合为函数检测对象集合。步骤32从函数检测对象集合中,取一个检测对象。步骤33判断是否取到。若取到则转步骤34,否则转步骤36。步骤34设置输入状态为开始,检测函数为main函数,输入检测对象为取得的检测对象。步骤35对检测函数进行程序操作序列分析,处理流程见图4;转步骤32。步骤36为结束状态。
图4为函数程序操作序列分析流程,表示针对检测对象进行函数程序序列分析的过程,具体步骤如下。步骤40是起始状态。步骤41判断检测函数的访问标记为ON(值为1)。是则转步骤41d,否则转步骤41a。步骤41a置检测阶段为本地。步骤41b从检测函数的本地检测对象集合中,取一个检测对象。步骤41c判断是否取到检测对象。若取到则转步骤41e,否则转步骤41d。步骤41d置检测阶段为输入,置检测函数的访问标记为 ON(值为1)。置检测对象为输入检测对象,输入状态为当前状态。转步骤42。步骤41e置输入状态为开始。转步骤42。步骤42从检测对象的操作序列中,取一个操作结点。步骤43判断是否取到。若取到,转步骤44,否则转步骤4f。步骤44判断该语句操作是否在漏洞状态机操作集合中。是则转步骤45,否则转步骤46。步骤45操作状态转换计算,处理流程见图5,得到转换状态。置当前状态为转换状态。转步骤4c。步骤46判断该语句操作是否函数调用。是则转步骤47,否则转步骤4c。步骤47顺序取每个函数调用参数。步骤48判断是否取到。若取到,转步骤49,没取到则转步骤42。步骤49判断所取的函数调用参数是否为检测对象。是则转步骤4a,否则转步骤47。步骤4a设置当前状态为输入状态、检测函数为被调用函数、输入检测对象为现检测对象。进行函数程序操作序列分析,处理流程见图4。置当前状态为函数结果状态。步骤4c 判断当前状态是否漏洞状态。是则转步骤4d,否则转步骤42。步骤4d漏洞报警,转步骤42。步骤4f操作序列分析结束处理:判断检测阶段是否为本地。是则转步骤41b,否则转步骤4g。步骤4g置函数结果状态为当前状态。步骤4h为结束状态。40-4c循环中:步骤43也总会转向步骤4f,跳出循环。
图5所示为操作的状态转换处理过程,计算操作后的转换状态。步骤50是起始状态。步骤51置次状态为空。步骤52在操作转换表中,查找操作动作所对应的操作结点。步骤53判断查到操作结点否。若得到,转步骤54,否则转步骤56。步骤54 判断操作结点的源状态是否为当前状态。是则转步骤55,否则转步骤52。步骤55置转换状态为操作结点的新状态,转步骤57。步骤56数据错误报警。步骤57为结束状态。
本发明的有益效果是:本发明提供一种基于漏洞模型的软件漏洞模型检测方法。基于软件漏洞的状态机模型,以重点检测对象为中心,对软件代码进行抽象建模,只对与漏洞状态相关的程序操作序列进行漏洞静态检测,判断漏洞模型在代码中的存在性。克服现有技术需要大量重复工作、影响检测速度、准确性不高的问题。
附图说明
图1 为基于漏洞模型的软件漏洞模型检测方法结构示意图
图2 漏洞载入流程图
图3漏洞模型检测处理流程图
图4函数程序序列分析流程图
图5操作状态转换处理过程图。
具体实施方式
本发明方法工作流程如图1-图5所示。
图1所示为本方法实施的整体结构和工作原理。本方法的目的是根据漏洞模型所涉及的操作对待检测程序进行分析检测,报告发现的漏洞。为提高处理速度,需要将漏洞模型从数据库中装入内存,以便分析程序时,作为参考依据。漏洞模型检测过程中,以函数为单位根据漏洞相关操作逐步进行模型检测工作。漏洞模型检测工作从主函数开始进行检测,根据漏洞相关操作以及逐级函数的模型检测结果,进行状态检测并报告漏洞的存在性。
图2表示漏洞模型载入流程。漏洞模型由漏洞状态机的状态的集合和操作的集合构成。状态表示状态机的状态。每个状态有状态号、类型和特征等属性。类型是指漏洞的分类,如文件、内存等类别。特征有开始、过渡和漏洞等值。操作表示引起状态发生变化的动作,每个操作具有操作号、动作、特征、检测对象指示、原状态和新状态等属性。操作的动作指具体的程序动作。操作的特征有产生、转移、使用等值。检测对象为程序中漏洞相关操作所涉及的需检测的变量,检测对象指示为操作涉及的参数编号。状态、操作的集合分别存储在数据库中的一个表中:状态表和操作表。为方便模型检测处理,在内存中建立由操作动作进行检索的操作转换表。每个操作动作对应一个链表,链表的结点为一个操作,表示一个原状态到新状态的转换关系。具体步骤如下。
步骤20是起始状态。步骤21在数据库操作表中取一个操作的记录。步骤22若取到转步骤23,否则转步骤26。步骤23判断取得该操作动作的操作转换表表头是否已存在。若已存在转步骤24,否则转步骤25。步骤24创建一个操作结点,结点的操作号、特征、检测对象指示、原状态和新状态分别为该操作的操作号、特征、检测对象指示、原状态和新状态。把此结点连接到对应的操作动作操作转换表的链表尾部,转步骤21。步骤25创建该操作动作的操作转换表表头,创建一个操作结点,结点的操作号、特征、检测对象指示、原状态和新状态分别为该操作的操作号、特征、检测对象指示、原状态和新状态。把此结点作为该操作动作的第一个结点,转步骤21。步骤26为结束状态,操作转换表建立完成。
通过对程序抽象提取处理,过滤去处无关的操作,提取了与漏洞模型相关的操作序列。程序特征链表以函数为单位进行组织,每个函数对应若干个与检测对象相关的操作序列链表,链表的每个结点为一个与漏洞状态相关的操作或函数。函数的检测对象包括输入检测对象和本地检测对象两类。程序特征载入时,将磁盘中程序特征链表装入内存,包括输入检测对象集合和本地检测对象集合及其操作序列链表。
图3表示漏洞模型检测处理流程,具体步骤如下。步骤30是起始状态。步骤31初始化:设置所有函数的访问标记为 OFF (值为0);取main的检测对象集合为函数检测对象集合。步骤32从函数检测对象集合中,取一个检测对象。步骤33判断是否取到。若取到则转步骤34,否则转步骤36。步骤34设置输入状态为开始,检测函数为main函数,输入检测对象为取得的检测对象。步骤35对检测函数进行程序操作序列分析,处理流程见图4;转步骤32。步骤36为结束状态。
图4为函数程序操作序列分析流程,表示针对检测对象进行函数程序序列分析的过程,具体步骤如下。步骤40是起始状态。步骤41判断检测函数的访问标记为ON(值为1)。是则转步骤41d,否则转步骤41a。步骤41a置检测阶段为本地。步骤41b从检测函数的本地检测对象集合中,取一个检测对象。步骤41c判断是否取到检测对象。若取到则转步骤41e,否则转步骤41d。步骤41d置检测阶段为输入,置检测函数的访问标记为 ON(值为1)。置检测对象为输入检测对象,输入状态为当前状态。转步骤42。步骤41e置输入状态为开始。转步骤42。步骤42从检测对象的操作序列中,取一个操作结点。步骤43判断是否取到。若取到,转步骤44,否则转步骤4f。步骤44判断该语句操作是否在漏洞状态机操作集合中。是则转步骤45,否则转步骤46。步骤45操作状态转换计算,处理流程见图5,得到转换状态。置当前状态为转换状态。转步骤4c。步骤46判断该语句操作是否函数调用。是则转步骤47,否则转步骤4c。步骤47顺序取每个函数调用参数。步骤48判断是否取到。若取到,转步骤49,没取到则转步骤42。步骤49判断所取的函数调用参数是否为检测对象。是则转步骤4a,否则转步骤47。步骤4a设置当前状态为输入状态、检测函数为被调用函数、输入检测对象为现检测对象。进行函数程序操作序列分析,处理流程见图4。置当前状态为函数结果状态。步骤4c 判断当前状态是否漏洞状态。是则转步骤4d,否则转步骤42。步骤4d漏洞报警,转步骤42。步骤4f操作序列分析结束处理:判断检测阶段是否为本地。是则转步骤41b,否则转步骤4g。步骤4g置函数结果状态为当前状态。步骤4h为结束状态。
图5所示为操作的状态转换处理过程,计算操作后的转换状态。步骤50是起始状态。步骤51置次状态为空。步骤52在操作转换表中,查找操作动作所对应的操作结点。步骤53判断查到操作结点否。若得到,转步骤54,否则转步骤56。步骤54 判断操作结点的源状态是否为当前状态。是则转步骤55,否则转步骤52。步骤55置转换状态为操作结点的新状态,转步骤57。步骤56数据错误报警。步骤57为结束状态。
Claims (1)
1.一种基于检测对象的软件漏洞模型检测方法,其特征是步骤如下:
1)漏洞载入流程,建立漏洞模型的数据结构;
漏洞模型由漏洞状态机的状态的集合和操作的集合构成,其特征是状态表示状态机的状态;
每个状态有状态号、类型和特征属性;类型是指漏洞的分类,即文件、内存类别;特征有开始、过渡和漏洞值;操作表示引起状态发生变化的动作,每个操作具有操作号、动作、特征、检测对象指示、原状态和新状态属性;操作的动作指具体的程序动作;操作的特征有产生、转移、使用值;检测对象为程序中漏洞相关操作所涉及的需检测的变量,检测对象指示为操作涉及的参数编号;状态、操作的集合分别存储在数据库中的一个表中:状态表和操作表;
在内存中建立由操作动作进行检索的操作转换表;每个操作动作对应一个链表,链表的结点为一个操作,表示一个原状态到新状态的转换关系;具体流程如下:
步骤20:起始状态;步骤21:在数据库操作表中取一个操作的记录;步骤22:若取到转步骤23,否则转步骤26;步骤23:判断取得该操作动作的操作转换表表头是否已存在,若已存在转步骤24,否则转步骤25;步骤24:创建一个操作结点,结点的操作号、特征、检测对象指示、原状态和新状态分别为该操作的操作号、特征、检测对象指示、原状态和新状态,把此结点连接到对应的操作动作操作转换表的链表尾部,并转步骤21;步骤25:创建该操作动作的操作转换表表头,创建一个操作结点,结点的操作号、特征、检测对象指示、原状态和新状态分别为该操作的操作号、特征、检测对象指示、原状态和新状态;把此结点作为该操作动作的第一个结点,转步骤21;步骤26为结束状态,操作转换表建立完成;
提取了与漏洞模型相关的操作序列;程序特征链表以函数为单位进行组织,每个函数对应若干个与检测对象相关的操作序列链表,操作序列链表的每个结点为一个与漏洞状态相关的操作或函数;函数的检测对象包括输入检测对象和本地检测对象两类;程序特征载入时,将磁盘中程序特征链表装入内存,包括输入检测对象集合和本地检测对象集合及其操作序列链表;
2)模型检测处理流程,以函数为单位进行模型检测工作,并报告漏洞的存在,步骤30:起始状态;步骤31:初始化,设置所有函数的访问标记为 OFF ,值为0;取main的检测对象集合为函数检测对象集合;步骤32:从函数检测对象集合中,取一个检测对象;步骤33:判断是否取到,若取到则转步骤34,否则转步骤36;步骤34:设置输入状态为开始,检测函数为main函数,输入检测对象为取得的检测对象;步骤35:对检测函数进行程序操作序列分析,处理流程见步骤40-4c;转步骤32;步骤36:结束状态;
步骤40:起始状态;步骤41:判断检测函数的访问标记为ON,其值为1,是则转步骤41d,否则转步骤41a;步骤41a:置检测阶段为本地;步骤41b:从检测函数的本地检测对象集合中,取一个检测对象;步骤41c:判断是否取到检测对象,若取到则转步骤41e,否则转步骤41d;步骤41d:置检测阶段为输入,置检测函数的访问标记为 ON,其值为1;置检测对象为输入检测对象,输入状态为当前状态,转步骤42;步骤41e:置输入状态为开始,转步骤42;步骤42:从检测对象的操作序列中,取一个操作结点;步骤43:判断是否取到,若取到转步骤44,否则转步骤4f;步骤44:判断该语句操作是否在漏洞状态机操作集合中,是则转步骤45,否则转步骤46;步骤45:操作状态转换计算,处理流程见步骤50-57,得到转换状态,置当前状态为转换状态,转步骤4c;步骤46:判断该语句操作是否函数调用,是则转步骤47,否则转步骤4c;步骤47:顺序取每个函数调用参数;步骤48:判断是否取到,若取到,转步骤49,没取到则转步骤42;步骤49:判断所取的函数调用参数是否为检测对象,是则转步骤4a,否则转步骤47;步骤4a:设置当前状态为输入状态、检测函数为被调用函数、输入检测对象为现检测对象;进行函数程序操作序列分析,处理流程见步骤40-4c,置当前状态为函数结果状态;步骤4c :判断当前状态是否漏洞状态,是则转步骤4d,否则转步骤42;步骤4d:漏洞报警,转步骤42;步骤4f:操作序列分析结束处理,判断检测阶段是否为本地,是则转步骤41b,否则转步骤4g;步骤4g:置函数结果状态为当前状态;步骤4h:结束状态;
步骤50:起始状态;步骤51:置次状态为空;步骤52:在操作转换表中,查找操作动作所对应的操作结点;步骤53:判断查到操作结点否,若得到,转步骤54,否则转步骤56;步骤54 :判断操作结点的源状态是否为当前状态,是则转步骤55,否则转步骤52;步骤55:置转换状态为操作结点的新状态,转步骤57;步骤56:数据错误报警:步骤57:结束状态。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010102866640A CN101930401B (zh) | 2010-09-20 | 2010-09-20 | 一种基于检测对象的软件漏洞模型检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010102866640A CN101930401B (zh) | 2010-09-20 | 2010-09-20 | 一种基于检测对象的软件漏洞模型检测方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101930401A true CN101930401A (zh) | 2010-12-29 |
CN101930401B CN101930401B (zh) | 2012-02-01 |
Family
ID=43369592
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2010102866640A Expired - Fee Related CN101930401B (zh) | 2010-09-20 | 2010-09-20 | 一种基于检测对象的软件漏洞模型检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101930401B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102929614A (zh) * | 2012-10-16 | 2013-02-13 | 南京大学 | 一种用于漏洞检测的可调对象程序特征提取方法 |
CN102929774A (zh) * | 2012-10-16 | 2013-02-13 | 南京大学 | 一种基于可调对象分析的程序漏洞检测方法 |
CN102982282A (zh) * | 2012-11-26 | 2013-03-20 | 北京神州绿盟信息安全科技股份有限公司 | 程序漏洞的检测系统和方法 |
CN105608006A (zh) * | 2015-12-22 | 2016-05-25 | 武汉工程大学 | 一种基于概率模型的程序错误检测方法及系统 |
CN107862327A (zh) * | 2017-10-26 | 2018-03-30 | 华中科技大学 | 一种基于多特征的安全缺陷识别系统和方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101373506A (zh) * | 2008-10-22 | 2009-02-25 | 南京大学 | 一种基于漏洞模型的软件漏洞模型检测方法 |
CN101388055A (zh) * | 2008-10-22 | 2009-03-18 | 南京大学 | 一种用于漏洞模型检测的程序操作特征提取方法 |
-
2010
- 2010-09-20 CN CN2010102866640A patent/CN101930401B/zh not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101373506A (zh) * | 2008-10-22 | 2009-02-25 | 南京大学 | 一种基于漏洞模型的软件漏洞模型检测方法 |
CN101388055A (zh) * | 2008-10-22 | 2009-03-18 | 南京大学 | 一种用于漏洞模型检测的程序操作特征提取方法 |
Non-Patent Citations (1)
Title |
---|
《计算机工程》 20080630 张林,曾庆凯 软件安全漏洞的静态检测技术 157-159 全文 第34卷, 第12期 2 * |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102929614A (zh) * | 2012-10-16 | 2013-02-13 | 南京大学 | 一种用于漏洞检测的可调对象程序特征提取方法 |
CN102929774A (zh) * | 2012-10-16 | 2013-02-13 | 南京大学 | 一种基于可调对象分析的程序漏洞检测方法 |
CN102929774B (zh) * | 2012-10-16 | 2014-12-10 | 南京大学 | 一种基于可调对象分析的程序漏洞检测方法 |
CN102982282A (zh) * | 2012-11-26 | 2013-03-20 | 北京神州绿盟信息安全科技股份有限公司 | 程序漏洞的检测系统和方法 |
CN102982282B (zh) * | 2012-11-26 | 2015-12-23 | 北京神州绿盟信息安全科技股份有限公司 | 程序漏洞的检测系统和方法 |
CN105608006A (zh) * | 2015-12-22 | 2016-05-25 | 武汉工程大学 | 一种基于概率模型的程序错误检测方法及系统 |
CN105608006B (zh) * | 2015-12-22 | 2018-06-08 | 武汉工程大学 | 一种基于概率模型的程序错误检测方法及系统 |
CN107862327A (zh) * | 2017-10-26 | 2018-03-30 | 华中科技大学 | 一种基于多特征的安全缺陷识别系统和方法 |
CN107862327B (zh) * | 2017-10-26 | 2020-07-24 | 华中科技大学 | 一种基于多特征的安全缺陷识别系统和方法 |
Also Published As
Publication number | Publication date |
---|---|
CN101930401B (zh) | 2012-02-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101981028B1 (ko) | 바이너리 기반 보안 취약점 탐색 시스템, 그 방법 및 프로그램 | |
CN103559122B (zh) | 基于程序行为切片的测试案例约减方法 | |
CN110399300B (zh) | 一种基于动态类型感知的Python软件模糊测试方法 | |
CN101930401B (zh) | 一种基于检测对象的软件漏洞模型检测方法 | |
CN104766015B (zh) | 一种基于函数调用的缓冲区溢出漏洞动态检测方法 | |
CN110414277B (zh) | 基于多特征参数的门级硬件木马检测方法 | |
CN108491228A (zh) | 一种二进制漏洞代码克隆检测方法及系统 | |
US20110145799A1 (en) | Path-sensitive dataflow analysis including path refinement | |
CN106682514B (zh) | 基于子图挖掘的系统调用序列特征模式集生成方法 | |
CN110059010B (zh) | 基于动态符号执行与模糊测试的缓冲区溢出检测方法 | |
CN101388055B (zh) | 一种用于漏洞模型检测的程序操作特征提取方法 | |
CN105279086A (zh) | 一种基于流程图的自动检测电子商务网站逻辑漏洞的方法 | |
CN114036531A (zh) | 一种基于多尺度代码度量的软件安全漏洞检测方法 | |
CN106802861A (zh) | 一种检测内存泄露的方法和装置 | |
CN101937395B (zh) | 一种用于漏洞检测的检测对象程序特征提取方法 | |
CN108563561A (zh) | 一种程序隐性约束提取方法及系统 | |
CN101373506B (zh) | 一种基于漏洞模型的软件漏洞模型检测方法 | |
CN104021073A (zh) | 一种基于指针分析的软件漏洞检测方法 | |
CN102982282B (zh) | 程序漏洞的检测系统和方法 | |
CN102929614A (zh) | 一种用于漏洞检测的可调对象程序特征提取方法 | |
CN116401145A (zh) | 一种源代码静态分析处理方法及装置 | |
CN110502731B (zh) | 一种基于精化单元格聚类的电子表格缺陷检测方法 | |
CN109710538B (zh) | 一种用于大规模系统中状态相关缺陷的静态检测方法 | |
CN102929774B (zh) | 一种基于可调对象分析的程序漏洞检测方法 | |
Yuan et al. | Test case generation based on program invariant and adaptive random algorithm |
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: 20120201 Termination date: 20140920 |
|
EXPY | Termination of patent right or utility model |