警惕!APP 使用第三方 SDK 带来的数据安全风险

2023-11-3 0:00:00来源:天畅浏览:1533
你知道SDK是什么吗?

SDK是英文Software Development Kit的缩写,是一种辅助开发某一类软件的相关文档、范例和工具的集合。在移动应用程序开发中,SDK通常用于提供某种功能或服务的插件,方便地嵌入到不同的APP中。近年来,国家安全机关工作发现,境外一些别有用心的组织和人员,正在通过SDK搜集我用户数据和个人信息,给我国家安全造成了一定风险隐患。


1.jpg


SDK在我国的应用背景非常广泛和深入,涵盖了移动支付、通信、实名制、移动互联网、人工智能等多个领域。


1.移动支付的普及:在我国,移动支付已经成为了非常普遍的支付方式。SDK能够为各类移动应用提供支付功能,方便用户进行购买和交易。例如,支付宝、微信支付等SDK的广泛应用,使得开发者可以轻松地将支付功能集成到自己的应用中。


2.通信行业的繁荣:我国拥有庞大的通信行业市场,而SDK能够为各类移动应用提供通信功能,包括即时通讯、短信通知等。这对于像微信、QQ等需要实时通信的应用来说,具有非常重要的意义。


3.实名制政策的推行:近年来,我国推行了一系列实名制政策,特别是在网络领域。这使得很多应用需要用户提供真实的身份信息进行注册和认证。SDK能够快速准确地识别和验证用户的身份信息,帮助开发者实现实名制注册和认证的功能。


4.移动互联网的发展:我国是全球最大的移动互联网市场,移动应用数量庞大,种类繁多。为了提高用户体验和提升服务质量,很多开发者会选择使用SDK来为自己的应用增加各种功能,例如数据分析、广告推送、社交分享等。


5.人工智能和机器学习的应用:近年来,人工智能和机器学习技术的发展也为SDK的应用提供了新的机会。SDK能够提供各种人工智能和机器学习的算法和服务,帮助开发者提升应用的智能性和自动化水平。


SDK带来哪些数据安全问题?

当前,SDK以其多样化、易用性和灵活性等优势成为移动供应产业链中最重要的一项服务,与此同时也带来诸多数据安全问题。

01
过度收集用户数据

某些SDK可能会违规收集用户设备信息,如IMEI、地理位置等,用于数据分析和广告投放等目的。当SDK的用户覆盖量达到一定规模时,可以通过搜集的大量数据,对不同用户群体进行画像侧写,从而分析出潜在的有用信息,比如同事关系、单位位置、行为习惯等。



02
数据泄露

如果SDK存在安全漏洞,用户的个人信息可能会被黑客盗取,导致数据泄露。这些信息可能会被用于诈骗、身份盗用等恶意行为,给用户带来损失。


SDK搜集个人信息类型


03
数据跨境传输

一些SDK可能会将用户数据传输到境外服务器,这可能会导致数据泄露和滥用。例如,一些境外SDK服务商可能会通过向开发者提供免费服务等方式来获取数据,然后将其传输到境外服务器,从而给国家安全带来风险。



04
数据篡改

如果SDK被黑客攻击,他们可能会篡改收集的数据,导致应用行为异常或影响用户的数据完整性。



05

数据滥用

一些SDK可能会将收集到的用户数据用于不正当的目的,如用于商业竞争、政治活动等。例如,一些应用程序可能会将用户的个人信息出售给第三方,或者用于分析用户的消费习惯和行为模式,以获取商业利益。


消除SDK背后的数据风险

我们应该怎么做?

根据中国互联网络信息中心统计数据显示,截止2018年12月,我国手机网民规模高达8.17亿;2018年工信部数据统计,我国市场上可监测到的移动应用程序总量达449万款;而根据2019年第三方机构的数据报告显示,平均每款APP使用的SDK数量达19.3个。截至2022年12月,我国10万个头部应用中,共检测出2.3万余例样本使用境外SDK,使用境外SDK应用的境内终端约有3.8亿台。从上述数据可以看出,第三方SDK如今在移动互联网领域被广泛应用。对此,我们又应该做些什么呢?


SDK申请收集用户信息占比


应用程序开发企业:

应尽量选择接入经过备案认证的SDK,引入境外SDK前应做好安全检测和风险评估,深入了解SDK的隐私政策,并利用SDK demo以及APP测试环境对SDK声明内容进行一致性比对,并持续监测SDK是否有异常行为。

个人用户:

个人用户在使用手机应用程序时,要增强个人信息保护意识及安全使用技能,要选择安全可靠的渠道下载使用应用程序,不安装来路不明的应用,不盲目通过敏感权限的申请。特别是发现SDK申请与应用功能无关的权限时,需要保持高度警惕。



企业解决SDK数据安全问题的建议:


1.选择可信的SDK:在选择SDK时,应选择来自可信赖的供应商且被广泛使用的SDK。同时,应了解SDK的具体功能和用途,避免嵌入不必要的SDK。


2.审查SDK的安全性:在集成SDK之前,应对其安全性进行审查,包括其代码、功能和使用方式等。如果可能的话,可以参考其他开发人员的经验和反馈。


3.加密数据:对于传输和存储的个人信息,应使用加密技术进行保护,以防止未经授权的访问和泄露。


4.定期更新SDK:SDK的供应商可能会发布新版本,修复已知的安全漏洞。因此,应定期更新SDK,确保使用的是最新版本。


5.监控和检测异常行为:通过监控应用程序的行为和性能,可以及时发现异常行为,如未经授权的数据传输或恶意代码植入。一旦发现异常行为,应及时处理并通知用户。



总结:

2021年以来,国家陆续出台了《个人信息保护法》、《网络安全法》等律法建立了健全的隐私保护制度,保护大数据时代下的个人信息安全与隐私。对于每个用户来讲,我们很难判断哪些软件是安全的,因此我们应谨慎开放软件权限,有意识的保护自己的隐私。而作为 SDK服务商,更要遵守国家法律,从根源做起,绝不写入恶意功能。SDK开发商和使用商都应重视SDK的数据安全风险,并采取必要措施进行防范,以保护用户隐私和数据安全。