资源描述
软 件 开 发 包 ( SDK) 安 全 与合 规 报 告( 2020)中 国 信 息 通 信 研 究 院 安 全 研 究 所北 京 市 环 球 律 师 事 务 所 2020 年 9 月 版权声明本报告版权属于中国信息通信研究院、北京市环球律师事务所,并受法律保护。转载、摘编或利用其它方式使用本报告文字或者观点的,应注明“来源:中国信息通信研究院、 北京市环球律师事务所”。违反上述声明者,本院将追究其相关法律责任。 编写团队编写单位: 中国信息通信研究院安全研究所北京市环球律师事务所编写组成员:(姓氏笔画为序) 陈湉、张淑怡、孟洁、秦博阳、薛颖、覃庆玲、魏亮 联系人: 陈湉电话:010-62308820邮箱: 孟洁电话:010-65846768邮箱: 前 言我国移动互联网市场经历了将近 20年的快速发展,已经形成了庞大的产业规模,创造了可观的经济效益,并且在业务模式和商业模 式创新方面引领全球。同时,移动互联网正在向传统产业加速渗透,人工智能、大数据、物联网等信息技术与实体经济持续深度融合,不 断催生传统产业服务新业态,逐步改造着医疗、教育、交通、旅游、金融、传媒等传统行业的服务模式。在此过程中,移动应用软件,即 App,发挥了不可替代的入口作用,全天候、全方位深度参与到了广大网民日常生活的方方面面。 App在提供各类便捷、高效、普惠服务的同时,也在无时不刻地收集、使用用户的个人信息,与App存在密切联系的第三方软件开发包(SDK)收集个人信息问题也已经进入各方视野。2019年下半年起至2020 年,不论是立法动态还是监管角度,均将SDK 违法违规收集个人信息作为审查的重点之一。 僻如,在立法和国家标准制定方面,数据安全管理办法(征求意见稿)GB/T 35273-2020 信息安全技术 个人信息安全规范网络安全标准实践指南 移动互联网应用程序(App)中的第三方软件开发工具包(SDK)安全指引(征求意见稿)信息安全技术 个人信息告知同意指南(征求意见稿)等国家标准的研究也开始涉及 第三方介入(包括SDK)这一特定领域。 在监管方面,中央网信办、工业和信息化部、公安部、市场监督总局四部委组建的 App 专项治理工作组在全国范围开展较大规模的App的审查与治理行动,从曝光的结果来看,不难看出已对App中嵌入的违规SDK厂商,采取了包括但不限于约谈企业负责人、网上曝光、App 下架等措施。该治理工作组在今年 5月发布的App 违法违规收 集使用个人信息专项治理报告(2019),更是明确指出“第三方SDK自身的安全性,以及其收集使用个人信息行为,也成为移动生态中个人信息保护的风险点建议将 SDK 收集使用个人信息行为纳入专项治理范围,以促进 SDK行业加强数据收集使用规范性”。由此可见,2020年,SDK的合规性已经成为监管的重点。并且,2020年3 月疫情期间爆出的Zoom 接入SDK问题,2020年7 月“3 15”晚会曝光私自收集个人信息的 SDK 未经用户许可窃取个人信息问题,更是引发了公众对SDK安全与合规的极大关注。特别地,2020 年 7 月中央网信办、工业和信息化部、公安部、 国家市场监管总局四部门启动2020 年 App 违法违规收集使用个人信息治理工作,提到今年年度的治理重点时专门提到了对第三方SDK的治理:制定发布SDK个人信息安全评估要点,对用户规模大、问题反映集中的小程序等进行深度评估。 本报告将在 2019 年版本的基础上,进一步梳理当前应用较为广泛的第三方SDK 类型和市场情况,结合实际案例分析第三方SDK存在的主要安全问题以及第三方SDK提供者与App开发者合作过程中面临的法律合规问题。通过调研欧盟、美国的相关经验做法,从法律法规、 企业责任、技术标准、行业自律等方面结合我国实际情况提出了有针 对性的建议。 本报告2020 年版比照2019年版的主要修订在于: 更新了2019 年至今监管层面、国家标准层面针对SDK的规制; 更新了对App开发者嵌入第三方SDK 的合规实践建议; 更新了第三方SDK自身的合规实践建议; 更新了第三方SDK产品最新的合规实践案例。 目 录一、 第三方SDK的业内现状 .1(一)第三方SDK常见类型及应用情况 .1(二) 第三方SDK安全标准化现状 .15(三) 第三方SDK普遍应用的原因分析 .17二、第三方SDK的主要安全问题及分析 .18(一)第三方SDK自身安全性不容乐观 .18(二)第三方SDK成为病毒传播新途径 .19 (三)第三方SDK隐蔽收集个人信息问题逐步显现 .19三、第三方SDK的主要合规问题及分析 .20四、第三方SDK管理的域外经验 .23(一)欧盟的第三方SDK管理经验 .23(二)美国的第三方SDK管理经验 .28五、针对我国第三方SDK管理的相关建议 .33(一)尽快完善相关法律法规,明确相关主体的责任义务 .33(二)A PP开发者需要积极履行数据合规义务 .35(三)第三方SDK提供者需要加快构建数据安全合规体系 .44(四)加快完善SDK安全标准及指南 .47 (五)鼓励第三方SDK企业开展行业自律 .48附录 第三方SDK产品的安全与合规实践 .49(一)极光SDK的安全与合规实践 .49(二)小米推送SDK的安全与合规实践 .57(三)T ALKINGDATA SDK的安全与合规实践 .61 图 目 录图1 嵌入新浪微博SDK的A PP分布情况 .5图2 嵌入支付宝SDK的App分布情况 .6图3 嵌入极光推送SDK的App分布情况 .9图4 嵌入 InMobi SDK的App分布情况 .11图5 各类型App嵌入SDK占比情况 .14图6 App中使用第三方SDK的数量分布图 .15图7 SDK通过App收集的数据类型统计 .25图8 SDK征得用户同意方式的示例 .40 图9 App内设计相关SDK的控制者和管理页面 .45图10 极光SDK展示隐私政策示例一 .51图11 极光SDK展示隐私政策示例二 .51图12 极光SDK展示隐私政策示例三 .52图13 极光SDK展示隐私政策示例四 .52图14 TalkingData 内部数据分级管理策略 .64图15 数据生产/加工/访问使用全流程工具化操作 .65图16 基于受众的群体画像能力输出 .66 表 目 录表1 常见第三方登录分享类SDK应用情况统计 .4表2 常见支付类SDK应用情况统计 .5表3 常见推送类SDK应用情况统计 .7表4 常见广告类SDK应用情况统计 .9表5 常见数据分析类SDK应用情况统计 .11表6 常见地图类SDK应用情况统计 .12 软件开发包(SDK )安全与合规报告(2020 ) 1 一、 第三方SDK 的业内现状据中国互联网络信息中心(CNNIC)统计数据显示,截至2020 年3 月,我国手机网民规模已达 9.04 亿,网民通过手机接入互联网的比例高达98.6%。随着移动互联网的发展、智能手机的不断普及,移动互联网应用程序(App)得到广泛应用。据工信部统计数据显示,截至2019 年12月,我国市场上监测到的 App总量达到367万款,第三方应用商店分发累计数量超过9502 亿次,游戏类、系统工具类、影音播放类、社交通讯类、日常工具类5类App下载量均超过千亿次。 移动互联网服务便捷、即时、普惠的特点,在App应用中得到充分体现,部分App甚至已成为广大用户生活中的“必需品”。由于移动互联网市场的快速迭代,高科技产品飞速更新,App开发者为了提升效率、降低成本,往往会在开发过程中嵌入第三方代码 (SDK开发包)和插件等。本章将从常见类型、应用情况、主要特点等方面对SDK的业内现状进行介绍,详细分析其被广泛使用的原因。(一)第三方 SDK 常见类型及应用情况SDK 是 Software Development Kit 的缩写,即“软件开发工具 包”。简单来看,它是辅助开发某一类应用软件的相关文档、范例和 工具的集合。对App来说,为了提高开发效率,可以将某项功能交给第三方来开发,第三方服务提供商将服务封装为工具包(即SDK)供开发者使用。目前,SDK类型主要包括:第三方登录分享类、支付类、推送类、广告类、数据统计分析类、地图类、风控插件以及一些基础 软件开发包(SDK )安全与合规报告(2020 ) 2 库等。 1. 常见第三方 SDK 类型按照第三方SDK能够帮助App开发者实现的具体功能不同进行区分,其中较为常见、与用户交互程度较强的主要有以下6 类SDK。(1)第三方登录分享类第三方登录分享类SDK主要用于简化用户登录流程,为用户使用已有的第三方帐号进行登录提供便利,同步帮助App构建自己的帐号登录体系。作为一种功能较为基础的SDK,第三方登录分析类SDK被 各类App 广泛使用。(2)支付类据国家信息中心2019 年发布的中国移动支付发展报告数据显示,截至2018 年上半年,我国移动支付用户规模约为 8.9 亿,移动支付交易规模已超过277万亿元。随着移动支付的普及应用,支付功能越来越成为各类App的普遍需求。支付类SDK 帮助开发者在App中进行了支付功能的集成,为用户提供购物、充值、付款、退款等相 关功能。 (3)推送类 推送类SDK帮助App开发者向其用户实时推送通知或者消息,与用户保持互动,从而有效地提高用户留存率,提升用户体验。推送类SDK可实现基于用户活跃情况、设备属性、地理位置等不同用户群的推送。 推送形式包括状态栏通知、自定义消息、本地通知等,内容可涵盖新 闻资讯、日程提醒、活动预告、新版本更新等。 软件开发包(SDK )安全与合规报告(2020 ) 3 (4)广告类据中国互联网发展报告 2020显示,2019 年网络广告市场规模达 4341 亿。随着移动广告红利时代的到来,App 开始接入广告相关SDK的情形越发普遍,广告类SDK对各类广告形式的支持情况也已成为影响移动开发者收入、操作等的关键因素之一。 (5)统计分析类数据统计分析类SDK可以帮助App开发者统计和分析流量来源、内容使用、用户属性和行为数据等,以便App开发者利用数据进行产品、运营、推广策略的决策。 (6)地图类地图类SDK 帮助App集成地图显示、交互等相关服务,以便用户在使用App时在应用中访问相关地图数据,轻松实现相关功能,并在此基础上完成基于自身场景的更深层、更个性化的开发需求。 2. 常见第三方 SDK 应用情况统计为了对第三方SDK 的应用情况进行进一步了解,本章节按类别梳理、总结了一些常见第三方SDK类别的应用情况 1。(1)第三方登录分享类 第三方登录分享类 SDK 主要以主流即时通讯或社交类企业推出的 SDK 为主,常见的类型主要有微信登录分享、微博登录分享、QQ登录分享等。嵌入此类SDK的App往往既包括App 本身,也涉及App的同一母公司旗下其他产品,还包括其他各类App(如新闻资讯、视 1 相关信息梳理来自各 SDK官网或开发者平台。 软件开发包(SDK )安全与合规报告(2020 ) 4 频、旅游出行等),具体情况详见表1。 表1 常见第三方登录分享类SDK应用情况统计SDK名称主要业务功能简要介绍嵌入此类SDK的App微信登录分享使用微信帐号快速登录第三方平台或App。接入微信登录,实现微信帐号快速登录,一键连接。普遍应用在各类App中。微博登录分享使用微博帐号快速登录网站或第三方App,分享内容,同步信息。满足了多元化移动终端用户随时随快速登录、分享信息的需求。普遍应用在各类App中。 QQ登录分享使用QQ帐号快速登录网站或第三方平台。用户使用已有的QQ号码即可登录移动应用,可减少登录交互操作,简化用户注册流程。普遍应用在各类App中。以新浪微博SDK为例,该SDK被广泛嵌入在各类App中,生活服务、游戏和金融行业App中嵌入该SDK的情况最为普遍,三者合计占比44.61%。具体分布情况如图1所示: (数据来源:北京智游网安科技有限公司(爱加密)图1 嵌入新浪微博SDK的App分布情况 软件开发包(SDK )安全与合规报告(2020 ) 5 (2)支付类支付类SDK 通常提供的功能较为单一。目前常见的支付类SDK主要包括银联支付、支付宝支付、微信支付以及各个大银行自己独有的 支付SDK 等。嵌入此类SDK的,除了各类电商购物平台及相关旅游出行类App 外,还包括其他设置了充值、付款、退款等功能的各类App,具体情况详见表2。 表2常见支付类SDK应用情况统计SDK名称主要业务功能简要介绍嵌入此类SDK 的App银联支付跳转银联页面完成支付信息录入,最终完成支付。综合性互联网支付工具,主要支持输入卡号付款、用户登录支付、网银支付、迷你付(IC卡支付)等多种支付方式。普遍应用在各类设置了支付场景的App中。微信支付通过点击微信付款码支付,或扫描二维码支付等功能。综合性互联网支付工具。普遍应用在各类设置了支付场景的App中。 支付宝支付通过二维码面对面支付、小程序支付、花呗分期等多种支付功能。综合性互联网支付工具。普遍应用在各类设置了支付场景的App中。以支付宝SDK为例,该SDK被广泛嵌入在各类设置了支付场景的App 中,以游戏和生活服务行业最为广泛,分别有 38.85%与 24.09%的支付宝SDK嵌入了该类App。具体分布情况如图 2所示: 软件开发包(SDK )安全与合规报告(2020 ) 6 (数据来源:北京智游网安科技有限公司(爱加密)图2 嵌入支付宝SDK的App分布情况(3)推送类推送类SDK 因其多强调交互式体验的特点,广泛应用于与用户互动的场景中,目前常见的推送类SDK 主要有小米推送、百度云推送、个推推送、极光推送、Mob推送等。嵌入此类SDK的App包括新闻资讯、社交、地图、健康医疗、旅游出行类等App,具体情况见表3。 表3 常见推送类SDK应用情况统计 SDK名称主要业务功能简要介绍嵌入此类SDK的App小米推送主要实现消息推送功能。通过在云端与客户端之间建立一条稳定、可靠的长连接,为开发者提供向客户端应用实时推送消息的服务,有效地帮助开发者触达用户,提升App活跃百度地图、快手、今日头条、爱奇艺、淘宝、支付宝、UC浏览器、QQ音乐、高德地图、拼多多、QQ 软件开发包(SDK )安全与合规报告(2020 ) 7 度。浏览器、滴滴出行、酷狗音乐等。百度云推送推送聊天消息、日程提醒、活动预告、动态、新版本更新等功能。一站式App信息推送平台,为企业和开发者提供免费的消息推送服务,开发者可以通过云推送向用户精准推送通知和自定义消息以提升用户留存率和活跃度。手机百度、百度地图、爱奇艺、蚂蜂窝、聚美优品、我查查、虎嗅网、当当网等。 极光推送多种消息类型、用户和推送统计、短信补充、A/B测试、可定制的私有云等功能。为超过50万移动开发者和145.2万款移动应用提供服务,其开发工具包(SDK)安装量累计336亿,月度独立活跃移动终端13.6亿部。珍爱网、酷狗铃声、浮浮雷达、福建移动(八闽生活)、格力、广州地铁、顺丰、土巴兔、探探、快看漫画、汽车之家、网易新闻、搬运帮、墨迹天气、翼支付、去哪儿、平安好医生、银联商务等。个推推送向其用户推送各类消息,结合精准的用户画像分析,给合适 的用户在合适场景下推送合适的内容。各行业提供大数据解决方案,服务于数十万App,覆盖数十亿移动终端。人民日报、新华社、CCTV、新浪微博、京东、网易新闻、滴滴出行等。Mob推送Sharesdk、Smssdk、Moblink、Mobpush、秒验、mob云验证等以数据应用为主导,融合大数据、云计算、人工智能等技术,SDK绿地集团、龙珠直播、无他相机、中国电 软件开发包(SDK )安全与合规报告(2020 ) 8 功能。下载数量超370万,日活用户超2.5亿。信等。以极光推送SDK为例,极光推送SDK嵌入的App主要集中在金融和生活服务类App,比例接近一半。具体分布情况如图3所示: (数据来源:北京智游网安科技有限公司(爱加密)图3 嵌入极光推送SDK的App分布情况(4)广告类广告类SDK 提供的服务多为程序化广告,用以实现精准营销和推广。目前,国内市场上提供移动广告相关的SDK平台众多,主流的有广点通、多盟、TalkingData、有米等。由于 App 普遍具有广告投放推广需求,嵌入广告类SDK的App涵盖多个类别,具体情况见表4。 表4 常见广告类SDK应用情况统计 软件开发包(SDK )安全与合规报告(2020 ) 9 SDK名称主要业务功能简要介绍嵌入此类SDK的App广点通主要实现广告投放相关功能。为App开发者提供广点通投放系统,通过广点通,用户可在平台多个广告位上进行应用以及应用活动相关的精准推广。欢乐淘、楚楚街、沪江教育、妈妈圈、十句话战仙、神仙道、时空猎人、美丽说等。多盟主要实现广告投放、营销等相关功能。专注移动智能营销,提供程序化广告、数据营销、代理广告等服务。中国银行、渣打银行、中国电信、招商银行、中国移动等。 TalkingData主要实现应用统计分析、游戏运营分析、小程序统计分析等功能。以SmartDP为核心的数据智能应用生态为企业赋能,帮助企业逐步实现以数据为驱动力的数字化转型。腾讯、百度、网易、搜狐、360、Google、Yahoo等。有米主要实现广告推广功能。提供App推广、ASO优化、出海营销、整合营销以及广告数据洞察等专业服务,满足游戏、电商、网服、教育、美妆等行业客户的推广需求。封面新闻、晶报传媒、网易智造、Kappa、溢米辅导、龙之谷等。 InMobi主要实现个性化广告功能。全球化的移动广告平台,覆盖超过15亿移动设备,每月广告请求超过2000亿。天使纪元、少年三国志、狂暴之翼等。以 InMobi SDK 为例,嵌入该 SDK 的 App 中,6 成以上分布在游戏行业;其次是生活服务行业,占有 13.91%。具体分布情况如图 4所示: 软件开发包(SDK )安全与合规报告(2020 ) 10 (数据来源:北京智游网安科技有限公司(爱加密)图4 嵌入 InMobi SDK的App分布情况(5)统计分析类数据统计分析类SDK作为一类较不易为用户感知的SDK,对App的运营和统计分析提供支撑作用。目前,常见的数据统计分析类SDK包括友盟、海度云、贵士移动等。嵌入此类SDK的App也广泛来自各领域,且不乏各领域的头部App,具体情况见表5。 表5 常见数据分析类SDK应用情况统计 SDK名称主要业务功能简要介绍嵌入此类SDK的App友盟主要包括移动统计、应用统计、游戏统计、移动广告监测等功能。结合实时更新的全域数据资源,挖掘出15,000+客群标签、输出300+应用或行业的分析指标,通过AI赋能的一站式互联网数据产品与服务体系。微博、阿里云、KantarWorldpanel、优酷、迈外迪、酷云互动、讯码科技、云房数据、飞猪、Marketin、淘 软件开发包(SDK )安全与合规报告(2020 ) 11 票票、PP助手、钉钉、豌豆荚、掌慧纵盈等。贵士移动TRUTH移动互联网标准数据库系列、TRUTH-Plus生态流量服务、DATA MINING数据挖掘分析服 务。帮助客户了解市场发展趋势和行业竞争格局,通过理解用户特征和全景画像优化自身运营效率,另一方面也可以帮助客户前瞻性地发现市场机会,找到具有增长潜力的赛道和值得投资的领域。百度、蚂蚁金服、中国平安、顺丰速运、腾讯、华为、苏宁易购等。海度云主要包括移动应用统计、网站统计、渠道分析等功能。帮助客户了解市场发展趋势和行业竞争格局,优化自身运营效率,帮助客户发现市场机会,日接受移动数据量超过150亿。YY、ME直播、100教育、环球网校、无忧英语、邢帅教育、闲趣网络等。(6)地图类地图类SDK 帮助开发者实现地图数据的调用及相关服务的实现。 目前,常见地图类SDK 主要包括百度地图、高德地图、腾讯地图等。嵌入此类SDK的App多为旅游出行、电商购物、物流、外卖等,具体情况见表6。 表6 常见地图类SDK应用情况统计SDK名称主要业务功能简要介绍嵌入此类SDK的App百度地图主要有地图、定位、搜索、轨迹、导航、路线提供手机端、PC端、智能穿戴设备的地图摩拜单车、e袋洗、点到、 软件开发包(SDK )安全与合规报告(2020 ) 12 规划、路况等功能。展示能力,在多个行业场景中可以配置个性的地图展示效果。德邦、苏宁易购、货拉拉、唯品会等。高德地图主要有地图、定位、导航、路线规划、搜索、自定义地图和数据可视化等功能。LBS服务提供商,服务超过三十万款移动应用,日均处理定位请求及路径规划数百亿次。首汽约车、易到、神州专车、曹操专车、嘀嗒出行、饿了么等。腾讯地图主要有定位、地图展示、地点搜索、路线规划、 导航和室内图等功能。基于Android 4.1及以上版本设备的应用程序接口,通过该接口,可以轻松的使用腾讯地图定位服务。京东、中国邮政、新达达、汇通天下、滴滴出行、美团外卖、快手等。3. 第三方 SDK的应用特点分析从第三方SDK应用情况来看,主要呈现以下三个特点:一是 App 使用第三方 SDK 已成为普遍现象。 根据爱加密发布的2020年Q1全国移动App安全态势研究报告,截至2020 年3月底,爱加密大数据中心已收录Android 应用超过315万款,iOS应用超过300 万款,其中29.46%的应用嵌入了 SDK,近 5 成都是框架类 SDK。 从嵌入第三方SDK的App所处行业类型来看,游戏类嵌入SDK的App数量最多,占比为23.85%,其次是生活服务类App,占比为18.16%;位列第三的是教育类App,占比为15.46%,详见图52。可以说,SDK已成为与App相生相依的重要伙伴,也同时成为了整个移动互联网生态中极其关键的一环。 2 爱加密 2020年Q1全国移动 App安全态势研究报告。 软件开发包(SDK )安全与合规报告(2020 ) 13 图5 各类型App嵌入SDK占比情况二是各类别App平均使用第三方SDK的数量在10个以上。 随着第三方SDK种类及数量的不断增多,不少App开发者由于开发时间和成本有限,大量使用第三方SDK进行代码集成。如图6所示,根据CSDN社区专业人士利用SDK分析工具,针对1000多款主流App使用SDK情况得出的统计数据 3,各类别App使用第三方SDK平均在10个以上,最高可达平均30.6个/类。平均使用第三方SDK个数超过20个的App类型有8类。 3 7月 20日。 软件开发包(SDK )安全与合规报告(2020 ) 14 (数据来源:CSDN“IT东”博客的SDK分析工具)图6 App中使用第三方SDK的数量分布图三是第三方SDK功能逐渐多样化,应用于不同领域的大量App中。目前,市场上的第三方SDK提供者已不再局限于开发功能单一的SDK,而是将SDK功能从纵向和横向不断延伸,从而应用于不同领域的大量App中。以推送类SDK提供者为例,除了不断完善基于用户画像的实时、智能、多场景下的精准推送外,往往会同步对产品运营情况进行统计 分析,帮助App进行产品优化升级,甚至部分SDK提供者还同步推出了登录验证功能。随着第三方SDK功能的不断强大并逐渐多样化,其应 用市场的规模将持续扩大,市场前景持续看好。可以说,第三方SDK已成为事实上链接各类业务功能App的数据枢纽,有机会获取来自各类App不同业务场景下多类别的个人信息。 软件开发包(SDK )安全与合规报告(2020 ) 15 (二)第三方 SDK 安全标准化现状1已发布标准情况目前,涉及第三方SDK安全的,比较有代表性的标准包括国家标准GB/T 35273-2020 信息安全技术 个人信息安全规范,以及金融行业标准JR/T 0171-2020 个人金融信息保护技术规范。国家标准GB/T35273-2020 信息安全技术 个人信息安全规范第9.6条要求:“如个人信息控制者在提供产品或服务的过程中部署了收集个人信息的第三方插件(例如,网站经营者与在其网页或应用 程序中部署统计分析工具、软件开发工具包 SDK、调用地图 API 接口),且该第三方并未单独向个人信息主体征得收集个人信息的授权 同意,则个人信息控制者与该第三方在个人信息收集阶段为共同个人 信息控制者”。 金融行业标准JR/T 0171-2020 个人金融信息保护技术规范第6.1.4.2条h)项要求使用外部嵌入或接入的自动化工具(如代码、脚本、接口、算法模型、软件开发工具包等)进行信息共享与转让时, 应定期检查或评估信息共享工具、服务组件和共享通道的安全性和可 靠性,并留存检查或评估结果记录;第6.1.4.4条f)项要求应对外部 嵌入或接入的自动化工具(如代码、脚本、接口、算法模型、软件开 发工具包等)开展技术检测,确保其个人金融信息收集、使用行为符 合约定要求;并对其收集个人金融信息的行为进行审计,发现超出约 定行为及时切断接入。第6.2.3条则对与个人金融信息相关的SDK应当符合的安全要求作出了规定:与个人金融信息相关的客户端应用软件 软件开发包(SDK )安全与合规报告(2020 ) 16 及应用软件开发工具包(SDK)应符合JR/T 0092-2019、JR/T 0068-2020客户端应用软件有关安全技术要求,并在上线前进行安全评估。 2020年3月信安标委秘书处发布的网络安全标准实践指南移动互联网应用程序(App)收集使用个人信息自评估指南中也强调根据消费者权益保护法第29条规定,经营者收集、使用消费者个人信息,“应当公开其收集、使用规则”, App开发者则应“逐一列出App(包括委托的第三方或嵌入的第三方代码、插件)收集使用个人信息的目的、方式、范围等”,特别是“如App嵌入了第三方代码、插件(如SDK)收集个人信息,应说明第三方类型,以及收集个人信 息的目的、类型、方式,说明方式包括隐私政策、弹窗提示、文字备 注、文本链接等。如委托的第三方或嵌入的第三方代码、插件直接将 个人信息传输至境外的,应明确说明跨境传输个人信息的目的、类型 和接收方等。”而SDK作为目前市场上App中最为常见的第三方接入方式,也应适用于上述规范性文件中关于第三方的规定。 2在研标准情况自去年以来,第三方SDK安全受到各方关注,专门研究第三方SDK安全的标准项目也相继启动。通信行业标准方面,2019年共立项两个 相关行业标准项目,分别是移动应用软件SDK安全技术要求和测试方法和移动应用SDK安全指南,前者在移动应用软件SDK安全威胁的基础上,依据国家相关法规,结合移动应用软件和第三方SDK行业发展现状,制定移动应用软件SDK安全管理要求、技术要求及测试方法;后者从SDK应用安全角度出发,明确移动应用开发设计中使用 软件开发包(SDK )安全与合规报告(2020 ) 17 第三方SDK的安全原则,提供对移动应用中第三方SDK安全评估和安全监测的方法和手段,梳理常见SDK类型及其业务场景、功能和权限,增强App开发者对恶意SDK的识别、检测和防范能力。国家标准方面,TC260全国信息安全标准化技术委员会发布了网络安全标准实践指南 移动互联网应用程序(App)中的第三方软件开发工具包(SDK)安全指引(征求意见稿),有望期待第三方SDK标准正式出台。(三)第三方 SDK 普遍应用的原因分析一是接入第三方SDK可以大幅度提升使用者的开发效率,明显降 低开发成本。 特别是推送类、广告类等SDK,往往能够帮助App开发者在无需了解技术细节的情况下快速实现某一特定功能,从而提高开 发效率,缩短开发周期。这样,App开发者也可以将精力放在商业模式的制定与运营上,提高整体效率。 二是SDK的易用性和灵活性较强,为App提供流畅及定制化的用户体验。 SDK 通过创造一种简单的模式,简化代码、优化繁琐的集成工作,实现API 的有效调用,配置简便、友好、灵活。在实际中,开发者的需求各异,可以通过集成不同类型的SDK快速实现预期功能, 构建自定义应用,并为其用户量身定制体验,大大增加应用程序的多 样性,提高App的用户留存率和使用频率。三是SDK能够帮助提高App的兼容性,扩大用户使用范围。 SDK的接入可以解决App具体功能与各厂商机型的兼容性问题,免去与各厂商机型繁琐的硬件适配工作,让使用各种机型的用户都能够使用 软件开发包(SDK )安全与合规报告(2020 ) 18 App的某一特定功能,解决App在各应用市场的投放中可能存在的渠道兼容问题。 二、 第三方SDK 的主要安全问题及分析随着四部门App违法违规收集使用个人信息专项治理行动的持续深入推进,原本“隐藏”在App身后的第三方SDK进入了监管部门及公众视野,其目前存在的一些安全风险及收集使用个人信息的合规问题, 也随之浮出水面。 (一)第三方 SDK 自身安全性不容乐观 目前,已经发现的SDK安全漏洞包括http误用、SSL/TLS不正确配置、敏感权限滥用、身份识别、本地服务、通过日志造成信息泄露、开发人员失误、远程任意文件读取漏洞、越权调用未导出组件、XML外部实体注入漏洞等。第三方SDK的应用模式决定了其自身安全问题往往产生放大效应,嵌入第三方SDK的App越多,其安全漏洞的波及范围就越广,严重时甚至能够影响Android生态系统安全。以2017年12月爆出的某消息推送类SDK漏洞为例,因其存在可越权调用未导出组件漏洞,利用该漏洞便可实现对嵌入了该SDK的App进行多种恶意攻击,包括远程窃取用户终端设备中的敏感数据(通讯录、照片、账号密码 等)、向终端用户推送虚假诈骗信息等。据悉,该漏洞共影响了七千 多款App 4,其中不乏市场主流产品,影响范围极广。 4 2019年7 月23日。 软件开发包(SDK )安全与合规报告(2020 ) 19 (二)第三方 SDK 成为病毒传播新途径当前,App普遍使用第三方SDK的现象也吸引了一些不法分子的注意。通过制作、发布、吸引App嵌入含有恶意代码的第三方SDK,造成短时间、大范围的病毒传播和感染;并且使用代码分离、动态代 码加载等技术,能够实现远程控制恶意代码的执行,具有很强的隐蔽 性和对抗杀毒软件的能力。2018 年 4 月,腾讯安全反诈实验室曝光了一款推送类的恶意第三方SDK“寄生推”,它通过预留“后门”,云端动态更新下发恶意代码包,对感染手机进行 Root 提权,静默安 装恶意应用,推送恶意广告,牟取不法收益。“寄生推”采用的云端 控制下发恶意代码的方式,绕过了一些应用市场的App安装包检测和杀毒软件的蜜罐检测。据腾讯统计,共有300多款App嵌入了“寄生推”,潜在受影响用户数超2000 万。(三)第三方 SDK 隐蔽收集个人信息问题逐步显现第三方SDK作为独立的软件开发工具包,和App一样,具备收集个人信息的能力。但第三方SDK收集了哪些个人信息,用户往往难以感知,App开发者也未必完全知悉。近年来,已经发生多起第三方SDK 隐蔽收集个人信息的安全事件。例如,2019年2月华尔街日报曝光Facebook在未告知用户的情况下,利用AppEvents统计分析工具从11个应用程序中收集用户个人敏感信息。此前,卡巴斯基实验室研究人员Roman Unuchek也曾披露,某些第三方SDK会主动收集用户姓名、年龄、性别、电话号码、邮箱地址、位置信息、设备信息等众多个人 软件开发包(SDK )安全与合规报告(2020 ) 20 信息和个人敏感信息,并以明文方式上传至远程服务器,且不论用户 是否知情同意,明文传输本身已经加剧了个人信息的泄露风险 5。2020年3月Vice在一份报告中指出,ZoomApp嵌入的Facebook的SDK会向Facebook传输用户手机型号、城市、广告标识符、IP地址等用户个人信息。即使用户没有Facebook账号,其个人信息也依旧会传输给Facebook。Zoom 的隐私政策中也没有告知Facebook SDK收集个人信息或Zoom App向Facebook SDK共享个人信息的情况。事件曝光后,Zoom不仅遭受较大的负面舆论影响,市值蒸发58亿美元,股价下跌超6% 6,而且在美国加利福尼亚州遭到起诉。三、 第三方SDK 的主要合规问题及分析本章将主要讨论聚焦于第三方 SDK 收集使用个人信息在法律层面的合规问题,有别于上一章关于第三方SDK隐蔽收集个人信息的安全问题。对于第三方SDK被普遍使用、大量获取个人信息的现状形成鲜明对比的是,第三方 SDK的个人信息收集使用行为经常缺少法律层面的正当性,因此存在合规风险。这些合规风险的产生,由于第三方 SDK 提供者在用户和 App关系中起到的角色不同在 App“背后”处 理数据或通过App接入、以自己名义提供服务而有所差异。(一)第三方 SDK 作为数据处理者时,主要合规问题分析在某种情况下,App终端用户在使用App服务过程中虽然会被SDK 5 7月 23日。6 4月 28日。 软件开发包(SDK )安全与合规报告(2020 ) 21 直接收集个人信息,但用户自身对这类SDK的存在是无感知的,例如终端用户在使用 App 内的语音通话功能时被嵌入该 App 的语音分析SDK收集语音信息,用户是无法知悉其个人信息被哪家语音SDK企业收集、使用和存储了。 如果App与第三方SDK之间约定,App开发者是数据控制者,第三方SDK 提供者是受App委托的数据处理者,那么在私法层面上第三方SDK提供者将无法与用户直接建立 “合同 ”关系,也就无法以自己的名义就收集使用用户个人信息的行为获得个人信息主体的同意。此时, 第三方SDK提供者收集使用个人信息的正当性依据来自于:(a)App 开发者就该等数据的收集、使用和 “分享 ”获得用户的同意;以及(b)App开发者给予的委托处理数据之授权,条件(a)和(b)缺一不可。然而,现实情况是,第三方SDK所收集和使用的个人信息及相关共享行为,很多App开发者并没有通过隐私政策或弹窗提示等方式获得用户的 “同意 ”,显然也就无法满足(a)项条件;同时,为满足 App的便利、便捷开发需求,第三方SDK提供者与App开发者往往通过第三方SDK 提供者的开放平台,在线签署开发者服务协议来约定双方的权利义务,鲜少有关于委托处理数据方面的专门协议或特别规定,也 就难以算作协议双方之间的有效“授权”,(b)项条件也未必满足。 此外,目前大多数App开发者不会对第三方 SDK收集了那些个人信息进行技术验证,此种情况下的第三方 SDK的数据收集和处理活动对于App开发者而言相当于一个“黑盒子”,缺乏透明度,如果被诉侵犯个人用户隐私的, App 开发者或者 SDK 提供者将可能承担举证责任 软件开发包(SDK )安全与合规报告(2020 ) 22 倒置的风险。 7(二)第三方 SDK 作为数据控制者时,主要合规问题分析在某些情况下,接入应用的SDK是以自己的名义向App用户提供服务的,比如App用户通过激活一个SDK接口而调用或者启动了该用户已安装的另一个App 的服务功能。此时,第三方 SDK提供者能够拥有独立的“数据控制者”身份,因为第三方SDK提供者有机会将自身品牌进行露出,用户对其使用的是哪家企业实际提供的特定服务是有 明显感知的。此时应采用三重授权原则,即“【用户-平台1】+ 【平 台 1-平台 2】+ 【用户-平台 2】”可以解决 SDK 获取 App 用户个人信息的正当性问题。但是如果第三方SDK提供者在“同意”范围之外处理用户个人信息的,则该等数据处理的行为则显然不具备法律正当 性,需要承担超出授权范围的相关责任。 现实情况中,也有少数第三方SDK提供者在App开发者合作委托其处理数据时,也坚持要求获得“数据控制者”身份,以此确保自身 对数据使用目的、方式的“自主权”,并且在获取后也不会根据App开发者的指令进行销毁或者交还数据。其背后的动力来源于第三方SDK提供者汇聚多源数据后,更需要能够自主决定如何处理数据,进 而实现数据变现。此时,即使第三方SDK 有可能变成“数据控制者 ”7 例如在庞理鹏诉北京趣拿信息技术有限公司、中国东方航空股份有限公司案件中,被告东航主张其通过与
展开阅读全文