深度分析 | 第三方SDK收集个人信息行为检测方法的分析与建议

2021年10月15日,工信部发布了《关于下架侵害用户权益App名单的通报》,通报中一共下架了96款App。值得关注的是,在本次通报中首次通报了SDK存在较多问题,并明确后续会将反复出现问题的SDK从严处理。

深度分析 | 第三方SDK收集个人信息行为检测方法的分析与建议

背景

 

近年来对App收集个人信息违法违规行为治理工作的深化,很多第三方SDK也在逐步将收集行为合规化,很多第三方SDK供应商也提供了隐私政策,也将SDK的个人信息收集行为进行公示,说明了SDK在收集个人信息时候的目的、类型等。App在集成这些SDK后,也会在App隐私政策中公示使用的SDK的名称等相关信息。这样让App和SDK对个人信息的收集行为更加的透明化,让用户在使用App的时候,更加了解自己的个人信息的收集者和处理者,这算一个很大的进步。

但是,绝大多数第三方SDK并非开放源代码的,而是只提供了使用接口进行功能的调用的方法,这让核实第三方SDK对个人信息的收集行为是否与SDK隐私政策中描述的相符变成了障碍。App在嵌入第三方SDK的时候,无法确定SDK收集个人信息的数量、场景、频率是否与隐私政策中相符?是否存在隐蔽收集的情况?在未确定SDK的合规安全风险的前提下就将SDK集成在App中,无疑是增加了App本身的不合规风险。

据统计,平均每款App嵌入的SDK个数是13.36,也就是说,平均1款App就嵌入了接近14个SDK,App研发企业目前只能通过隐私政策的方式对SDK进行了解,企业没有对应的技术手段、检测思路以及动力对集成的第三方SDK进行检测,来发现SDK实际的个人信息收集行为是否与隐私政策中描述的一致,从而在集成之前就发现SDK的合规问题,减少App由于集成了不合规的第三方SDK而被通报的风险。

问题分析

App在嵌入第三方SDK并且初始化以后,SDK在个人信息收集行为方面就不受App的控制了,SDK可以采用异步或者其它的技术手段在后台运行代码。如果是恶意SDK的话,很可能出现在后台隐蔽执行恶意行为,App无法察觉。目前大部分App开发商对SDK合规性检测的做法是,完成App的整体研发以后,将Apk包进行自行检测或者交由第三方进行检测,检测出现问题后进行问题的定位,是否问题是SDK的行为。这种方式属于事后检测的方法,能够发现嵌入SDK的不合规行为,但是会有两个问题:

一、App整体检测完成后,如定位为SDK的行为问题,需要协调SDK开发商进行整改,只有SDK开发商整改完成后,App的不合规问题才算完整解决,在SDK整改的过程中App将无法发版更新,SDK的整改效率会影响App的整体产品的进度及分布时间。

二、App在整改完成后,应用小版本的迭代是正常的,过程中难免会出现业务上细微的调整,这就导致业务场景收集个人信息可能发生变化,这些调整涉及到SDK的使用,从而导致不合规风险的增加。这样就出现了,整改完成的问题反复出现的情况。

如果事前能够对SDK的合规性进行检测,App在集成SDK之前,就发现合规性问题,让合规问题暴露在App产品研发阶段,能够更合理的进行产品研发进度的安排。

解决思路

事前对第三方SDK进行自动化审查,技术上可以从下面3个方面进行研究:

深度分析 | 第三方SDK收集个人信息行为检测方法的分析与建议

(1)嵌套SDK组件检测

从技术角度来讲,SDK是可以嵌入其它第三方SDK的。审查需要完成对被检测SDK是否嵌入了其它第三方的SDK?嵌入了多少?嵌入了哪些SDK?进行检测。检测的技术结果得出后,与被检测SDK的隐私政策进行比对,发现未在隐私政策里说明的嵌入SDK,从而去查找原因,及时进行补充隐私政策说明或技术上删除多余的嵌入SDK,从而达到告知合规的要求。

比如某款即时通讯服务的SDK,集成这款SDK后,能够让你的App快速拥有即时通讯能力,这款SDK为了实现地域分群聊天功能,又集成了另外一款定位的SDK。但是,对于App集成方来说,只集成了一款即时通讯的SDK,并未集成定位SDK,所以App的隐私政策中大概率只会写即时通讯SDK要收集地理位置信息这样的描述。这样就留下一个风险隐患,可能存在违反“未逐一列出 App(包括委托的第三方或嵌入的第三方代码、插件)收集使用个人信息的目的、方式、范围等”的规定。

(2)涉及权限信息检测

按照要求,App集成的第三方SDK如果涉及到个人信息相关权限,需要在隐私政策条款里进行明示。第三方SDK检测技术需要自动检测出被检测SDK在运行过程中使用了的权限列表,再与隐私条款进行比对,发现不相符的权限,查找原因,及时进行调整达到合规的目的。

比如App集成了某款SDK,SDK需要手机的权限。按照要求App在隐私政策里面做了充分的告知,目前处于合规的状态。在后期升级迭代的过程中,SDK由于业务功能的增加,增加了对定位权限的使用,App集成方并不知道SDK增加了功能,故未对App隐私政策进行更新,从而,让原来合规的状态变成了不合规的状态。

(3)个人信息收集行为检测

同样,SDK如果涉及到个人信息收集相关行为,也需要在隐私政策条款里进行明示,并且还要明示对应收集的业务场景、个人信息的数量收集哪些个人信息。第三方SDK检测技术需要自动检测出被检测SDK在运行过程中收集个人信息的行为和对应的业务场景,在与隐私条款进行比对,发现不相符的行为,查找原因,及时进行调整达到合规的目的。个人信息收集行为的发现要比权限的发现更加的细化,比如:手机权限对应行为有IMEI号收集行为、IMSI号收集行为、手机号收集行为等,还有部分个人信息收集行为是部分操作系统没有权限控制的,操作系统层面是不会主动提醒的,比如Mac地址、应用程序列表等。第三方SDK检测技术也需要检测出这些行为。

综上,加强技术检测手段和安全加固只是合规工作中的一个环节,重要的还是抓紧推进《移动互联网应用程序(App)SDK安全指南》等国家标准的制定和出台,SDK运营者也需要加强对SDK收集个人信息方面的自查和改进工作,SDK运营者需要更加积极的主动进行合规,这样才有利于SDK整个产业的发展。

(文章来源:CCIA数据安全工作委员会

相关新闻

返回顶部