一、背景
该文章翻译自德国一家安全厂商Nitrokey于4月25日发布的文章“Smartphones With Popular Qualcomm Chip Secretly Share Private Information With US Chip-Maker”(“使用高通芯片的智能手机与美国芯片制造商秘密分享私人数据”)[2]。原文提到使用高通芯片的智能手机会自动向高通的GPS定位服务发送带有设备标识信息的数据。
该文章发布后在国外引发讨论,也包括一些反驳之声,比如Martijn Braam在4月25日发布的评论文章[3]中认为,Nitrokey的描述言过其实,存在推销自己产品的嫌疑。Nitrokey在原文尾部对来自各方的讨论进行了回应。
奇安信威胁情报中心基于Nitrokey文章原文和各方讨论文章整理出此次事件的前因后果,然后使用Android设备在真实环境进行测试验证,最后对此事件的可能影响给出我们的看法。
二、Nitrokey原文的分析解读
(一)测试过程
Nitrokey使用的Android系统为一款不包含Google组件的开源版本“/e/OS”,将其安装在Sony Xperia XA2手机上,该手机使用高通骁龙630处理器。测试时在/e/OS安装配置界面显式关闭了GPS定位服务。手机没有插入SIM卡,网络数据收发只能通过WiFi网络,使用Wireshark监控WiFi网络中的数据包。
手机接入WiFi网络后,会与归属于高通的域名izatcloud.net进行网络通信,数据以HTTP明文传输。
(二)通信域名
通信域名[4]用于高通提供的辅助GPS(A-GPS)定位服务XTRA。
该网页有一个描述高通服务的链接(Qualcomm Services Description)[5],里面包括之前被称为“XTRA”服务的高通GNSS协助服务(Qualcomm GNSS Assistance Service),并给出了该服务所收集的数据信息。
收集的信息如下:
随机生成的唯一软件ID,与您或其他ID无关 |
芯片组名称和序列号 |
高通GNSS协助服务软件版本 |
移动设备国家代码和网络代码(允许识别国家和无线运营商) |
操作系统和版本 |
设备品牌和型号 |
连接到服务器的日期和时间 |
自上次启动应用程序处理器(application processor)和调制解调器(modem)以来的时间 |
设备上的高通(QTI)相关软件列表 |
(与其他网络请求一样)服务器会收到发送数据的设备IP地址 |
(三)主要观点
(1)高通的服务用户不知情
Nitrokey认为上面所述的高通数据分享情况未在他们所用的测试设备Sony或者Android或者“/e/OS”的服务内容中提及,属于用户不知情的情况。
(2)文中谈论的并非后门
(3)Nitrokey在5月2日的更新部分重申他们坚持的观点是:高通未经用户同意收集设备ID和IP地址,不能被视为合法或者道德的,并且传输的数据未经加密。
三、关于Nitrokey文章的讨论
(一)Martijn Braam
4月25日,Martijn Braam针对Nitrokey文章发布了一篇评论[3]。关于高通GPS服务收集数据这块内容,作者认为:
(二)GrapheneOS
GrapheneOS是Nitrokey推出的NitroPhone手机的操作系统供应商。GrapheneOS在4月25日针对Nitrokey原文发布了技术评论[6],指出Nitrokey文章中存在一些技术细节的错误。评论中的主要观点如下:
(1)NitroKey并没有发现一个后门。
高通的XTRA只是通过HTTPS GET请求提供GNSS数据的静态下载文件,这种辅助GPS服务也出现在包括Broadcom在内的所有其他主要GNSS(GPS、GLONASS等)的实现中。
IZat是一个类似于谷歌和苹果服务的网络定位服务,设备可以发送附近的手机信号塔、WiFi网络和蓝牙设备的列表,以及它们的信号强度,以接收回一个位置估计。它似乎还支持其他功能,如位置共享。IZat似乎是一个相当侵犯隐私的服务,但它不是默认启用的,与XTRA没有直接关系。(注:IZat服务在高通的服务列表中也有提及)。
高通公司曾经为IZat和XTRA使用izatcloud.net,这两者是完全独立的服务。他们将XTRA转移到xtracloud.net,以明确它是一个独立的东西。一些使用旧SoC或配置的设备可能仍然使用混乱的izatcloud.net网址,导致人们将这些东西混为一谈。
(3)高通骁龙芯片中没有已知的后门
高通骁龙芯片和Google的Tensor芯片中都没有已知的后门,也没有人发现任何后门的证据。人们不知道XTRA(PSDS)或SUPL并不意味着它们是后门。
4月27日,GrapheneOS发帖[7]称证实高通的XTRA守护程序会发送设备相关数据信息,并且用户未被告知。
4月30日,GrapheneOS总结道[8],“我们并不是想说NitroKey的产品有什么问题,只是他们的帖子内容需要纠正,他们谈论的问题是真实的,但他们弄错了一些重要的细节。”
同日,GrapheneOS发布更新[9],阻止高通设备的XTRA服务守护程序发送HTTPS请求时在User-Agent首部中包含设备序列号,并提到稍后会完全移除User-Agent首部内容。
(三)Computer Base
4月26日德国IT媒体网站Computer Base报道了Nitrokey发布的文章,并引用了高通的声明[10]。Computer Base认为,如果对于某些服务来说数据交换是必须的,那么用未加密的连接是不合适的。高通对此的声明是,自2016年起就开始在所有设备上使用HTTPS连接。
(四)The Register
The Register在4月27日也报道了此次事件[11],报道引用了一个移动领域业内人士的评论,称“手机底层发生的事实际并未被大众了解”,几乎所有的芯片制造商都会以某种方式从网络中获取数据,而且由于软件的复杂性,新旧软件的数量都很多,这些问题可能会一直存在。
此外,The Register也提到移动设备数据传输可能会在高风险环境中造成问题,尤其当网络IP地址在与硬件标识信息之类的数据结合起来时。
四、真实环境测试验证
通过测试可以看到正如Nitrokey文章中所说,高通提供GPS服务时会采集设备数据。测试设备机型Google Pixel XL于2016年发行,这也说明采集的数据至少在较老的设备上以未加密的明文形式进行网络传输。
五、影响面分析
可以查询到测试时访问过的相关域名xtrapath[1-3].izatcloud.net的客户端访问量级非常大,受影响的终端数运营商应该可以有比较准确的评估。
另外值得注意的是,Nitrokey测试时在用户界面关闭了对GPS定位服务的使用,而设备仍会向高通的GNSS协助服务发送请求,意味着这一功能用户并不能完全控制是否启用。即使用户不想使用GPS服务,高通的GNSS协助服务也会自动传输设备相关数据。
六、总结
就像我们在关于这次事件的讨论中所看到的,各类移动设备的底层软硬件供应商在提供服务时或多或少都会采集数据。在越来越注重隐私保护的今天,过去常用的数据采集方法可能不再适用于当前环境。尽管存在由于软硬件复杂性导致的历史遗留问题,如果供应商对用户的隐私保护需求不多加注意,谨慎对待,像此次高通因设备数据采集不规范而最终被误传“隐蔽后门”的事件很难说不会再次上演。
七、参考链接
[1].https://mp.weixin.qq.com/s/gRIP9NzvTMBfSrsCWvT4Ew
[2].https://www.nitrokey.com/news/2023/smartphones-popular-qualcomm-chip-secretly-share-private-information-us-chip-maker
[3].https://blog.brixit.nl/nitrokey-dissapoints-me/
[4].http://izatcloud.net/
[5].https://www.qualcomm.com/site/privacy/services
[6].https://lr.slipfox.xyz/r/privacy/comments/12yii9u/german_security_company_nitrokey_proves_that/jhojlr7/?context=3
[7].https://grapheneos.social/@GrapheneOS/110271570368417397
[8].https://grapheneos.social/@GrapheneOS/110282956527624208
[9].https://grapheneos.social/@GrapheneOS/110284403992561226
[10].https://www.computerbase.de/2023-04/standort-dienst-qualcomm-widerspricht-vorwuerfen-der-datensammlung/
[11].https://www.theregister.com/2023/04/27/qualcomm_covert_operating_system_claim/
点击阅读原文至ALPHA 6.0
即刻助力威胁研判