多伦多大学:UC浏览器收集并发送用户隐私数据分析报告

0x01 问题概要

UC浏览器是中国和印度地区最为流行的web浏览器,也是全球第四大移动浏览器,仅次于chrome、Android浏览器和Safari浏览器,目前拥有超过5亿的用户群。

加拿大多伦多大学公民实验室一直在调查研究这款亚洲地区较为流行的通信工具,通过调查比较中文版UC浏览器和英文版UC浏览器,发现中文版UC浏览器会收集并发送用户的隐私数据,而英文版则不会。

个人验证信息和查询请求在传输过程中没有被加密:

1.用户数据(IMSI、IMEI、Android ID、WiFi MAC地址)未经加密被发送到阿里巴巴分析工具Umeng上; 2.用户的位置数据(经度/纬度、街道名称)未经加密被阿里巴巴地图工具AMAP发送出去; 3.用户的查询请求未经加密被发送到Shenma(中文版)、yahoo、谷歌(英文版)等搜索引擎上;

即使清理了应用程序上的缓存,用户的隐私信息还是会保留在缓存里,第三方还是可以访问用户的数据。

加拿大公民实验室的研究人员于2015年4月15将这一发现报告给了阿里巴巴和UCWeb,并说明了将会在4月29日或者之后公开这一发现。阿里巴巴于4月19日给予了回复,称公司安全工程师正在调查研究这一问题。研究人员于23日又向他们重申了要在29日之后公开问题详情,但是阿里巴巴和UC均未给予任何回复。

研究人员在19日又测试了一下10.4.1-576版本的UC浏览器(中文版,从UC官网上下载的),没有发现浏览器会向AMAP发送未经加密的数据,但仍然会向Umeng组件传输未经加密的数据,而且查询搜索数据也仍然未加密。建议使用UC浏览器中文版的用户应尽快更新到10.4.1-576及其更高的版本。

0x02 UC浏览器简介

UC浏览器是UCWeb Inc.开发的明星级移动浏览器,目前覆盖了Android、iOS、windows phone、windows mobile等主流操作系统。UC公司成立于2004年,后被阿里巴巴合并,联合开发出了一款Shenma搜索引擎。

作为全球第四大浏览器,UC浏览器每天的活跃用户达1亿人次。UC浏览器主页上会默认显示一些常用的搜索引擎、社交媒体网站、天气信息、新闻和购物信息等。拥有独创的U3内核和云端架构,支持HTML5应用,支持语音搜索。

0x03 方法和技术分析

通过分析某些中文版UC浏览器和英文版UC浏览器(均为安卓版)的构架、移动网络数据和WiFi流量、数据的保留和删除功能,研究人员发现了一些较为严重的安全问题。

下图中形象的展示了中文版UC浏览器存在的安全问题:

测试装置

为了检测UC浏览器的安全和隐私功能,我们测试了一些中文版本和英文版本的浏览器。因为我们对浏览器传输个人身份信息时是否加密十分的感兴趣,所以就监控了浏览器向内部服务器传输的数据。

我们了测试安卓模拟器和安卓手机,并用抓包工具WireShark抓取了所有发送出去的和收到的流量。随后用反编译工具APKtool反编译了从浏览器上下载的APK文件,然后分析了和用户数据传输功能相关的代码。

版本分析

被分析的UC浏览器均为安卓系统的浏览器,但是从不同的应用商店下载的:中文版的UC浏览器是2015年3月从小米应用商店下载的,英文版是2015年5月直接从官网上下载的。除了语言不同外,中文版默认的神马搜索引擎,而英文版默认的是雅虎(印度)和谷歌搜索引擎;中文版主页上显示的是百度、新浪微博、优酷等,而英文版主页上显示的是Google、Facebook、twitter等。

在安装浏览器时,应用程序会给予一个隐私保护声明。在声明中值得注意的是,浏览器会要求访问和收集用户的设备信息、日志信息、位置信息。收集信息并不可怕,但是中文版的UC浏览器收集了这些信息之后并不能安全的传输。

3.1 10.2.1-161版本的中文版UC浏览器

中文版本UC浏览器测试结果如下表:

而英文版的浏览器不会发送设备相关识别码和WiFi的MAC地址。

1.仅在移动网络下测试中文版UC浏览器

在打开浏览器的前270秒内,它会通过HTTP与以下主机进行通信:

发送到AMAP的数据很容易解密

正如上图中显示的,大部分通信都是发生在应用程序和 apilocate.amap.com之间。进一步分析这些通信会发现,在应用程序和apilocate.amap.com之间存在一个很明显的数据交换:

鉴于对二者之间传输的数据很感兴趣,于是我们使用一个免费工具pyhttpextract破译了编码数据块,然后就发现了如下的交换数据:

编码的数据是以‘<sreq>’的结构发送的,并且数据很大,所以我们怀疑里面会包含用户的数据。为了要证明里面是否包含了用户数据,我们首先要先解密这一数据块。这时就又用到了解密工具apktool。

破译之后,我们在com/aps分类相关的目录中找到了‘sreq’字符串。因为com/aps/*目录序列化了‘<sreq>’,所以我们下一步就是要看看哪一个.smali文件(安卓系统使用的代码格式)被译成了.java文件名:

我们在Aes.java文件中搜寻被加密的应用程序组件,而这一文件使用的是对称AES/CBC加密方式(使用的是硬编码密钥‘autonavi_amaploc’)。加密过程如下图:

使用硬编码对称加密方式意味着所有知道密钥的人都可以解密中文版UC浏览器的流量,而且密钥的持有者还可以解密所有之前的数据。

我们使用的是标准的AES解密工具来解密‘<sreq>’数据的,为的就是演示要想解密之前的数据也是可以的。格式化数据为可读模式:

发送到apilocate.amap.com数据中含有很多设备及其相关的标识符。设备标识符:IMSI、IMEI、和中文版UC浏览器相关的用户数据;移动网络塔信息:移动国家代码(MCC)、移动网络代码(MNC)、位置区域代码(LAC),移动网络塔ID和信号强度。通过这些信息完全可以识别出设备、设备使用者和设备的位置。

发送位置信息之后,应用程序会收到一个未加密的回复,包括用户的经度/纬度(如下图中的‘cenx’ 和 ‘ceny’字段)和所在街道的名称。如下图:

比如我们通过上述信息成功的定位到了我们实验室所在的位置:

通过上述的分析我们越来越相信AMAP就是中文版UC浏览器的一个组件。

向Umeng传输未加密的数据

正如图5中显示的那样,中文版UC浏览器会定期的和utop.umengcloud.com、upoll.umengcloud.com 联系。发送的信息如下:

上述信息中包含了一些个人标识符,如IMEI、IMSI、设备Android ID(’c6’)和构架序列号(’c5’)。

2.在WiFi网络下测试UC浏览器

向AMAP发送的数据很容易被解密

连接上WiFi,开启应用程序,使其空闲270秒,浏览器同样会发送易解密的数据。然而,应用程序除了会发送附近WiFi访问节点的数据外,还会发送它们的MAC地址。

向Umeng发送未加密的数据

当连接到WiFi网络时,用户的个人数据就被以未加密的方式发送给了Umeng。当然除了IMEI、IMSI外,还会发送设备的WiFi MAC地址。

将上图中的代码转换成可读模式:

测试中文版UC浏览器的搜索功能

中文版的UC浏览器使用的是神马搜索引擎,输入的搜索查询词是不会被加密的:

删除浏览器的数据

UC浏览器是有删除隐私信息选项的,用户可以删除浏览器上的cookies和历史记录。但是,即便用户删除了自己的隐私数据,应用程序的DNS查找记录仍然存在,也就是说没有从真正的意义上删除数据。

3.2英文版UC浏览器(10.4.1.565)

被测试的浏览器版本为10.4.1.565,是直接从官网上下载的。和中文版的浏览器测试过程一样,先是空闲测试(移动网络和WiFi网络)、搜索、数据存储。空闲测试阶段没有发现任何问题,设备不会传输任何的信息。

搜索

英文版的搜索方式有两种:一种是点击右上方的“搜索”按钮;第二种是在左上方的地址栏中直接输入查询语句。

通过研究发现英文版的UC浏览器也会向yahoo发送未加密的数据:

另外,在查询栏的左边会出现绿色标识符

这一绿色的标识符可能就会使用户放心,因为出现绿色的标识符就说明用户的查询被加密了,其实不然。

接下来我们在地址栏中输入了一个查询语句,而这一搜索未经加密就被发送到了Google:

英文版的UC浏览器并不会存储DNS查询数据,也就说如果用户自己删除了上网记录,那浏览器上就不会再有任何的用户信息了。

0x04 总结

经过我们的研究发现,这两个版本的浏览器均会将用户信息泄露给第三方,但是就安全和隐私方面考虑,中文版的UC浏览器更为严重。虽然在中国和印度政府有权利获得通信公司、移动网络厂商、网吧的流量数据,但是UC浏览器的这一问题很可能会被一些人非法利用。

5月22日消息,据国外媒体报道阿里巴巴旗下UC浏览器存在信息传输加密安全风险。阿里巴巴对此回应称对安全问题高度重视,UC浏览器已在第一时间提高信息安全加密级别,不再存在报道中提及的风险。目前应用商店上的UC浏览器最新版本,相关信息已经改为安全级别更高的HTTPS加密方式传输。

事实上,该媒体援引加拿大公民实验室报告中提到的信息传输加密风险,在国内并非个案,目前国内大部分互联网公司均在信息传输加密上存在问题。

* 参考来源citizenlab,cindy编辑,转载请注明来自FreeBuf黑客与极客(FreeBuf.COM)

本文分享自微信公众号 - FreeBuf(freebuf)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2015-05-24

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

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏企鹅号快讯

基于 Python 的僵尸网络将 Linux 机器变成挖矿机器人

F5 Networks 的安全研究人员 发现 了一个新的 Linux 加密僵尸网络,并将其命名为”PyCryptoMiner”,它主要的攻击目标是具有公开 SS...

245100
来自专栏V站

当你360搜索引擎收录为0与1,被K时应该这么做?

在被360搜索引擎满收录的那些日子,突然有一天,许多站点都被K光(不包含新站),当然月宅酱的博客也不例外,被K了只有www一个首页,也没有拒绝360爬虫,更没有...

51820
来自专栏SAP最佳业务实践

SAP最佳业务实践:ETO–项目装配(240)-3创建客户订单

image.png VA01创建客户订单 在第一个步骤中创建客户订单。参考在业务情景 232: ETO - 报价处理中创建的报价创建订单。 角色销售助理 后勤®...

49170
来自专栏企鹅号快讯

著名安全厂商 FOX-IT 证实遭中间人攻击

位于荷兰的著名安全厂商Fox-IT(Fox-IT 公司向全球的大型企业提供IT安全管理和威胁情报服务)今天披露称,一小部分 Fox-IT 用户遭受不知名黑客的中...

40170
来自专栏FreeBuf

运维配置缺陷导致大量MongoDB数据信息遭泄露

近日,黑客组织GhostShell泄露了大量的MongoDB数据库用户资料。 数据遭到大量泄露 据统计该组织目前泄露的数据已达3600万条之多。MongoDB作...

242100
来自专栏做全栈攻城狮

安卓入门实战项目-身份证信息查看器,精确解读身份证信息

因为知识的连贯性,推荐按照瞬息进行学习。目录链接:http://www.chengxiaoxiao.com/bozhu/1336.html

15030
来自专栏云基础安全

3分钟了解网站入侵及防护问题

技术参考:<OWASP TOP 10 2017> 开源Web应用安全项目十项最严重的Web程序安全问题:

79890
来自专栏FreeBuf

Android系统中也存在Web注入吗?

有一类专门针对浏览器的攻击,被称为浏览器中间人(MITB)攻击。想要实现这类攻击,方式也非常的多,像恶意 DDL 注入,扩展欺骗或将一些特制的恶意代码注入到...

22550
来自专栏Seebug漏洞平台

酷视(NEO Coolcam)网络摄像头登录绕过及多个基于堆栈溢出的远程代码执行漏洞及数据分析报告

深圳市丽欧电子有限公司(NEO Coolcam,以下简称酷视)[1],是一家集网络数码产品研发、生产、营销于一体的高新技术企业,是国内最早进入网络摄像头领域的专...

22020
来自专栏FreeBuf

Uber平台现身份认证漏洞,利用漏洞可重置任意账户密码

意大利安全专家Vincenzo C. Aka发现Uber平台存在身份认证漏洞,任意账户都可以利用该漏洞重置密码,这一发现于昨日正式公布。实际上,引发此次“身份认...

21780

扫码关注云+社区

领取腾讯云代金券