发明名称 一种二进制程序漏洞挖掘方法和系统
摘要 本发明提供一种二进制程序漏洞挖掘方法,包括步骤:将目标二进制程序转化为汇编语言并进行静态分析;结合静态分析的分析结果对中间语言进行Promela模型建模;构建漏洞模型插入到Promela模型中;引入外部C代码,基于SPIN模拟执行所述Promela模型,检测漏洞。本发明还提供一种二进制程序漏洞挖掘系统,包括预处理模块、代码转化模块和模型检测模块。该方法和系统,引入中间语言BIL作为二进制程序到Promela模型的转化桥梁,实现了对二进制程序的自动化建模,同时利用SPIN的嵌C功能实现模拟执行,并引入外部C代码来弥补模型检测的不足。实验表明,该方法可以有效检测二进制程序的内存破环型漏洞。
申请公布号 CN105678169A 申请公布日期 2016.06.15
申请号 CN201511025350.4 申请日期 2015.12.30
申请人 西安胡门网络技术有限公司 发明人 崔艳鹏;胡建伟
分类号 G06F21/57(2013.01)I 主分类号 G06F21/57(2013.01)I
代理机构 济南信达专利事务所有限公司 37100 代理人 李世喆
主权项 一种二进制程序漏洞挖掘方法,其特征在于,包括步骤:步骤A,采用反编译器IDA将二进制程序转化为汇编语言,并基于IDA进行汇编语言层次的静态分析得到函数流图;步骤B,通过中间语言平台BAP将所述汇编语言转化为BIL语言,并结合静态分析的分析结果对所述BIL语言进行Promela模型建模;步骤C,构建漏洞模型,并插入到所述Promela模型中;步骤D,引入外部C代码修补SPIN,并基于修补后的SPIN模拟执行所述Promela模型,检测漏洞;步骤E,输出检测结果和漏洞信息。
地址 710000 陕西省西安市太白南路373号新长城大厦11502室