中文

主页 > INSIGHT > Articles > Labor & Employment >

玺泽说法 | 强监管下,第三方SDK合规的思考和建议

2020-10-23     

作者:程贞  关秋蕾 

受新冠疫情影响,今年3月起,大量政府机关、企业、教育机构开始选择Zoom这款远程会议软件;一时间,Zoom用户量大涨。但Zoom的隐私安全问题也随即引发了热议。面对公众置疑,Zoom紧急宣布了一系列补救措施,包括在iOS客户端移除了颇受争议的脸书的SDK。

近年来,随着我国App个人信息保护治理工作的深入推进,与App存在密切联系的SDK的安全问题也逐渐进入公众视野,其引发广泛关注的,应始于2019年7月南都个人信息保护研究中心、中国金融认证中心(CFCA)联合发布的《常用第三方SDK收集使用个人信息测评报告》。该报告中有60款用户量较大的常用App以及主流SDK被测评。测评机构通过统计其中集成的SDK个数和调用次数,并对App使用最广泛的SDK进行系统权限、实际行为、上送信息等方面的分析,揭示出SDK存在的多种安全隐患。2020年7月,中央电视台的3·15晚会曝光了大量第三方SDK超规超限收集用户个人信息的问题及危害,使公众对SDK合规的重要性有了进一步的认知。

SDK已被广泛使用于各类App应用,其安全已经成为整个移动互联网生态中极其关键的环节,加之SDK具有隐蔽性较强、自身安全性良莠不齐、与App提供者合作关系复杂化等特点,加强对SDK的合规管理刻不容缓。这两年,政府不仅在立法方面加大了规范力度,如相继公布或出台《数据安全管理办法(征求意见稿)》、《信息安全技术 个人信息安全规范》、《信息安全技术 网络数据处理安全规范(征求意见稿)》、《移动互联网应用程序(App)收集使用个人信息自评估指南》、《移动互联网应用程序(App)中的第三方软件开发工具包(SDK)安全指引(征求意见稿)》等,还专门成立了App专项治理工作组,定期对企业App进行评测与通报。这些活动也在客观上极大推动了互联网企业对使用SDK的合规管理。

本文拟结合近期发布的有关SDK的行业标准,就企业加强对SDK的管理与合规使用等实务问题,略抒浅见。



一、第三方SDK的概述


(一) 第三方SDK是什么?
SDK是软件开发工具包(Software Development Kit)的简称。根据《网络安全标准实践指南——移动互联网应用程序(App)中第三方软件开发工具包(SDK)安全指引(征求意见稿)》(以下简称“《SDK安全指引》”)中的定义,“第三方SDK是指由第三方服务商或开发者(以下称“第三方SDK提供者”)提供的实现软件产品某项功能的工具包,通常不包括企业自己开发的仅供自己使用的通用功能模块”。通常而言,SDK是软件工程师用于为特定软件包、软件框架、硬件平台、作业系统等创建应用软件的开发工具集合。开发者无需了解SDK内部实现细节,只需调用程序接口,便可以帮助App实现登陆分享、支付、广告、数据统计、地图、风控插件等一系列功能
(二) 第三方SDK有哪些类型?
根据《SDK安全指引》,对常见的第三方SDK进行了以下分类:(1)按所提供的功能划分,可以分为框架类、广告类、推送类、统计类、地图类、第三方登录类、社交类、支付类、客服类、测试类等共16大类(详见表1);(2)按来源划分,可大致分为第三方服务商提供类和开源社区提供类,开源社区提供的第三方SDK又可分为有明确开发主体和无明确开发主体两类。


表1 常见第三方SDK类型列表 摘自《SDK安全指引》



(三)第三方SDK的应用现状
通常情况下,App提供者下载相关SDK后,再将这些SDK集成到自身开发的App中。这就形成了“第三方SDK提供者开发SDK——上传至应用市场或开源社区——App提供者下载该SDK并集成至自身App中——将App上传至应用市场供最终用户下载”的链条。在这个链条中,第三方SDK提供者将自身的数据能力提供给App开发者,App开发者利用这些功能使自己的产品变得更加丰富和多元化,同时又降低了自己的开发成本。
2019年7月,南都个人信息保护研究中心、中国金融认证中心(CFCA)发布的《常用第三方SDK收集使用个人信息测评报告》中提出,App使用SDK数量较多。每款App携带的SDK平均不少于10款,其中消息推送类SDK使用量最多。
《软件开发包(SDK)安全与合规白皮书(2019)》对常见的六大类第三方SDK的应用情况进行了详细统计。在登录分享的分类中,以新浪微博SDK为例,该SDK被广泛嵌入在各类App中,生活服务、游戏和金融行业App中嵌入该 SDK的情况最为普遍,三者合计占比为44.61%。在支付类中,支付宝SDK被广泛嵌入在各类设置了支付场景的App中,其中以游戏和生活服务行业最为广泛,支付宝SDK分别占38.85%和24.09%。推送类SDK和广告类SDK被广泛使用,其中极光推送SDK嵌入的App主要集中在金融和生活服务类App,比例接近一半;以突出广告功能为例的InMobi SDK嵌入游戏行业的App占比高达6成。根据报告统计,截至2019年4月底,在其收录的共计约267万条Android应用数据中,超50%的App都不同程度地使用了第三方提供的SDK工具包;各类别App使用第三方SDK平均在10个以上,最高可达平均30.6个/类。平均使用第三方SDK个数超过20个的App类型有8类,覆盖实影音视听、聊天社交、效率办公、时尚购物、居家生活、医疗健康、体育运动、新闻资讯等与人们生活工作密切相关的领域。


(四) 常见的第三方SDK安全问题

目前,SDK已成为各类App中不可或缺的应用技术,但因为SDK具备获取设备信息和用户个人信息的能力,往往隐藏在App提供者身后来实现,加之SDK可以同时被多款App集成,其具有的这种隐蔽性、多关联性,导致SDK出现安全问题时不易被察觉,而且一旦出现安全事故,还会影响多款App及众多用户,危害较大。根据目前相关机构对第三方SDK的测评及案例,可以看到,常见的SDK安全问题主要集中在以下三个方面:

  1.  第三方SDK安全漏洞频出。目前,绝大部分第三方SDK缺乏安全审核环节,导致安全漏洞频出,常见的有:SSL / TLS 配置错误、HTTPS非必要调用、WebView忽略SSL证书错误、过多索取敏感权限、通过日志造成信息泄露等。App使用的第三方SDK越多,其安全漏洞也就越明显,影响范围越大。

  2. 恶意第三方SDK渗透到开发环节,导致软件供应链污染。恶意开发者往往以提供第三方服务的方式吸引App开发者来使用他们的SDK,嵌入App后,在一定条件下即自主实施恶意、不合规的行为。比如,Android操作系统带有热更新机制,恶意第三方SDK就会通过热更新机制,更新恶意代码,执行动态加载恶意代码、盗取用户数据、采集敏感信息等不合规行为。恶意SDK具有非常大的迷惑性和隐蔽性,它借助合法应用可以有效地躲避一部分应用市场和安全厂商的检测,并对网络或系统产生威胁。
  3. 第三方SDK违法违规收集App用户的个人信息。多数情况下,第三方SDK不会主动公示隐私政策,明确告知用户收集、使用个人信息的规则、目的、方式及范围,其告知行为通常要借助App提供者来实现,更不用说就上述行为征得用户的同意。但因缺少相关规范指导,无论是第三方SDK提供者,还是App提供者,在告知用户SDK独自处理个人信息方面,都缺乏明确的意识,导致在过去的实践中,用户鲜少知道个人信息被SDK收集、传输至第三方服务器和使用的情况,SDK收集个人信息也未做匿名化处理。


二、  政府对第三方SDK强力开展规制与监管



第三方SDK存在的严重安全问题已经引起了社会各界的高度重视,同时也成为这两年相关政府部门监管的重阵。
2019年初,受中央网信办、工信部、公安部、市场监管总局四部门委托,全国信息安全标准化技术委员会、中国消费者协会、中国互联网协会、中国网络空间安全协会成立App违法违规收集使用个人信息专项治理工作组(以下简称“App专项治理工作组”),具体推动App违法违规收集使用个人信息评估工作。
2019年5月28日,国家互联网信息办公室公布的《数据安全管理办法(征求意见稿)》第三十条强调,“网络运营者对接入其平台的第三方应用,应明确数据安全要求和责任,督促监督第三方应用运营者加强数据安全管理。第三方应用发生数据安全事件对用户造成损失的,网络运营者应当承担部分或全部责任,除非网络运营者能够证明无过错。”该条对于App提供者与第三方SDK提供者的责任承担具有一定的借鉴意义。
2020年的治理工作在2019年的基础上,进一步加大了整治工作力度,突出问题导向、强化标准规范支撑、加强责任追究。App专项治理工作组重点对App、SDK、小程序等进行深度评估,对生物特征信息收集使用不规范等问题进行专题研究和深度检测。
2020年3月6日,由国家市场监督管理总局、国家标准化管理委员会发布的《信息安全技术 个人信息安全规范》(已于2020年10月1日实施,以下简称“2020规范”),在第9.7条明确规定了个人信息控制者对第三方产品或服务的接入管理要求。
2020年6月1日,全国信息安全标准化技术委员会发布《网络安全实践指南——移动互联网应用基本业务功能必要信息规范》(以下简称“移动互联网应用基本业务功能必要信息规范”),针对16类App常用的基本业务功能界定了必要信息的范围。由于SDK在实际行为中能够获取的权限和收集的信息通常会受到App提供者的限制,因此理论上SDK收集用户个人信息也应达到《移动互联网应用基本业务功能必要信息规范》的要求。
2020年7月25日,中央网信办、工业和信息化部、公安部、国家市场监管总局四部门举行会议,启动2020年App违法违规收集使用个人信息治理工作。此次治理工作重点包括SDK违规收集个人信息、人脸信息收集不规范等。
2020年9月,全国信息安全标准化技术委员会公布了《网络安全标准实践指南——移动互联网应用程序(App)中第三方软件开发工具包(SDK)安全指引》(征求意见稿),针对当前第三方SDK使用过程中存在的第三方SDK的安全问题,结合当前移动互联网技术及应用现状,给出了实践指引。




三、  第三方SDK合规的思考与建议



鉴于政府对第三方SDK的治理和监管力度不断加大,处于紧密共生关系中的App提供者和SDK提供者均需明确了解在处理个人信息的环节中,有哪些合规要点,以确保一荣俱荣,防止一损俱损。以下将主要结合相关行业标准中的内容,就第三方SDK的合规管理与操作提出些许不成熟的思考与建议。


(一) App提供者使用SDK如何做到合规?

如果App提供者对SDK使用、管理不慎,或者被恶意SDK“伏击”,会面临民事赔偿、行政处罚,甚至会涉及到刑事风险。因此,合规使用第三方SDK,对于App提供者而言,事关生存与发展。在《信息安全技术 个人信息安全规范》第9.7款、《信息安全技术 网络数据处理安全规范(征求意见稿)》第5.13项中都有提及App提供者对第三方SDK的管理,近期发布的《SDK安全指引》更为详细地对企业进行了指导。综合以上标准,我们建议App提供者在遵循合法、正当、必要原则的基础上,注意以下要点。
  1. 制度先行,统筹管理。
在企业内部应建立完善的第三方SDK产品或服务接入的管理标准和工作流程,设置严格的接入条件。
  2. 接入前,严格进行安全与资信评估。
(1)App提供者应关注SDK提供者的资信状况,做好必要的背景调查,尽可能选择有口碑、具备良好安全管理能力的第三方。
(2)对第三方SDK进行技术检测和安全评估,评估项目和评估内容可见下表2:


表2:App提供者对第三方SDK的安全评估


[1] 敏感权限:是指可访问用户个人信息(如短信、通信录、设备唯一标识符等)和可调用敏感操作能力(如摄像头、麦克风、精确地理位置等)的系统权限。

  3. 重视合同的签署与履行。
使用SDK,应由App提供者和SDK提供者签署规范的合同。在合同中,应明确双方的权利和义务,数据安全保护的标准和要求,以及双方应实施的个人信息安全措施;救济方式;违约和赔偿责任等内容。对于App提供者而言,合同中还应要求SDK提供者履行以下义务:明确第三方SDK收集的个人信息类型、申请的敏感权限、个人信息的收集目的、保存期限、超期处理方式等;向个人信息主体明确标识相关产品或服务由SDK提供者提供;根据行业标准相关要求向个人信息主体征得收集个人信息的授权同意,必要时要核验其实现的方式;有权对SDK使用的权限进行审核,要求引入SDK代码所需使用的权限最小化;应要求SDK提供者建立响应个人信息主体请求和投诉等的机制,以供个人信息主体查询、使用;在合同中设置App提供者对SDK运营过程中的安全审查权等。当双方合作存在重大变更时,应重新达成合作协议。
  4. 采用适宜的方式进行个人信息采集的告知并得到用户同意。
无论在任何业务场景下,收集用户个人信息的合法前提是必须明确告知用户并得到用户的同意。App提供者尤其要注意自已做为平台和数据控制者所承担的法律义务和责任,并严格判断在使用第三方SDK过程中,该SDK是否具有独立收集个人信息的能力。App提供者接入第三方SDK后,应向用户告知所接入第三方SDK的名称或类型,第三方SDK收集的个人信息类型、目的和使用方式,申请的敏感权限等信息,并征得用户同意。若第三方SDK独立收集用户个人信息,须要求SDK提供者向用户单独告知收集使用个人信息的行为及规则,并获得用户的同意,App提供者宜为其中无单独页面的第三方SDK提供向用户告知的便捷渠道。例如可通过在App隐私政策中嵌入第三方SDK隐私政策链接的方式。总之,要确保用户提供个人信息时,已经明确知道了是谁在收集、怎么收集、做何用途并准确给予授权。
  5. 动态监控SDK提供者的履约情况。
App提供者作为宿主,承担着不可避免的管理责任,因此应在合作过程中,适时监督SDK提供者的安全管理状况,开展必要的技术检测;发现问题应督促其及时整改,必要时及时切断或停止接入,确保运营和个人信息的安全。具体可包括:
(1)对于使用具有热更新功能的第三方SDK,宜其热更新内容进行校验、动态检测和安全评估,对于不安全的热更新内容应进行阻断,对于发现问题的热更新内容应及时停用;
(2)对集成后的第三方SDK进行持续动态监测或定期安全评估。对于已经发现的第三方SDK安全漏洞,及时修复,或者采用其它替代方案,并从第三方SDK官方渠道及时更新最新版本。对于已经发现存在恶意行为的第三方SDK,及时停止使用;
(3)通过接口调用第三方SDK功能的,对接口增加鉴权机制。
  6. 其他要点
(1)妥善留存平台第三方接入有关合同和管理记录;
(2) 停用后,应及时从App中移除该第三方SDK的代码和调用该第三方SDK的代码,存在通过App共享或收集个人信息的,应敦促第三方SDK提供者按照合作协议的约定,删除从本App共享或收集的个人信息或做匿名化处理。


(二) 第三方SDK提供者如何实现合规?
因目前政府对SDK的大力监管,以及业界普遍认为SDK收集用户个人信息也应达到《移动互联网应用基本业务功能必要信息规范》的要求,故SDK的合规化是每一个SDK提供者需要重新审视的问题。SDK提供者不能仅以一个从属者的身份来看待自已的法律地位,只要收集和处理个人信息,就是法律意义上的数据控制者并需承担相应的法律责任,因此第三方SDK提供者必须不断增强自身的安全管理能力,在遵循合理、最小、必要原则的基础上,严格按相关法律和行业标准的要求,收集、使用和处理个人信息,例如:
  1. SDK上线前,应进行安全评估,形成安全评估报告。评估内容包括但不限于:完整性校验、恶意代码检测、安全漏洞检测、权限申请和调用频率检测、收集个人信息类型和频率检测、后台自启动和关联启动并收集个人信息的行为检测。另外,SDK提供者还应采用可变更的标识符取代不可变更的设备唯一标识符,做好自身的安全保障工作。
  2. 在第三方SDK接入App的过程中,第三方SDK提供者还应注意:
(1)向App提供者告知第三方SDK的相关信息,并且信息应完整、准确、及时,不存在故意隐瞒、欺骗等行为。
(2)通过接口调用提供自身功能的第三方SDK,宜对接口增加鉴权机制,并对不同App调用接口的上下文环境进行隔离。
(3)对功能独立的模块,应进行拆分或提供单独的开启关闭选项,允许App提供者按需进行选择使用或开启关闭,不应强制捆绑无关功能并以此为由申请无关权限或收集无关的个人信息。
(4)采用热更新技术的第三方SDK,明确告知App提供者,宜建立完善的热更新安全保障及通报机制;
(5)对于具备收集、传输、存储个人信息及数据功能的第三方SDK,应注意以下事项:
A. 作为个人信息共同控制者或独立控制者收集使用用户个人信息的第三方SDK,宜单独向用户告知收集使用个人信息的行为并征得用户同意。
B. 数据传输应使用安全方式,避免因中间人攻击导致传输数据泄露或被篡改。传输用户个人敏感信息的,应对个人敏感信息单独进行加密。
C. 为不同的App提供者设置逻辑独立的数据存储区域,不同App之间的数据宜相互独立。
D. 在保障安全的前提下,宜优先在本地的App私有存储空间内存储和处理个人信息。在本地存储和处理个人敏感信息,宜单独进行加密。
E. 建立“Opt-out”退出机制,当个人信息主体不希望使用第三方SDK提供的服务时,个人信息主体可通过“Opt-out”机制行使退出权利。在官网或个人信息保护政策中透出“Opt-out”的链接,以便个人信息主体行使权利。
  3. 当App停止接入后,若存在从该App共享或收集个人信息的,应按照合作协议约定,删除从该App共享或收集的个人信息或做匿名化处理。
目前对APP的治理还在攻坚阶段。综上,无论是App提供者,还是第三方SDK提供者,均需高度重视合规要求,采取安全可靠的技术和管理手段,做好对SDK的安全评估和对用户告知,获得用户同意等各项合规工作。互联网整个行业的健康发展,需要参与各方的共同努力,只有避免非法处理个人信息,赢得用户信任,合力打造更为安全可靠的数据保护环境,才是促进整个产业快速进阶的不二之选。
参考摘要:
1.南都个人信息保护研究中心、中国金融认证中心(CFCA)联合发布:《常用第三方SDK收集使用个人信息测评报告》,2019年7月。
2.中国信通院、环球律师事务所:《软件开发包(SDK)安全不合规白皮书(2019)》,2019年8月。
3.《网络安全标准实践指南——移动互联网应用程序(App)中第三方软件开发工具包(SDK)安全指引》(征求意见稿)
4.参考微信文章:《Zoom事件:APP如何做好SDK合规?》

https://mp.weixin.qq.com/s/EcpAXaMiMGJM7chU59a1fA

5.参考微信文章:《关于App嵌入第三方SDK收集使用个人信息的安全隐患》,

https://mp.weixin.qq.com/s/1QD6u7uMpucBqA9UOYE2XQ


声 明

以上文章仅代表作者本人观点,任何情况下,不得视为北京玺泽律师事务所或其律师出具的法律意见或建议。如需转载或引用该等文章的任何内容,请注明出处。如您有意就相关议题进一步交流或探讨,欢迎与本所联系。



TISIZE & PARTNERS
ABOUT PRACTICE PEOPLE NEWS INSIGHT CAREERS

Phone:010-64796189    Fax:010-64796379    Email:mail@tisize.com

Address:17/F, T1 Poly International Plaza, WangjingDongyuan, Chaoyang District, Beijing 100102

© 2016-2019 TISIZE&PARTNERS LAW FIRM All Right Reserved Beijing ICP 17018748-1 Beijing ICP 17018748-1    LAW