机制|了解广告SDK工作机制,保护APP自身安全

编辑导读:很多人对SDK又爱又恨,一方面能够帮助开发者简化开发步骤,提高开发效率,节约开发成本;但是另一方面也要嵌入第三方SDK后带来的风险和后果。想要避免风险,首先就要了解它。本文作者对广告SDK工作机制进行解析,希望对你有帮助。
机制|了解广告SDK工作机制,保护APP自身安全
文章插图
SDK,APP开发者应该都很了解,开发者们或多或少都接触或安装过,而提到SDK安全性这个问题,开发者们的情绪可能都不会平静,这其中的利害关系确实有点儿复杂。
一方面,SDK方便开发者产品设计,帮助开发者简化开发步骤,提高开发效率,节约开发成本,像框架类、广告类、推送类、统计类、地图类、社交类、支付类、客服类、测试类等等,这些不同类型的SDK极大地方便了开发者。
而另一方面,对开发者来说,也不得不承担,因嵌入第三方SDK后带来的风险、后果,由于SDK开发者开发能力的参差不齐,可能因为技术原因或恶意‘留后门’而存在大量安全漏洞,还有一些SDK会违规读取和储存用户隐私,或执行越权操作等,这些问题轻则造成APP卡顿,重则被应用市场下架,更严重的情况是漏洞被攻击,就可能会给APP及APP用户带来严重损失。
早在2020年7月,延迟四个月举行的3.15晚会中,央视曝光了50多款App中内嵌SDK插件窃取用户隐私的问题,这些App通过内置SDK插件,在用户不知情的情况下,读取、上传用户电话号码、通讯录、短信记录、应用列表等信息,并窃取联系人、交易验证码等数据,严重侵犯用户隐私权益、财产安全。让SDK安全性问题浮出水面,一时间,SDK成为“众矢之的”,令社会普遍认为,SDK是造成个人隐私数据泄露的“元凶”。上月,一则“滴滴出行”APP因严重违法违规收集使用个人信息被应用市场下架的消息,让个人信息安全问题重回热点,像滴滴这样的Hero APP都被下架了,更是令众多APP经营者风声鹤唳。
事实真的如此吗?SDK真的是“洪水猛兽”吗?让我们来看一组数据。
根据观研天下发布的《2019年中国移动APP行业分析报告》调查数据显示,截止2018年第四季度,全球APP平均安装SDK数量达18.2个/APP,100-500万下载量的APP的SDK平均安装数量最多,达27.7个。
机制|了解广告SDK工作机制,保护APP自身安全
文章插图
2016-2018年全球APP平均安装SDK数量
机制|了解广告SDK工作机制,保护APP自身安全
文章插图
2018年12月不同下载量级别APP的SDK数
2019年,南都个人信息保护研究中心委托中国金融认证中心针对使用率高的 SDK 做了隐私数据分析报告,报告显示,在测评的 60 款常用应用软件中,共使用了至少 966 个 SDK,平均每款 App 使用 19.3 个(注:移动金融类未计在内,因为该行业普遍对 App 进行加固,难以确切检测出使用的 SDK)。
其中生活服务类 App 平均使用的 SDK 个数最多,为 20.2 个,旅游交通类最少,平均使用 15.4 个 SDK。由此我们可以看出,SDK之于APP开发者们,在风险可控的情况下,并不排斥。
机制|了解广告SDK工作机制,保护APP自身安全
文章插图
图 | 各行业 APP 使用 SDK 数量
数据来源:《常用第三方 SDK 收集使用个人信息测评报告》/ 南都个人信息保护研究中心中国金融认证中心(CFCA)
广告SDK是绝大多数App开发者在考虑商业化变现时,经常要用到的。下面我们就对广告SDK的功能分类,集成规范,工作原理来详细解读,以便APP开发者对广告SDK有更深入的了解。
一、APP与广告SDK根据2020年11月全国信息安全标准化技术委员会《网络安全标准实践指南-移动互联网应用程序(App)使用软件开发工具包(SDK)安全指引》中对SDK的分类,常见SDK类型分为16类(见下图),其中,对广告SDK的功能描述是提供广告展示功能,通过使用广告SDK,App提供者可以在App中展示广告商投放的广告,进而根据用户的点击赚取收益。
广告SDK在众多SDK类型中,是比较特殊的一类,其他SDK主要是方便APP自身运营需要,而广告SDK它的功能目的是直接的商业化变现。因此,具备一定规模流量的想快速获得收益的APP开发者都会考虑接入广告SDK。
机制|了解广告SDK工作机制,保护APP自身安全
文章插图
资料来源:《网络安全标准实践指南—移动互联网应用程序(App)使用软件开发工具包(SDK)安全指引》
二、广告SDK分类及用途广告SDK的功能是展示广告,从定义上来说,还分广义的和狭义的广告SDK,广义的广告SDK是指为开发者提供广告相关功能(接入广告、广告监测等)的软件开发工具包;狭义的广告SDK就是指帮助App开发者接入广告,实现广告变现的软件开发工具包。