移动应用中的第三方SDK隐私合规检测

wolfrevo 发表于 2022/01/25 15:35:44 2022/01/25
【摘要】 概述:       工信部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 Protocolhttps://chromedevtools.github.io/devtools-protocol/


【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区),文章链接,文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件至:cloudbbs@huaweicloud.com进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容。
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。