前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >SDK安全之道:如何识别第三方SDK留下的“暗门”

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

作者头像
BestSDK
发布2018-02-27 15:38:07
3.3K0
发布2018-02-27 15:38:07
举报
文章被收录于专栏:BestSDKBestSDK

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提供商需要坚持自己的职业操守,不要为了短期的利益而放弃了长远的市场,让我们都能做到行业自律,共同营造一个健康的行业生态环境。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2016-07-26,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 BestSDK 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档