发明名称 一种移动智能终端上的定向符号执行程序检测系统及方法
摘要 本发明提出一种移动智能终端上定向符号执行程序检测系统及方法,在符号化处理模块、系统API模拟模块、定向控制模块、过滤执行模块组成的环境中,1)载入待检测程序路径,由符号化处理模块对待检测程序路径中指令进行符号化处理,将处理结果存储到符号表SymbolicTable;2)根据待检测路径,确定被检测代码空间;3)根据执行过程记录所述变量执行约束条件,SymbolicTable更新记录;4)根据符号表SymbolicTable中约束条件找到对应的结果表达式或符号数值,判断程序中是否有可执行路径,5)反复1)—4),遍历程序中所有可达路径,完成软件中嫌疑操作检测。本发明的定向符号执行方法,与静态分析技术结合,解决程序分析中路径漏报和误报,提取出路径约束能够覆盖到所有可能的路径。
申请公布号 CN102789417A 申请公布日期 2012.11.21
申请号 CN201210200544.3 申请日期 2012.06.14
申请人 北京大学 发明人 龚晓锐;杨广亮;韩心慧;邹维
分类号 G06F11/36(2006.01)I 主分类号 G06F11/36(2006.01)I
代理机构 北京君尚知识产权代理事务所(普通合伙) 11200 代理人 余长江
主权项 一种移动智能终端上的定向符号执行程序检测方法,提取若干待检测程序路径,设置所述检测程序路径的结束点,其步骤包括:1)载入一待检测程序路径,对待检测程序路径中指令进行符号化处理,得到指令对应的符号化变量,并将处理结果存储到符号表SymbolicTable中;2)在执行路径时,执行该程序中每一个指令;当指令为程序调用时,调用API函数;当指令为分支语句时,记录并生成约束条件;同时更新符号SymbolicTable;3)当检测路径执行至结束点时停止程序,收集所述路径执行约束条件;4)根据符号表SymbolicTable中约束条件找到对应的结果表达式或符号数值,判断程序中是否有可执行路径,5)反复执行1)—4),遍历程序中所有待测路径,完成软件中嫌疑操作检测。
地址 100871 北京市海淀区颐和园路5号北京大学