基于并行符号执行的多源多目标逼近测试方法

    公开(公告)号:CN105550120B

    公开(公告)日:2018-02-16

    申请号:CN201610066280.5

    申请日:2016-01-29

    Abstract: 本发明涉及一种基于并行符号执行的多源多目标逼近测试方法,首先,在面向安全分析的中间语言表示基础上,检测定位输入函数source节点和危险函数sink节点;然后,利用程序控制流图,分析source节点到sink节点的调用路径集合,建立多源source节点到多目标sink节点的映射关系;根据具有映射关系的节点对,计算source节点出度和sink节点入度;最后,以出度和入度为优先级度量依据,按优先级实现并行任务调度,以实施多源到多目标的逼近测试。本发明较好解决了传统随机路径调度的并行测试具有的盲目性低效率问题,大大提高了关键目标覆盖的命中率和软件测试分析的效率。

    基于相容优化的并行约束求解方法

    公开(公告)号:CN103294797A

    公开(公告)日:2013-09-11

    申请号:CN201310200458.7

    申请日:2013-05-24

    Abstract: 本发明涉及一种基于相容优化的并行约束求解方法,含有下列步骤:1:初始化任务队列;2:如果任务队列中没有搜索向量,则结束;如果有搜索向量,则选择一个作为当前工作任务;3:从所有未赋值的约束变元中选择要赋值的约束变元;4:对要赋值的约束变元的所有可能取值进行赋值,形成新的搜索向量放入任务队列中;5:对新的搜索向量进行并行相容检查;6:如果相容检查发现冲突,则进行回溯分析,重建搜索向量,更新任务队列,执行2;如果相容检查没有发现冲突,且所有约束变元已经赋值,则说明找到了可满足的求解,结束;如果不是所有约束变元已经赋值,则将新构建的搜索向量加入任务队列,执行2;本发明实现了约束求解的并行高效执行。

    基于代码指纹的代码同源性检测方法及其装置

    公开(公告)号:CN107169358A

    公开(公告)日:2017-09-15

    申请号:CN201710375425.4

    申请日:2017-05-24

    Abstract: 本发明涉及一种基于代码指纹的代码同源性检测方法及其装置,该方法包含:对输入代码进行依赖关系分析,获取原始程序依赖图PDG;对原始程序依赖图PDG进行结构简化、嵌套移除和着色处理,获取简化程序依赖图sPDG;基于抽象语法树解析代码关键语法信息;抽取代码执行路径的系统调用序列,获取目标代码的全路径参数向量集合,构建代码指纹;计算代码指纹部件间的同源性系数;根据同源性系数计算两份代码S和T的同源性指数,通过该同源性指数判定代码双方存在的同源关系。本发明能够在相似性的基础上兼顾代码语义与行为,利用轻量级的特征与简化机制提高检测效率,多角度衡量代码间存在的同源关系,能够在保证准确性的同时,提高检测效率。

    基于相容优化的并行约束求解方法

    公开(公告)号:CN103294797B

    公开(公告)日:2016-06-22

    申请号:CN201310200458.7

    申请日:2013-05-24

    Abstract: 本发明涉及一种基于相容优化的并行约束求解方法,含有下列步骤:1:初始化任务队列;2:如果任务队列中没有搜索向量,则结束;如果有搜索向量,则选择一个作为当前工作任务;3:从所有未赋值的约束变元中选择要赋值的约束变元;4:对要赋值的约束变元的所有可能取值进行赋值,形成新的搜索向量放入任务队列中;5:对新的搜索向量进行并行相容检查;6:如果相容检查发现冲突,则进行回溯分析,重建搜索向量,更新任务队列,执行2;如果相容检查没有发现冲突,且所有约束变元已经赋值,则说明找到了可满足的求解,结束;如果不是所有约束变元已经赋值,则将新构建的搜索向量加入任务队列,执行2;本发明实现了约束求解的并行高效执行。

    基于并行符号执行的多源多目标逼近测试方法

    公开(公告)号:CN105550120A

    公开(公告)日:2016-05-04

    申请号:CN201610066280.5

    申请日:2016-01-29

    CPC classification number: G06F11/3676 G06F11/3688

    Abstract: 本发明涉及一种基于并行符号执行的多源多目标逼近测试方法,首先,在面向安全分析的中间语言表示基础上,检测定位输入函数source节点和危险函数sink节点;然后,利用程序控制流图,分析source节点到sink节点的调用路径集合,建立多源source节点到多目标sink节点的映射关系;根据具有映射关系的节点对,计算source节点出度和sink节点入度;最后,以出度和入度为优先级度量依据,按优先级实现并行任务调度,以实施多源到多目标的逼近测试。本发明较好解决了传统随机路径调度的并行测试具有的盲目性低效率问题,大大提高了关键目标覆盖的命中率和软件测试分析的效率。

    基于代码指纹的代码同源性检测方法及其装置

    公开(公告)号:CN107169358B

    公开(公告)日:2019-10-08

    申请号:CN201710375425.4

    申请日:2017-05-24

    Abstract: 本发明涉及一种基于代码指纹的代码同源性检测方法及其装置,该方法包含:对输入代码进行依赖关系分析,获取原始程序依赖图PDG;对原始程序依赖图PDG进行结构简化、嵌套移除和着色处理,获取简化程序依赖图sPDG;基于抽象语法树解析代码关键语法信息;抽取代码执行路径的系统调用序列,获取目标代码的全路径参数向量集合,构建代码指纹;计算代码指纹部件间的同源性系数;根据同源性系数计算两份代码S和T的同源性指数,通过该同源性指数判定代码双方存在的同源关系。本发明能够在相似性的基础上兼顾代码语义与行为,利用轻量级的特征与简化机制提高检测效率,多角度衡量代码间存在的同源关系,能够在保证准确性的同时,提高检测效率。

    一种使用多样本差异比对的软件故障分析方法

    公开(公告)号:CN102789419B

    公开(公告)日:2015-04-15

    申请号:CN201210251704.7

    申请日:2012-07-20

    Abstract: 本发明涉及一种计算机技术领域的软件分析方法,特别是涉及一种使用多样本差异比对的软件故障分析方法。其步骤包括:1)将被分析程序进行反汇编和动态插桩;2)追踪和记录待分析程序的执行指令流,构建程序的以基本块为最小单位的控制流图;3)选取数据处理入口点作为对比的基点,构建多样本差异树模型,将多个样本两两分组做控制流图对比,找到其中的关键指令流分支点,获得错误数据输入点到各个差异点之间的关键路径。本发明软件故障分析方法有效解决了双样本差异比对方法对复杂故障无法定位的问题,使软件故障分析工作效率显著提高。

    一种动静态结合的软件安全性测试方法

    公开(公告)号:CN102360334B

    公开(公告)日:2015-04-15

    申请号:CN201110315845.6

    申请日:2011-10-17

    Abstract: 本发明涉及一种计算机软件安全性测试方法。一种动静态结合的软件安全性测试方法,首先,将可执行程序进行反汇编及中间语言转换,生成文件的函数调用图和控制流图;然后通过对函数调用图的静态分析,找到系统脆弱点,并利用动态分析方法构造测试用例生成执行路径;再以函数调用图为基础,寻找其被调用的函数,如果该函数处于前述生成的执行路径上,则控制流图在基本块一级找到触发该脆弱点的具体路径,则该敏感点对应的漏洞挖掘过程结束;如果无法找到该路径,则重新构造测试用例生成执行路径,寻找其被调用的函数,如此往复循环。本发明较好解决了单一依靠Fuzz动态测试带来的路径状态空间爆炸的问题,大大提高了路径覆盖的命中率和软件测试分析的效率。

    一种动静态结合的软件安全性测试方法

    公开(公告)号:CN102360334A

    公开(公告)日:2012-02-22

    申请号:CN201110315845.6

    申请日:2011-10-17

    Abstract: 本发明涉及一种计算机软件安全性测试方法。一种动静态结合的软件安全性测试方法,首先,将可执行程序进行反汇编及中间语言转换,生成文件的函数调用图和控制流图;然后通过对函数调用图的静态分析,找到系统脆弱点,并利用动态分析方法构造测试用例生成执行路径;再以函数调用图为基础,寻找其被调用的函数,如果该函数处于前述生成的执行路径上,则控制流图在基本块一级找到触发该脆弱点的具体路径,则该敏感点对应的漏洞挖掘过程结束;如果无法找到该路径,则重新构造测试用例生成执行路径,寻找其被调用的函数,如此往复循环。本发明较好解决了单一依靠Fuzz动态测试带来的路径状态空间爆炸的问题,大大提高了路径覆盖的命中率和软件测试分析的效率。

    一种使用多样本差异比对的软件故障分析方法

    公开(公告)号:CN102789419A

    公开(公告)日:2012-11-21

    申请号:CN201210251704.7

    申请日:2012-07-20

    Abstract: 本发明涉及一种计算机技术领域的软件分析方法,特别是涉及一种使用多样本差异比对的软件故障分析方法。其步骤包括:1)将被分析程序进行反汇编和动态插桩;2)追踪和记录待分析程序的执行指令流,构建程序的以基本块为最小单位的控制流图;3)选取数据处理入口点作为对比的基点,构建多样本差异树模型,将多个样本两两分组做控制流图对比,找到其中的关键指令流分支点,获得错误数据输入点到各个差异点之间的关键路径。本发明软件故障分析方法有效解决了双样本差异比对方法对复杂故障无法定位的问题,使软件故障分析工作效率显著提高。

Patent Agency Ranking