华为云计算 云知识 移动应用中的第三方SDK隐私合规检测
移动应用中的第三方SDK隐私合规检测

【摘要】 概述:工信部164号文[1]要求对SDK违规处理用户个人信息进行整治,包括违规收集个人信息、超范围收集个人信息、违规使用个人信息、强制用户使用定向推送功能等违规内容。相关整治内容的检测需要结合第三方SDK隐私声明与SDK运行时行为进行判断。本文简要介绍如何提取与解析第三方SDK相关的隐私政策内容以及如何在运行时监控第三方SDK处理个人隐私数据。工信部164号文中对于SDK违规处...

概述:

工信部164号文[1]要求对SDK违规处理用户个人信息进行整治,包括违规收集个人信息、超范围收集个人信息、违规使用个人信息、强制用户使用定向推送功能等违规内容。相关整治内容的检测需要结合第三方SDK隐私声明与SDK运行时行为进行判断。本文简要介绍如何提取与解析第三方SDK相关的隐私政策内容以及如何在运行时监控第三方SDK处理个人隐私数据。

工信部164号文中对于SDK违规处理个人信息的检测内容:

(一)APP、SDK违规处理用户个人信息方面。

1.违规收集个人信息。重点整治APP、SDK未告知用户收集个人信息的目的、方式、范围且未经用户同意,私自收集用户个人信息的行为。

2.超范围收集个人信息。重点整治APP、SDK非服务所必需或无合理应用场景,特别是在静默状态下或在后台运行时,超范围收集个人信息的行为。

3.违规使用个人信息。重点整治APP、SDK未向用户告知且未经用户同意,私自使用个人信息,将用户个人信息用于其提供服务之外的目的,特别是私自向其他应用或服务器发送、共享用户个人信息的行为。

4.强制用户使用定向推送功能。重点整治APP、SDK未以显著方式标示且未经用户同意,将收集到的用户搜索、浏览记录、使用习惯等个人信息,用于定向推送或广告精准营销,且未提供关闭该功能选项的行为。

第三方SDK隐私政策提取与解析

针对第三方SDK隐私声明的提取,按照应用隐私政策呈现的方式,可以分为两种主要形式:1、直接在应用隐私声明中陈述(如图1所示)。2、在隐私声明中提供跳转形式单独表述(如图2所示)。针对第2种情况,需要对第三方SDK隐私声明的文本跳转内容进行提取。

图1 正文中的第三方SDK隐私声明

图2 第三方SDK隐私声明链接

图3 表格形式呈现的第三方隐私政策                         

调研表明,当第三方SDK的隐私声明以跳转方式另行表述时,目标跳转页面通常通过webview进行呈现,并且当前应用的隐私声明也由webview进行呈现。原因可能在于使用url借助webview进行跳转,不需要另行开发跳转过程,否则需要通过封装intent进行不同应用页面之间的跳转。

对第三方SDK隐私声明内容进行提取,存在两种可行方案。一、获取第三方SDK超链接,进而通过url解析文本。二、获取第三方SDK超链接文字在页面上的位置,通过模拟点击跳转,然后通过uiautomator获取页面文字。第二种方案可由《移动应用隐私合规检测简介及目标检测技术的应用》 中所述的方案进行文本定位。但是考虑到部分应用使用表格形式展示接入的第三方SDK的情形,如果通过uiautomator获取页面文字将丢失表格样式信息,增加解析难度。因此优先采用第一种方案,具体步骤为:

1、利用hook技术添加代码 webView.setWebContentsDebuggingEnabled(true);

2、获取第三方SDK超链接,并跳转;

3、基于Chrome DevTools Protocol [2]获得带样式的文本。

按照第三方SDK内容展示的形式,可以分为三类:1、以表格形式(如图3);2、无样式列表(如图1);3、无固定格式。对于第1种形式,根据前文所述可以使用基于Chrome DevTools Protocol的方案可以解决。对于第2种形式,我们开发了一个启发式重复格式行查找算法,找出相邻SDK隐私陈述的分界。而对于第3中形式,除在单行中陈述单个SDK隐私政策的情况外,其余情况目前难以关联SDK主体与其对应的隐私陈述,这种情形在实际的应用中出现较少。

至此,我们完成了隐私政策中的第三方SDK隐私声明的提取与解析,方案小结如下表:

 

正文中展示

跳转单独展示

表格形式

基于Chrome DevTools Protocol方案

1、获取跳转链接

2、基于Chrome DevTools Protocol方案

无样式列表

启发式重复格式行查找算法

1、获取跳转链接

2、启发式重复格式行查找算法

无固定格式

按行解析

1、获取跳转链接

2、按行解析

小结:

在移动应用隐私合规检测中,第三方SDK隐私声明由于其展现位置展现形式的多样性, 自动化 提取与解析是比较困难的任务。我们通过调研统计,对常见的第三方SDK隐私声明展现方式进行总结,归纳出一套自动化的解析方案,以增强对第三方SDK隐私违规行为的检测能力。

 

文末福利:华为云移动应用安全服务限时特惠,了解详情>>>

引用:

【1】 工业和 信息化 部关于开展纵深推进APP侵害用户权益专项整治行动的通知, http://www.gov.cn/zhengce/zhengceku/2020-08/02/content_5531975.htm

【2】 Chrome DevTools Protocol,https://chromedevtools.github.io/devtools-protocol/

上一篇:FPGA开发者云平台的功能 下一篇:查询资源标签ListResourceTags

华为云开发者中心为开发者提供所有云服务的API及API手册、各产品的SDK、可服务的节点区域和各服务的终端节点EndPoint和在使用华为云产品时需要用到的CLI工具、业务工具等的下载及使用说明。