BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

移动用户隐私从何谈起:揭秘第三方SDK中夹带的私货

| 作者 艾利特 关注 0 他的粉丝 发布于 2016年6月6日. 估计阅读时间: 7 分钟 | QCon上海2018 关注大数据平台技术选型、搭建、系统迁移和优化的经验。

随着互联网的发展,个人信息安全问题在快速发展过程中经常被忽略。很多用户信息被掠夺,这也引起了人们的警觉,同时触发了保护个人信息在互联网上保密的讨论。针对前几天朋友圈里转载的“有APP被Google Play下架”一事,我们整理了友盟+高级产品研发专家马巍源关于此事的看法和问题处理的见解。

InfoQ:用户隐私的红杠在哪里?

马巍源:朋友圈里转载的APP被Google Play下架一事,可以看出大家一直在讨论的仍然是移动互联网圈的一个老话题:用户数据隐私与SDK收集用户数据的安全性。

其实用户数据隐私以及SDK收集用户数据这两方面,两大应用商店官方并没有明确公示,哪些数据属于隐私数据,SDK收集用户什么数据才合理。大多数都是我们通过多年服务于众多开发者,协助开发者让应用更快上线的经验积累而作出的判断,那么今天我想聊聊第三方SDK中都有哪些“私货”,也当是做个知识普及,让开发者和用户都清楚了解行业的红线在哪里、自身的隐私如何保护。

首先简单提下引发业内再次对隐私数据关注的起因。25日,一位开发者收到Google Play邮件,已将其开发并上线的APP进行了下架处理,原因是其使用的一家第三方广告监测SDK在未经用户允许的情况下收集用户隐私数据,获取用户设备中全部已经安装应用列表。

InfoQ:那么,目前市场上SDK采集的方式有哪些?

马巍源:目前移动互联网行业内SDK采集数据的方式有两种:

一是开发者主动获取,通过android或iOS提供的系统接口来获得,并且需要声明访问权限,比如:imei的获取,需要声明"android.permission.READ_PHONE_STATE"允许获得移动设备状态信息,然后通过调用系统接口实现。

二是开发者主动上传数据,通过SDK提供API接口,调用接口通过传递参数的形式上传用户数据,比如之前就有统计显示,SDK会提供自定义事件接口(onEvent(Contextcontext,String id,HashMap m,long value))、错误信息采集接口(reportError(Context context,String error))。开发者需要在代码中适当的位置主动调用这些接口来上传数据。通常开发者主动上传的数据主要是用户行为数据,为了统计和分析用户在APP中的操作习惯,方便开发者做精细化运营。

InfoQ:SDK会采集哪些与服务无关的数据,目的是什么?

马巍源:这里可以细分成五个方面来说:

  1. 采集用户蓝牙信息(名称、状态、扫描模式等),采集已经成功配对的蓝牙设备信息。蓝牙信息采集目的是为了做设备识别使用,而采集成功配对的蓝牙设备信息则是为了获得与移动设备通过蓝牙通信的另一移动设备信息。单独的蓝牙信息采集由于重名现象较多,不会对用户产生很大的隐私影响。而后者采集配对信息则完全侵犯了用户隐私,同时也泄露了另一移动设备的相关信息。安全危险级别:中。
  2. 采集用户传感器信息。常见的用户设备传感器有:加速度传感器、环境光传感器、距离传感器、磁力计传感器、平衡传感器、震动传感器等。SDK采集这类用户信息在我看来大多是为了充实数据库数据量,当然通过这类信息也可以判断移动设备是否为真实移动设备,但极少有使用。这类数据的采集对于用户隐私安全的侵害影响不大,安全危险级别:低。
  3. 采集用户移动设备上已经安装的应用信息、安装列表。这个一定要好好谈一下,这类用户信息的采集可以说比较无底线。通过采集这类信息可以清楚了解用户设备中各类APP应用的信息,若数据量庞大,即可推算出每款APP应用的市场占有率情况、各类竞品APP的情况。对于众多互联网行业而言,这种信息的采集无疑是触及了道德底线。

    同时也可以通过APP应用列表信息看到设备用户的喜好,侵犯用户隐私。例如一个设备用户安装了某类同性交友APP,那就意味着这种极其隐私的信息将被泄露,造成对用户的隐私侵害。安全危险级别:极高。

  4. 采集移动设备正在运行或最近运行的程序任务信息。通过采集这类信息可以清楚了解设备中其他应用的日启动次数、日启动时长等,与采集用户移动设备上安装应用信息一样都属于侵犯用户隐私、触及互联网行业底线一类。安全危险级别:高。
  5. 采集用户移动设备账户信息,如Google账户。这类数据的采集可以获取用户账户列表,将移动设备信息与用户账号关联,对设备进行唯一标识。采集如此数据带来的风险也显而易见,若用户账号被泄露、被克隆,那对于用户产生的损失可能是利益上的、更甚是生命上的。所以此类数据的采集对用户隐私侵害极大,安全危险级别:极高。

以上给大家列出了目前移动互联网行业SDK“私货”乱象的几类,如果APP不想被第三方SDK“私货”影响,目前可以解决的方法有两种:一是要求第三方修改SDK,二是换一家干净的。

InfoQ:目前,关于应用商店的隐私政策有哪些?

马巍源:根据多年服务开发者的经验积累,给大家梳理下几大应用商店对于APP发布的隐私政策。

如Google Play、 App Store,都要求凡涉及个人信息及敏感信息的,必须提供隐私权政策,以及任何形式的应用内披露声明,以及完整说明您的应用会收集、如何使用、分享和处理用户数据。但一般来说,这两大应用市场对于在用户不知情的情况下采集获取用户的“账户信息”、“传感器信息”、“蓝牙信息”、“NFC信息”、“进程扫描信息“以及”应用安装信息“等是严格禁止的。一旦发现APP中有这样的行为存在,APP下架处理是必然的结果,更有甚之会封停开发者账号。所以开发者要充分重视对用户的告知义务,包括将第三方SDK的数据采集信息,也应列入APP的用户隐私政策条款中。这一点不用担心有什么副作用,只要合理合法地披露,无论是应用商店,还是现行国家法律都会支持的。


感谢徐川对本文的审校。

给InfoQ中文站投稿或者参与内容翻译工作,请邮件至editors@cn.infoq.com。也欢迎大家通过新浪微博(@InfoQ@丁晓昀),微信(微信号:InfoQChina)关注我们。

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我
社区评论

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT