Android App 静态分析工具比较(1) AAAL

NDSS 15: AAAL: Detecting Privacy Leakages via Enhanced Data-flow Analysis and Peer Voting

AAAL是检测Android App信息泄露的工具,相比其他工具,主要不同体现在:

在查找Source到sink路径的基础上,会额外做:

(1)重构source/sink的string参数,比如ContentResolver.query()中第一个参数content的URI,根据这个参数判断source所属的内容范围,减少误报。(技术一:Opportunistic Constant Evaluation)

(2)对sink进行data flow分析,分析所有相关代码片段,确认所用sink函数具体类型(比如是文件写还是网络发送)(技术二:Object Origin Inference)

(3)联合数据流分析,将子path结合起来,分析联合数据流的source和sink(技术三:Joint Flow Tracking)

在找到source和sink的基础上,会利用Google play推荐,找出属于同一类别的其他app,利用其他app的信息泄露与该app进行比较,如果都一致,忽略该信息泄露,减少误报。(技术四:Peer Voting Mechanism)

 

背景知识:

Android静态程序分析中,source是指获取用户信息的函数,如getDeviceID,sink是指将信息发送/保存的函数,如文件写,网络发送。

source和sink函数之间的路径path,包含了从信息获取,到将信息发送出去的整个过程所有代码,称为信息泄露(Privacy Leakage)。

 

Related URL:

http://wenke.gtisc.gatech.edu/papers/aapl.pdf

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。