(原标题:暗开敏感权限 小米华为“代用户审核”?)
在OPPO(左图)、小米(右图)手机应用商店首次下载打开优酷时开启的权限。
在vivo(上图)、华为(下图)手机应用商店首次下载打开优酷时开启的权限。
新京报记者此前调查测试各类APP发现,安卓系统下,多个常用APP存在未经明示提醒就收集敏感信息的行为。近日,记者进一步调查发现,同一款APP在不同品牌手机的安卓系统下,读取敏感信息的行为也不同。
1月24日至2月8日,新京报记者在华为、小米、OPPO、vivo四款市面上常见手机的内置应用商店下载APP时发现,天猫、携程、58同城、优酷、今日头条、爱奇艺、赶集网七款APP在华为和小米应用商店下载时未经明示提醒就默认开启了定位或其他敏感权限,而在OPPO和vivo应用商店下载时则基本都对其权限进行了明示提醒。
“正常的APP下载时都会有授予权限的操作,个别APP没有只能说明和手机内置的应用市场有关系。”从事安卓系统开发的李宇(化名)告诉记者,“事实上,当APP处于手机厂商的白名单列表中时,应用商店就有可能替用户省略掉提示权限的操作。”
北京邮电大学移动互联网与大数据安全联合实验室主任马兆丰博士曾表示,一些APP产品厂商和软件商店有合作,以白名单模式放行本该提示用户知情的选择权,从而没有进行“明示同意”的提示,这并不符合个人信息安全使用规范和要求。
华为小米商店多款APP隐私提示不全
根据《网络安全法》第四十一条规定,网络运营者收集、使用个人信息,应当遵循合法、正当、必要的原则,公开收集、使用规则,明示收集、使用信息的目的、方式和范围,并经被收集者同意。
中国国家标准化管理委员会发布的《信息安全技术?个人信息安全规范》(下称《规范》)对个人敏感信息做出了定义,也明确了收集信息的原则。其中重要的一条是“选择同意原则”,即APP方需要向个人信息主体明示信息处理目的、方式、范围等,征求其授权同意。规范自2018年5月1日正式开始实施。
《规范》指出,收集个人敏感信息时,应取得个人信息主体的明示同意。明示同意则指个人信息主体通过书面声明或主动做出肯定性动作,对其个人信息进行特定处理做出明确授权的行为。
“APP使用过程中,用户在看到权限要求弹窗时点击了同意,这就是肯定性动作。”李宇称,“具体来说,肯定性动作包括用户主动做出声明(电子或纸质形式)、主动勾选、主动点击同意、注册、发送、拨打等。”
但目前市面上并非所有APP都按规定对所要求的权限进行了明示提醒。此前江苏省消保委就曾以手机应用侵犯消费者个人信息,两次约谈无整改为由,向百度公司提起民事诉讼。手机百度高级经理田彪此前回应称,有的系统会授予它认为安全的APP一些权限,安卓系统的权限授予非常复杂,权限授予完全取决于手机系统本身,并非由APP自身判断和决定的。
为验证权限授予究竟是否会因手机系统的差异产生变化,1月24日至2月8日,新京报记者分别在华为、小米、OPPO、vivo四部安卓系统手机上安装了相同的十一款APP。这十一款APP分别是天猫、携程旅行、百度地图、腾讯视频、百度、京东、58同城、今日头条、优酷、爱奇艺和赶集网。
测试结果显示,同一款APP,在不同品牌手机应用市场下载时,所进行的明示提醒也不相同。其中,部分APP在vivo、OPPO手机安装后对敏感权限进行了明示提醒,在华为、小米手机安装后则并未对敏感权限索取进行明示提醒。
其中,百度、百度地图、京东、腾讯视频四款APP在上述4个品牌手机下载并首次打开时,都会对用户进行明示提醒,而其余七款APP所明示提醒的权限则根据手机品牌的不同产生了不同的结果。
以天猫为例,当记者通过华为、小米、OPPO手机的内置应用商店下载该APP时发现,首次安装使用时其并未出现任何明示提醒,而通过后台的权限设置则发现,天猫在小米手机安装后,默认开启了定位、相机、录音权限;在华为手机安装后,默认开启了定位、相机、读取通话记录权限;OPPO手机安装后,未开启任何权限;vivo手机安装后,明示提醒并开启了定位权限。
记者测试发现,天猫、携程、58同城、优酷、爱奇艺、今日头条、赶集网七款APP在华为和小米手机内置应用商店下载时均在没有明示提醒的条件下默认开启了定位等敏感权限,而在vivo和OPPO手机内置应用商店下载时,除优酷在OPPO安装时默认开启了摄像头和录音外,其余APP均做到了明示提醒。
从上述实例来看,11款APP中,百度、京东等4款APP在小米和华为做到了所有敏感权限的明示提醒,10款APP在OPPO上做到了所有敏感权限的明示提醒,11款APP都在vivo上做到了所有敏感权限的明示提醒。
手机应用商店“代”用户“审核”APP权限
“造成不同手机品牌上APP权限索取情况不一样的原因,是每家手机品牌应用市场上线APP的审核策略不同导致的。”李宇称,“作为APP方,肯定要老老实实的申请权限,再根据应用市场商家审核的要求有所改变。”
2月6日,新京报记者以开发者身份联系华为应用市场负责审核的相关人士,想要了解自身APP能否以默认开启通讯录权限的方式上架华为应用市场。得到的答复是,“权限是否选择默认开启,开发者可以在自己的SDK(软件开发工具包)中‘自行实现’。”但该人士同时表示,若应用索取权限过高,可能存在读取用户通话记录、读取用户通讯录、读取用户短信记录、获取用户手机号码、通知栏推送广告等情况,就不符合华为应用市场审核标准。
“应用市场一般执行最低权限策略,除非权限是刚需,比如读取通讯录是为了实现加通讯录好友。”李宇解释称,“至于APP具体能够开启哪些权限,要看应用商店的审核要求。如果应用商店觉得你索取的权限出于正当目的,就可以上架,至于默认开启权限的功能,只能是与应用商店有关。”
需要注意的是,应用商店本身就具备审核功能,如《小米应用商店应用审核规范》明确规定应用未提示用户或未经用户授权情况下不得搜集、传输或者使用用户的位置信息。而《OPPO应用市场审核规则》也规定未经用户授权,不得搜集、传输或者使用用户的位置信息。
根据华为发布的《华为应用市场2017年度安全报告》,华为应用市场2017年全年接纳了64.7万次应用上架申请,其中20.2万没有通过审核,通过率为68.8%。在没有通过审核的APP中,有15.4%的未通过原因是被华为判断“存在恶意行为”。
“从应用商店下载APP本身必须要经过安全监测,对用户的隐私保护是一则利好,但手机厂商赋予了内置应用市场一个更高的权限,从而绕过了原版安卓系统的权限提示,这本身也违反了《规范》中的选择同意原则,不符合相关规定。”李宇表示。
2月5日,记者在华为手机上使用浏览器下载了天猫APP安装包后发现,在安装过程中确实对索取的权限进行了明示。但当使用应用商店下载时,明示提醒就不见了。
“通过浏览器下载时,上面就列出了所有的权限提示。你如果在应用商店里边装的话,它就把这个过程给你省略掉了。因为应用商店本身是内置在这个系统里的,它的权限是叫厂商权限,基本上和root的权限差不多高,所以它有能力做这些事情。”梆梆安全研发中心副总裁方宁解释称。
在方宁看来,原版系统和应用市场上下载到的APP所采用的都是同一个程序,但当用户通过手机内置应用商店下载APP时,应用商店占主导地位,有话语权,APP方必须要通过应用商店的审核才能上架自己的应用。“这一点苹果和其他手机厂商都不一样,由于苹果的操作系统无法像安卓一样定制,所以就不会出现厂商权限的问题。”
不同品牌手机隐私权限判断不同
新京报记者测试发现,不同手机品牌对隐私权限的判定也不相同。
例如从小米和华为内置应用商店下载爱奇艺时,虽然没有任何明示提醒,但从后台权限系统观察,可以发现小米手机关闭了爱奇艺拨打电话权限,但开启了定位和录音权限;华为则相反,关闭了定位录音权限,却恰恰对拨打电话权限“网开一面”。
腾讯视频在四款品牌手机上都明示了隐私协议,这也意味着在法理上腾讯视频可以开启隐私权限。但记者查阅后台权限系统发现,腾讯视频在华为和小米手机上没有开启任何隐私权限,但在OPPO手机上则开启了摄像头和录音权限。
对此,一家APP负责开发定制的技术人员向新京报记者表示,虽然手机都是安卓的,但并非谷歌的纯原版系统,由于不同手机厂家对用户体验以及产品设计上的理念有区别,所以每个手机厂商都会对自己的系统做出些自己的优化。如OPPO可能会对一些权限没有设定默认使用,而另一些品牌手机可能就默认通过了。另一方面,开发者按照原型和产品需求,在软件设计中也可以设定不进行弹窗提示,但在上架不同应用商店时,也会有不同的规则要求,这个规则可能也会影响APP最终权限的表现方式。
不过,在猎豹安全专家李铁军看来,厂商对安卓系统进行的“优化”,从成本角度,一般不会改太多。因为“改动越大,之后的版本升级代价也就越大。”
实际上,手机厂商和APP对用户隐私数据的博弈,早就已经开始。
2017年8月,华为和腾讯曾就用户数据使用一事发生争执。事情的起因是华为荣耀Magic手机主打的高度识别用户场景,比如在聊天过程中提及“看电影”这样的文字时,手机会自动给出当前热门的电影推荐,并进一步推荐附近的影院甚至是选座买票。
但这一技术的实现需要进行相应的数据分析,腾讯因此指责华为“获取腾讯的数据,侵犯了微信用户的隐私。”
对此,腾讯副总裁丁珂曾在接受新京报记者采访时表示,微信的价值导向是从来不会涉及用户相互聊天,华为的AI技术可以更高效,但两家公司理念确实不一样。
在北京工作的任女士使用的是华为mate?10手机,她发现,该手机的“智能生活”提醒页面可以显示她的火车票预订信息、快递物流信息,有一天甚至精准显示了她的停车信息。“我很惊讶,为什么手机可以知道我有车,还知道我车停到哪。”
对此,猎豹安全专家李铁军表示,手机厂商为实现相关功能,可以专门设置自带的官方应用,再向这些官方应用开放权限访问接口。这样,订票信息、快递信息等就可以通过相应厂商的数据查询接口,得以查询用户生活相关的服务。