一种程序分解方法
    11.
    发明公开

    公开(公告)号:CN101477611A

    公开(公告)日:2009-07-08

    申请号:CN200910076769.0

    申请日:2009-01-20

    Applicant: 北京大学

    Abstract: 本发明公开了一种程序分解方法,属于软件工程、信息安全技术领域。本发明方法包括:a)设定始函数和终函数;b)以始函数和直接或间接调用始函数的函数组成的集合为Source;类似地,设定Sinks;c)分别对仅属于Source和Sinks的函数,以及两者交集中的函数分解其控制流图;d)依次连接各控制流图,输出对应的程序。当本方法用于漏洞挖掘时,始函数选自污染数据引入函数,比如文件读入函数,网络数据读入函数和格式化输入函数;终函数选自污染数据敏感函数,比如内存操作函数,内存分配函数,字符串操作函数和进程启动函数。本发明方法可将大规模程序分解为较小的代码片段,可有效地应用域漏洞挖掘等技术领域。

    一种嵌套循环结构的识别方法

    公开(公告)号:CN101271397A

    公开(公告)日:2008-09-24

    申请号:CN200710090003.9

    申请日:2007-03-23

    Applicant: 北京大学

    Abstract: 本发明属于逆向工程和程序分析领域,具体涉及一种识别循环结构的方法对可执行文件进行反汇编,得到该可执行文件的中间代码;从上述中间代码中提取控制流信息,得到控制流图;深度优先遍历控制流图,识别循环节点;标记节点的最内层循环头节点;将对应的控制流图识别为循环结构。本发明可以有效判定循环结构,以及它们之间的嵌套关系,进而有效结构化程序控制流图。可用于反编译、软件测试等设备中。

    一种高效动态软件漏洞挖掘方法

    公开(公告)号:CN101853200B

    公开(公告)日:2012-09-26

    申请号:CN201010171996.4

    申请日:2010-05-07

    Applicant: 北京大学

    Abstract: 本发明公开了一种高效动态软件漏洞挖掘方法,其步骤包括:1)目标软件处理正常输入数据,并收集正常输入数据中传播进入系统函数、库函数的字节;2)在正常输入数据中,修改传播进入系统函数、库函数的字节,生成畸形数据;3)将生成的畸形数据输入至目标软件,如果目标软件处理畸形数据时异常,则生成漏洞报告。本发明方法通过自动识别正常输入数据中传入系统函数、库函数的字节,从而针对性的修改这些字节产生畸形数据,显著提高了畸形数据触发安全漏洞的可能性,充分提高了模糊测试的效率。

    一种软件漏洞挖掘方法
    14.
    发明授权

    公开(公告)号:CN101847121B

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

    申请号:CN201010171979.0

    申请日:2010-05-07

    Applicant: 北京大学

    Abstract: 本发明公开了一种软件漏洞挖掘方法,属于软件工程和信息安全领域。本方法为:1)将多个正常数据输入目标程序,收集该目标程序的运行时信息;2)生成畸形数据,并将其输入该目标程序,收集该目标程序的运行时信息;3)根据1)、2)收集的运行时信息,识别该目标程序中校验和的检测代码;4)修改校验和的检测代码,使得目标程序处理畸形数据时的执行行为与处理正常数据时一致;5)生成若干畸形数据并输入修改后的目标程序,将使其崩溃的畸形数据作为样本数据;6)修改每个样本数据中校验和的域值并将其输入原目标程序,如果原目标程序崩溃或发生异常则报告一个潜在的安全漏洞。与现有技术相比,本发明可以大大提高漏洞挖掘的效率。

    一种软件漏洞挖掘方法
    15.
    发明公开

    公开(公告)号:CN101847121A

    公开(公告)日:2010-09-29

    申请号:CN201010171979.0

    申请日:2010-05-07

    Applicant: 北京大学

    Abstract: 本发明公开了一种软件漏洞挖掘方法,属于软件工程和信息安全领域。本方法为:1)将多个正常数据输入目标程序,收集该目标程序的运行时信息;2)生成畸形数据,并将其输入该目标程序,收集该目标程序的运行时信息;3)根据1)、2)收集的运行时信息,识别该目标程序中校验和的检测代码;4)修改校验和的检测代码,使得目标程序处理畸形数据时的执行行为与处理正常数据时一致;5)生成若干畸形数据并输入修改后的目标程序,将使其崩溃的畸形数据作为样本数据;6)修改每个样本数据中校验和的域值并将其输入原目标程序,如果原目标程序崩溃或发生异常则报告一个潜在的安全漏洞。与现有技术相比,本发明可以大大提高漏洞挖掘的效率。

    一种嵌套循环结构的识别方法

    公开(公告)号:CN100559347C

    公开(公告)日:2009-11-11

    申请号:CN200710090003.9

    申请日:2007-03-23

    Applicant: 北京大学

    Abstract: 本发明属于逆向工程和程序分析领域,具体涉及一种识别循环结构的方法对可执行文件进行反汇编,得到该可执行文件的中间代码;从上述中间代码中提取控制流信息,得到控制流图;深度优先遍历控制流图,识别循环节点;标记节点的最内层循环头节点;将对应的控制流图识别为循环结构。本发明可以有效判定循环结构,以及它们之间的嵌套关系,进而有效结构化程序控制流图。可用于反编译、软件测试等设备中。

    一种复合条件分支结构的识别方法

    公开(公告)号:CN101063944A

    公开(公告)日:2007-10-31

    申请号:CN200610169677.3

    申请日:2006-12-27

    Applicant: 北京大学

    Abstract: 本发明涉及一种识别复合条件分支结构的方法,其步骤包括对可执行文件进行反汇编,得到该可执行文件的中间代码;从上述中间代码中提取控制流信息,得到控制流图;遍历控制流图,得到级联分支结构;将级联分支结构对应的控制流图识别为复合条件分支结构。在可执行文件的控制流信息基础上,本发明可以精确、自动化识别复合条件分支结构,准确结构化程序控制流图,比现有的识别方法要更加准确,漏报和误报的情形有明显改善,实现效率高。可用于反编译、软件测试等设备中。

Patent Agency Ranking