一种基于隐式污点传播的漏洞分析方法技术

技术编号:16455867 阅读:212 留言:0更新日期:2017-10-25 19:58
本发明专利技术提供一种基于隐式污点传播的漏洞分析方法,其步骤为:提取待分析程序的控制流图;计算上述控制流图中每一条指令的前后必经节点的控制依赖关系;启动上述程序并监控该程序执行的每一条指令;将监控到的该程序调用的读数据操作函数的返回值加入到污点记录中;追踪程序执行的指令,计算正向污点传播过程,直到程序出现异常或中止分析过程;如果仅有计算正向污点传播过程得到的显式污点传播路径,则从程序中存在的控制流劫持点为起点开始逆向回溯,若出现回溯中断,则采用隐式污点传播,使回溯过程能够继续进行。

【技术实现步骤摘要】
一种基于隐式污点传播的漏洞分析方法
本专利技术涉及网络安全
,尤其涉及一种基于隐式污点传播的漏洞分析方法。
技术介绍
当前软件漏洞分析主要采用污点传播分析方法,但传统的污点传播通常针对于数据依赖进行分析,对于文件类漏洞分析效果较好,但无法追踪JavaScript等脚本引发的浏览器漏洞,其原因是此类脚本程序通常采用解析执行,在程序逻辑上表现为输入数据产生控制依赖影响程序执行的隐式污点传播过程。因此,提高针对控制依赖的隐式污点传播分析能力十分必要。当前基于显式污点传播的分析技术,通常使用如下几种方法:1、拦截接收外部输入数据的函数,当数据被读入到系统中时,给数据所在的内存控件打上污点标记。目前的显式污点传播分析方法,主要拦截操作系统中读取文件、接收网络数据、读取注册表等函数,当函数返回时,其返回值中的缓冲区即为读取到的数据,可将该缓冲区数据标记为污点。2、拦截程序执行的每一条指令,追踪污点数据使用情况。监控系统的执行指令主要方式是使用调试器附加到目标进程上,或者使用虚拟机从虚拟CPU层面监控程序执行的每一条指令,分析指令的操作数,如果操作数引用了污点数据,则将计算结果也标记为污点,本文档来自技高网...
一种基于隐式污点传播的漏洞分析方法

【技术保护点】
一种基于隐式污点传播的漏洞分析方法,其步骤包括:1)提取待分析程序的控制流图;2)计算上述控制流图中每一条指令的前后必经节点的控制依赖关系;3)启动上述程序并监控该程序执行的每一条指令;4)将监控到的该程序调用的读数据操作函数的返回值加入到污点记录中;5)追踪程序执行的指令,计算正向污点传播过程,直到程序出现异常或中止分析过程;6)如果仅有步骤5)中计算得到的显式污点传播路径,则从程序中存在的控制流劫持点为起点开始逆向回溯,若出现回溯中断,则采用隐式污点传播;所述隐式污点传播包括以下步骤:a)确定污点在逆向回溯传播过程中出现回溯中断的指令I;b)分析步骤2)中得到的控制依赖关系,寻找指令I所依...

【技术特征摘要】
2016.12.26 CN 20161121651121.一种基于隐式污点传播的漏洞分析方法,其步骤包括:1)提取待分析程序的控制流图;2)计算上述控制流图中每一条指令的前后必经节点的控制依赖关系;3)启动上述程序并监控该程序执行的每一条指令;4)将监控到的该程序调用的读数据操作函数的返回值加入到污点记录中;5)追踪程序执行的指令,计算正向污点传播过程,直到程序出现异常或中止分析过程;6)如果仅有步骤5)中计算得到的显式污点传播路径,则从程序中存在的控制流劫持点为起点开始逆向回溯,若出现回溯中断,则采用隐式污点传播;所述隐式污点传播包括以下步骤:a)确定污点在逆向回溯传播过程中出现回溯中断的指令I;b)分析步骤2)中得到的控制依赖关系,寻找指令I所依赖的指令J;c)将指令J作为新起点加入到回溯路径中;d)由指令J开始继续向前回溯,直到到达原始的污点数据。2.如权利要求1所述的方法,其特征在于,该方法步骤还包括:当逆向回溯到达原始的污点数据时输出污点回溯结果。3.如权利要求2所述的方法,其特征在于,所述污点回溯结果是指回溯得到的指令序...

【专利技术属性】
技术研发人员:杨轶苏璞睿黄桦烽和亮
申请(专利权)人:中国科学院软件研究所
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1