SDK安全之道:如何识别第三方SDK留下的“暗门”

SDK隐私问题往往比较容易被入门开发者忽略,去年因为SDK隐私问题引起整个移动互联网行业关注的事件屈指可数: (有米、百度…) SDK隐私规范有哪些类型?哪些对于开发者来说应当谨慎对待?

1、索引权限

在国内,应用索取权限是个顽固的老问题,稍微有点儿追求的应用都会索要一系列七七八八的权限(应用开发者为了实现更多的功能,采集更多的数据,往往需要做很多权限声明)。有时你会发现一个扫二维码的应用想要“读取通讯录”的权限、一个监测空气质量的软件需要摄像头和麦克风的权限,其实这些莫名的权限需求可能连开发者自己都没想过该如何使用,但极大多数开发者都秉承着“万一有用呢”的目的进行着权限索取。这样的话,那么问题来了…

问:在“索取权限”的授权上(对于权限声明),从开发者角度,你怎么来看Android6的新特性中很多数据采集需要用户授权?

答:在Android6之前很多设备信息的获取对开发者是没有要求的,大多数开发者都是尽可能采集更多的信息。尤其在国内,大多开发者都没有做任何数据披露,在用户不知情的情况下采集信息,实际上这种情况在一定程度上是侵犯了用户的隐私权限。从Android6之后系统会强制开发者在某些权限的使用上需要提示用户,在获得授权后才可以使用,大家都感觉在这方面Android越来越像iOS了,这其实是一个好的变化,它在渐渐规范开发者在应用开发中对权限的使用,帮助开发者树立对数据披露的意识,同时是对用户隐私权限的保护。

2、iOS和Android的隐私比较

问:很多人都有这样的认定,说iOS对于用户的隐私控制比Android好,那事实上到底是什么样呢?

答:实际上由于Android是开源的,基本上所有系统接口都是开放的,开发者对设备信息的获取相对iOS更加灵活。比如MAC地址,在iOS中根本不提供接口获取。从开发者的角度看,在iOS中可操作空间非常小,而Android中能获取更多的数据实现更多的功能,但其实Android6之后很多数据的获取也必须要向用户声明,逐渐在规范。从开发者角度来看,iOS过于封闭未必是好的,只要能控制好开发者在App中的权限声明和数据披露,同样可以做好对用户的隐私保护。但目前国内的应用市场在这方面还有很长的路要走。

3、出海如何不被下架

问:我是一名开发者,最近我们的App想要出海,国外跟国内相比,在隐私规范上有哪些值得我们关注?面对国外隐私规范,我怎样才能确保我的App不被下架?

答:海外的应用市场,像AppStore和GooglePlay对App上线前的审核相对国内来说还是非常严格的,它会扫描你App中所有的接口调用,通过扫描就会知道你使用了哪些数据,这些数据如果没有做数据使用的声明则会被认为是触犯了用户隐私,审核就一定不会通过,严重的会被下架。比如你的App中如果没有提供位置相关的服务,却采集了经纬度这样的地理位置信息,那么在审核中通常不会被通过。或者App中有扫描应用安装列表的操作,那一定会被下架。所以,只要开发者对自己所获取的数据做好足够的数据使用声明,就不会触犯数据隐私审核的红线。

4、国内SDK隐私类型

问:SDK隐私问题往往比较容易被入门开发者忽略,去年因为SDK隐私问题引起整个移动互联网行业关注的事件屈指可数:(有米、百度…)SDK隐私规范有哪些类型?哪些对于开发者来说应当谨慎对待?

答:如我之前问题的回答,涉及到用户隐私信息的数据采集,如果没有做数据使用的声明就会被认为是触犯了用户隐私,审核就一定不会通过。例如:用户蓝牙信息、传感器信息、账户信息、位置信息等。同时,像采集设备上安装应用信息、安装列表这类操作,是一定会被下架的。

5、APPStore中的一些问题

问:“AppStore”2016年最新审核规则中,有哪些是容易被忽略的?

答:从应用商店对数据隐私的审核标准来说,从来没有特别明确告诉开发者哪些数据是不能采集的,哪些操作是不能执行的,但是从来都是明确告诉开发者要对App中的数据隐私进行披露,这个规则一直没有变化,因此开发者在使用数据的时候,要按照要求去做数据披露,一定没有问题。

6、SDK的安全与否

问:在AppStore里因为SDK隐私原因被下架,我们一般看到的是使用不安全的SDK,如何才能鉴别出来安全和非安全?

答:一些有经验的高级开发者会通过对SDK进行逆向操作,对代码进行扫描,可以知道SDK进行了哪些操作、采集了哪些隐私数据。但现在App的加固技术也在不断更新,逆向的难度也越来越高,所以对大多数开发者来说很难去判断这些第三方SDK做了哪些违规操作。在这里建议开发者,尽可能选择有一定市场基础的第三方SDK,在AppStore和GooglePlay市场上的App大多选择的SDK进行集成,可以大大降低下架风险。

7、国内应用商店隐私规范

问:国内应用商店没有国外的审核严格,作为用户来说,怎么才能保护自己的数据隐私不被泄露?

答:对于用户来说,由于国内的安卓市场对App的数据隐私审核门槛非常低,甚至没有审核,因此常常会发现自己的流量被默默盗走,因此产生高额的流量费用。有些用户可以在运营商帮助下去分析流量产生的来源,也就是哪些App在大量的从你的手机上传输数据,但却无法判断是哪些数据被泄露,所以国内Android用户保护自己的数据隐私的权利也非常困难。在这里我建议Android用户尽量使用OS升级到Android6以上的手机,尽量从大的应用商店下载App。那么,对于应用开发者和第三方SDK提供商需要坚持自己的职业操守,不要为了短期的利益而放弃了长远的市场,让我们都能做到行业自律,共同营造一个健康的行业生态环境。

原文发布于微信公众号 - BestSDK(bestsdk)

原文发表时间:2016-07-26

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏腾讯云技术沙龙

干货满满,腾讯云+社区技术沙龙 Kafka Meetup 深圳站圆满结束

2010年,LinkedIn 着手开发 Kafka,到2011年 Kafka 进入 Apache 孵化器,成为世界顶级开源项目,并迅速被各种企业采用。据分析,目...

5.4K186
来自专栏云技术分享圈

腾讯云推出竞价实例 云服务器开销最高下降90%

伴随着数字化技术的广泛应用,企业业务上云成为大势所趋,企业在服务器等方面的IT成本得以大幅下降。但是追求性价比之路永无止境,企业的长久发展依赖成本的长期优化,对...

1780
来自专栏技术博文

Linux哲学思想--基本法则

1、一切皆文件; 2、单一目的的小程序; 3、组合小程序完成复杂任务; 4、文本文件保存配置信息; 5、尽量避免捕获用户接口; 6、提供机制,而非策略。 自从L...

3338
来自专栏腾讯开源的专栏

Github 开源项目贡献指南:开源的法律问题

向世界分享你们具有创造性的工作,这是一个多么令人激动和有价值的经历。这也意味着你们必须担心一堆你们不清楚的法律问题。幸运的是,你们不必从头开始。我们已经涵盖了你...

1.2K1
来自专栏Java架构

阿里离职后自我创业:从零到百亿互联网金融架构发展史总体介绍下面做详细介绍

2742
来自专栏数据猿

金融科技&大数据产品推荐:日志易—机器数据实时搜索分析引擎

日志易是强大、灵活的日志大数据分析工具,既提供云端的SaaS服务,也提供本地部署,企业可以利用它对日志进行集中管理和准实时搜索、分析、可视化和监控告警等 官网 ...

3734
来自专栏安恒信息

携程事件启发:监督和审计也是关键

  5月28日下午2点左右,针对携程网站无法打开的事件在朋友圈被刷屏。刚刚开始是各种调侃,其中要求对运维人员好一点的呼声最高、传播最广,然后是携程老板悬赏100...

3604

工业物联网需要边缘的五个原因

随着我们生活和工作的空间开始变得对网络有所了解并对其环境中发生的事件做出反应,工业物联网正迅速成为事实。在这些空间中,不同复杂度的“事物”包括测量温度值的传感器...

3559
来自专栏程序员的知识天地

程序员似乎已经忘记了软件的真正目的是什么

当你手里有把锤子的时候,看所有的东西都是钉子。有时候程序员往往会陷入为了写代码而写代码的怪圈,没有意识到代码是为了解决现实问题的。当问题有更简便的解决方案时,写...

1552
来自专栏漫漫全栈路

以应用为中心的多云(Multi-Cloud)数据管理平台

最近,我有幸和Peter Smails,Datos IO的业务开发和营销副总裁交谈了一番。 Datos通过为NoSQL提供数据保护来构建业务,而随着Recove...

2717

扫码关注云+社区

领取腾讯云代金券