GDA-隐私泄露检测
GDA的隐私泄露检测引擎是基于GDA反编译器的低级中间表示做寄存器追踪来实现的,其检测内核以轻量级高速污点传播引擎FlashFlow为基础,通过扫描APP中的所有可能的敏感数据生成点(DataPin)做污点传播分析来确定泄露点。同时记录有效泄露点与敏感数据生成点之间的路径,以方便做路劲回溯,并且输出隐私泄露报告。具体操作如图:
在PRO版的GDA反编译器中,点击PrivacyLeak(1)开始进行扫描,不久你会看到隐私扫描的结果报告以及PrivacyLeak窗口。在扫描报告(2)中,DataPin表示敏感数据生成点,后面是生成敏感数据的API以及其调用者method;Leak表示泄露点,后面是泄露数据的API以及其调用者。这里你可以双击调用者(比如[method@xxxxxxx])去找到生成点和泄露点的位置。PrivacyLeak窗口以树形的方式展示扫描结果,你可以在每个结果根节点上右键(3)>Path Detail(4)来查看更详细的路径信息,同时我们单击路径的节点时还能同步到反编译的代码(5)中去。