[发明专利]基于静态污点分析和符号执行的安卓应用漏洞挖掘方法有效
申请号: | 201611113164.0 | 申请日: | 2016-12-07 |
公开(公告)号: | CN106709356B | 公开(公告)日: | 2019-05-24 |
发明(设计)人: | 付胧玉;杨超;杨力;马建峰;罗丹;卢璐 | 申请(专利权)人: | 西安电子科技大学 |
主分类号: | G06F21/57 | 分类号: | G06F21/57 |
代理公司: | 陕西电子工业专利中心 61205 | 代理人: | 王品华;朱红星 |
地址: | 710071 陕*** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 漏洞挖掘 污点 控制流 分析 漏洞 数据流分析 分析目标 符号执行 内存消耗 应用程序漏洞 反编译程序 技术过滤 静态符号 挖掘 可用 误报 源码 编译 过滤 应用 打印 警告 配置 研究 | ||
本发明公开了一种基于静态污点分析和符号执行的安卓应用漏洞挖掘方法,主要解决现有用静态污点分析方法挖掘漏洞的过程中,分析范围固定,内存消耗巨大,分析结果存在误报的问题,其实现方案是1)配置分析目标并反编译程序源码;2)对反编译的结果进行控制流分析;3)用户根据控制流分析结果选择source函数,缩减分析目标;4)依据控制流分析结果进行数据流分析,产生漏洞路径;5)采取静态符号执行技术过滤数据流分析的结果,过滤后剩下的部分作为找到的漏洞,警告用户并打印漏洞路径。本发明在现有的静态污点分析技术的基础上扩展了漏洞挖掘的范围,减少了漏洞挖掘的内存消耗,提高了漏洞挖掘结果的精确度,可用于安卓应用程序漏洞的挖掘和研究。
技术领域
本发明属于网络与系统安全领域,具体涉及安卓应用漏洞挖掘方法,可用于由外部注入引起的安卓程序漏洞的分析和研究。
背景技术
污点传播分析是根据数据依赖关系对程序进行分析的一种技术,常用于检测二进制程序中与数据相关的漏洞,比如隐私泄露漏洞和组件劫持漏洞等。按照是否需要目标程序运行,污点传播分析可分为静态和动态两种类型。
静态污点分析方法,相对基于多次执行的动态污点分析,只需要执行一次就可以得到整体分析结果,具有分析路径更全面和效率更高的优点。其分析过程主要利用了控制流分析和数据流分析技术,其中:
控制流分析,是针对程序控制流的静态分析技术,先根据程序执行方向将代码解析成一个有向图G=(B,E),其中B是基本程序语句构成的节点集合{B1,B2,…,Bn},E是有向边集合{(Bi,Bj),(Bk,Bl),…},其中边(Bi,Bj)表示在某个执行序列中Bj位于Bi之后;然后通过对图连通性质的研究来提取代码中的可达路径以及路径之上的约束求解。
数据流分析,其过程是从程序代码中收集程序的语义信息,并通过代数的方法确定程序中变量的定义和使用情况。优势是可以不必实际运行程序就能够发现程序数据方面的特性,并发现其中存在的问题。
静态污点分析方法的检测目标包括,污染源函数source函数和陷入函数sink函数这两种函数,其中:
污染源函数source,是数据流记录的起点,在执行路径上所有与source存在数据依赖关系的变量都将被标记为污染数据;
陷入函数sink,是数据流记录的终点,如果有污染数据进入sink就可认为存在安全隐患。
对于安卓程序的静态污点分析大多数应用于研究领域。已知的静态的污点分析系统多用于检测程序的隐私泄露,却不适用于挖掘程序漏洞。以目前最为精确的安卓程序静态污点分析系统FlowDroid为例,其执行流程如图1所示,当把其用于对安卓程序漏洞进行挖掘时会十分乏力,主要存在以下缺陷:
1.当前的静态污点分析系统为了追求自动化,极少为用户提供自定义接口,其分析的目标一般由安全机构硬编码到分析系统中,是固定的分析起点和终点集合,限制了漏洞分析的范围。
2.当前的静态分析系统执行时会分析整个程序的所有数据流,其中包含着大量与用户意愿不一致的数据流目标。相对于一个程序控制流的数量,数据流往往会多出数倍,并且由于语言特性,其分析过程也相当复杂,所以冗余的数据流分析会直接造成静态污点分析巨大的内存消耗和时间花费。
3.由于静态污点分析具备“一次性全面分析”的理论特性,其分析过程是“路径不敏感”的,即分析过程中遇到条件分支语句,无法辨别程序走向,只能全路径分析,如果不引入新的技术进行优化,这会导致最终分析结果可能产生误报,例如可能会报出一条污染路径,但是在程序的执行中,该路径会因为条件语句的控制而完全不可达。
发明内容
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安电子科技大学,未经西安电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201611113164.0/2.html,转载请声明来源钻瓜专利网。