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

article/2025/11/11 15:36:59
摘要: 在移动应用隐私合规检测中,第三方SDK隐私声明由于其展现位置展现形式的多样性,自动化提取与解析是比较困难的任务。

本文分享自华为云社区《移动应用中的第三方SDK隐私合规检测》,作者: wolfrevo。

概述:

工信部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隐私声明的文本跳转内容进行提取。

调研表明,当第三方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隐私声明的提取与解析,方案小结如下表:

小结:

在移动应用隐私合规检测中,第三方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/

点击关注,第一时间了解华为云新鲜技术~


http://chatgpt.dhexx.cn/article/E9usgZRe.shtml

相关文章

隐私合规:检测第三方SDK调用的隐私权限

隐私合规:检测第三方SDK调用的隐私权限 原文地址 隐私合规:检测第三方SDK调用的隐私权限 前言 看了一圈各大网站目前关于隐私合规检测的分享,发现大家几乎都是自己写一套动态代理、Hook或者ASM来实现代码拦截从而检测不合规的代码堆栈&am…

uniapp 调用安卓原生插件 安卓原生又调用了第三方sdk(第三方原生开发的aar怎么转成uni可以使用的aar)

最近在做一个关于uniapp的项目,遇到一个需求。有一个原生开发的aar的原生插件,不是插件市场的,开发说明原生开发的插件不可以直接提供给uniapp使用,需要按照uniapp原生插件开发文档重新制作成uniapp可以使用的aar。(半…

uniapp原生插件开发调用第三方SDK

uniapp安卓官方SDKhttps://nativesupport.dcloud.net.cn/AppDocs/download/android.html# 官方uni原生插件开发教程(android)网址:https://nativesupport.dcloud.net.cn/NativePlugin/ 第一步,开发环境的准备 下载uniapp安卓官方SDK待后面使用…

编写sdk提供给第三方使用(比如接口请求类)

感谢鱼皮。 一、新建SpringBoot项目 二、引入基础依赖 引入lombok(提供get、set方法)、configration-procssor(第三方引入包后,可以自动补全配置) 三、删除 pom 文件中不需要的依赖与插件,并删除 test …

Unity3D接入Android第三方SDK流程

目录 一、SDK调用Unity3D 二、Unity3D调用SDK 1、在Unity中新建一个脚本,调用MySDkPlatform中的方法 四、打包 1、方式一:SDK打成plugins给Unity(unity版) 2、方式二:Unity导出安卓工程接入SDK(studi…

Android应用安全之第三方SDK安全

第三方sdk的包括广告、支付、统计、社交、推送,地图等类别,是广告商、支付公司、社交、推送平台,地图服务商等第三方服务公司为了便于应用开发人员使用其提供的服务而开发的工具包,封装了一些复杂的逻辑实现以及请求,响…

机器学习与word

1、下面关于vector representations for words描述正确的是? A. 基于words总数N将每一个word映射到一个N维vector,即1-of-N Encoding B. 同样性质的word用相同的word class vector表示即word cluster C. 每一个word映射到高维空间的dimension reducti…

怎样修改word页面页码

修改word页码,使其从指定页面开始(目录更新后页码也正确) 1 首先在需要作为第一面的界面与前面用“布局”中的“分隔符”, 点击“下一页”,之后点击插入“页码” 2 之后在想要作为第一面的位置“链接到第一节” 3 删除…

Latex语法学习08:打通latex、mathml和word公式转换

目录 1 基于工具的转换 1.1 获取mathml源码 1.2 将mathml代码转换为latex 1.3 latex向mathml的转换 1.4 mathml粘贴到word 1.5 word转mathml 1.5.1 干法 1.5.2 注意要点 2 离线工具 2.1 mathml2latex 2.2 latex转word 2.2.1 一个前端开源项目 2.2.2 一个pyqt的界面程…

今日学习打卡

1.nlp:CNN 2.ml:PCA (最小重构代价;SVD角度;概率角度) 3.resnet 未学完 CNN: word_2_index[word] word_2_index.get(word,len(word_2_index)) 这句话的意思是,若索引到了则不改变键值对,若索引不到就增…

机器学习算法(十三):word2vec

目录 1 单词表达 1.1 Word embedding 1.2 独热(One hot representation) 1.2.1 独热编码介绍 1.2.2 优缺点分析 1.3 Dristributed representation 1.4 共现矩阵 (Cocurrence matrix) 3 word2vec 3.1 word2vec介绍 3.2 CBOW模型 3.2.1 Simple…

CSIC2010学习Word2vec表示及可视化

1、sudo apt-get install liblapack-dev 2、sudo apt-get install gfortran 3、sudo apt-get install python-pandas 4、sudo pip install --upgrade gensim 5、sudo pip install jieba 6、sudo pip install theano (0.7) 根据给定词生成word2vec词向量 # -*- coding: utf-8 …

机器学习算法实现解析——word2vec源码解析

在wrod2vec工具中,有如下的几个比较重要的概念: CBOWSkip-GramHierarchical SoftmaxNegative Sampling 其中CBOW和Skip-Gram是word2vec工具中使用到的两种不同的语言模型,而Hierarchical Softmax和Negative Sampling是对以上的两种模型的具…

【Word】学习笔记|批量解决文档中公式编号不居中的问题

1. 问题描述 当你将一个Word中内容(包含公式)复制到另外一个Ward里,发现MathType公式编号未居中,如上图所示。如果你公式较少,可以参考官方教程解决,就是将段落→中文版式→文本对齐方式中设置为居中就行。…

打开word会自动出现页眉的解决方法

打开word会自动出现页眉的解决方法 文章目录 打开word会自动出现页眉的解决方法1. 问题描述2. 解决方法 1. 问题描述 当没有其他word文档打开时,新建并打开一个word文档,并不会自动出现页眉。 但是当已经打开了一个word文档,此时再新建并打…

深度学习(六) Word Embedding

Word Embedding 前言一、One-hot编码1.为什么使用one-hot编码?2.什么是one-hot编码?3.one-hot编码的优缺点 二、Word Embedding(词嵌入)1.什么是Word Embedding?2.Word Embedding的优点:3.基于计数的Word Embedding1.基于计数的Word Embedding的优缺点2…

word学习小结1

最近偶然看到个WORD学习视频,网易得,不错,12节比较短,说得不错,日常工作中容易忽视得WORD技巧,总结之 1 比如 姓名: XXX 编号: XXX 一般输入姓名后,都…

Word样式设置

硕博毕业论文Word样式设置 一般用Word写作的时候,只需要将文字编辑就好了,但是在后期需要调整格式的时候就会觉得费心费力,尤其是像是毕业论文这种动辄上万字的文件。这时候就会想,要是可以用LaTeX这样的样式提前设置好&#xff…

Word 【域】学习笔记

Word 【域】学习笔记 编辑了域没反应,记得更新一下试试热键插入域代码实例引用标题的页码域计算第一页从正文开始分节后总页数设置使用变量定义变量使用函数自定义文档属性添加自定义文档属性使用自定义文档属性 参考资料 编辑了域没反应,记得更新一下试…

深度学习 三 :深入浅出 Word2vec--图文解读原理 一

鸣谢!!! 深入浅出 Word2vec–图文解读原理 二 文章很长请耐心阅读,但一定会有收获!!! embedding 是机器学习中最迷人的想法之一。如果你曾经使用Siri、Google Assistant、Alexa、Google翻译&a…