一种面向多种补丁模式的差异分支识别方法及系统

    公开(公告)号:CN109241737B

    公开(公告)日:2021-07-13

    申请号:CN201810718977.5

    申请日:2018-07-03

    Abstract: 本发明提供一种面向多种补丁模式的差异分支识别方法,步骤包括:对补丁前后的二进制程序进行比对,识别出补丁后程序中的差异函数及其包含的差异块,该差异块为新增块或修改块;对于控制流补丁,如果差异块的后继结点中有一个是新增块,且该新增块包含另一侧基本块的所有指令,则将从差异块到该新增块的分支作为差异分支;如果差异块含有两个后继结点,则将从差异块到距离函数退出结点最近的后继结点的分支作为差异分支;对于数据流补丁,如果差异块的前驱结点和后继结点均为匹配块,且前驱结点含有两个后继结点,则将该前驱结点到差异块的分支作为差异分支。

    一种面向多种补丁模式的差异分支识别方法及系统

    公开(公告)号:CN109241737A

    公开(公告)日:2019-01-18

    申请号:CN201810718977.5

    申请日:2018-07-03

    Abstract: 本发明提供一种面向多种补丁模式的差异分支识别方法,步骤包括:对补丁前后的二进制程序进行比对,识别出补丁后程序中的差异函数及其包含的差异块,该差异块为新增块或修改块;对于控制流补丁,如果差异块的后继结点中有一个是新增块,且该新增块包含另一侧基本块的所有指令,则将从差异块到该新增块的分支作为差异分支;如果差异块含有两个后继结点,则将从差异块到距离函数退出结点最近的后继结点的分支作为差异分支;对于数据流补丁,如果差异块的前驱结点和后继结点均为匹配块,且前驱结点含有两个后继结点,则将该前驱结点到差异块的分支作为差异分支。

    一种面向目标的测试用例生成方法及系统

    公开(公告)号:CN109117364A

    公开(公告)日:2019-01-01

    申请号:CN201810713776.6

    申请日:2018-07-03

    Abstract: 本发明提供一种面向目标的测试用例生成方法,步骤包括:计算目标程序的CFG上每个结点到目标的距离,该目标为CFG上的一个结点或一条边;根据该距离进行导向模糊测试,如果该输入覆盖目标,则生成面向目标的测试用例,否则调用导向符号执行;将导向符号执行产生的输入同步到导向模糊测试的队列中以优先变异,如果该输入覆盖目标,则生成面向目标的测试用例。本发明将导向模糊测试和导向符号执行相结合,既解决模糊测试无法变异满足复杂约束的局限性,又能弥补符号执行的扩展性问题;同时设计了更加高效的导向策略以及两者结合时的交互策略,提高面向目标的测试用例生成效率。

    一种面向目标的测试用例生成方法及系统

    公开(公告)号:CN109117364B

    公开(公告)日:2021-06-15

    申请号:CN201810713776.6

    申请日:2018-07-03

    Abstract: 本发明提供一种面向目标的测试用例生成方法,步骤包括:计算目标程序的CFG上每个结点到目标的距离,该目标为CFG上的一个结点或一条边;根据该距离进行导向模糊测试,如果该输入覆盖目标,则生成面向目标的测试用例,否则调用导向符号执行;将导向符号执行产生的输入同步到导向模糊测试的队列中以优先变异,如果该输入覆盖目标,则生成面向目标的测试用例。本发明将导向模糊测试和导向符号执行相结合,既解决模糊测试无法变异满足复杂约束的局限性,又能弥补符号执行的扩展性问题;同时设计了更加高效的导向策略以及两者结合时的交互策略,提高面向目标的测试用例生成效率。

Patent Agency Ranking