Pages

Sunday, 1 February 2015

如何保护隐私-移动设备的隐私问题

劲爆新闻之一是《 温州一公安分局采购木马病毒监控手机通话 @ 新浪》。俺只能感叹:朝廷及其走狗越来越丧心病狂了。再次应了那句话——俺向来是不惮以最坏的恶意,来揣测咱们的党国。
  本来这个系列的下一篇要开始谈“网络服务的隐私问题”。但是有很多读者更关注手机的隐私问题,再加上这2天温州公安局的这个丑闻。于是俺改为——先谈移动设备的隐私,然后再谈网络服务的隐私。
  和移动设备有关的隐私问题非常多,牵涉面很杂。俺打算分2篇来介绍。首先介绍“有啥危害”,然后介绍“如何防范”。


★哪些东西算“移动设备”?


  按照俺一贯的风格,先界定清楚相关术语和范畴。
  本文所说的“移动设备”,至少包括:手机(智能和非智能)、平板、可穿戴设备(比如:智能手表、智能腕带、智能眼镜)。
  至于笔记本电脑或上网本电脑,不在此列。上网本虽然也很轻便,且容易移动,但是笔记本跟“手机/平板之类”,还是有本质的差异——进而导致了隐私防范方面的差异。


★硬件的隐私问题


  先从最底层的硬件说起。

◇麦克风


  名词解释
  这个俺就不用解释了吧?

  隐私风险——基于麦克风窃听
  麦克风可以收集到移动设备周围的声音,并且移动设备上的软件可以读取麦克风的数据。如果你的移动设备中了木马。木马当然可以用麦克风窃听设备周围的声音。
  虽然笔记本电脑上也有麦克风,但是笔记本电脑不会随身携带,而手机通常是随身携带。所以,同样中了木马的情况下,手机的窃听风险远高于 PC。

  隐私风险——跨系统盗取密码
  有些手机为了提升安全性,采用了“双系统”的设计。其中一个系统专门用来进行敏感操作,另一个系统进行日常操作。从表面上看,这有点类似俺多次提到的 “虚拟机隔离”。但是手机的特点决定了它无法做到像虚拟机那么彻底的隔离——比如这两个系统共享了摄像头、麦克风。如果A系统中了木马,木马可以利用摄像 头、麦克风、陀螺仪获取信息,从而判断出你在B系统中输入的密码。
  说得更具体一点:如果是基于“物理键盘”输入密码,可以利用麦克风截获按键音。如果是基于触摸屏输入密码,可以根据摄像头或者陀螺仪,记录手机的微小位移,从而判断用户按了哪个数字/字母。(在信息安全领域,这种攻击手法称为“边信道攻击”)
  引申阅读:
科学家警告称:智能手机的摄像头和麦克风有暴露PIN码风险 @ 网易数码
  既然可以做到跨系统盗取密码,那么跨系统偷窥你的其它按键(比如输入了啥短信内容),当然也可以做到。

◇摄像头


  名词解释
  这个俺就不用解释了吧?

  隐私风险——基于摄像头监控
  既然手机中的软件可以操作摄像头进行“拍照”和“录像”。那么手机中的木马当然也可以干同样的事情。
  很多人习惯把手机放在卧室里,万一放置的时候摄像头的角度比较好,万一你又中了木马。说不定你的裸照就流传出去了 :)

  隐私风险——手机拍照,EXIF泄露的隐私
  如今的智能手机和平板,基本上都内置摄像头了。很多手机用户经常会用手机拍照,然后分享到网上。
  因为手机拍照后存储的照片文件,通常包含有很详细的 EXIF 信息,再次导致隐私泄露。所谓的 EXIF,通俗地说就是照片文件的元数据。有的手机拍的照片,照片文件中的 EXIF 非常详细,包含了手机的型号、拍摄时间、GPS 信息、等信息。
  (顺便说一下:数码相机拍照后存储的照片文件,同样有 EXIF 信息)
  引申阅读:
美国国安局利用手机应用数据挖掘情报 @ 华尔街日报
(WSJ 的这篇报道提到了 NSA 对手机照片中 EXIF 的数据挖掘)

  隐私风险——跨系统盗取密码
  此风险在前面介绍麦克风的时候,已经提及。此处不再罗嗦。

  隐私风险——第一人称摄像会暴露摄像者的身份
  类似 Google Glass 这类“头戴式设备”可以拍下我们肉眼所见的一切,并保存为视频文件(拍摄者不在视频之内)。
  那么,别人有没有可能根据这段视频,判断出谁是拍摄者捏?
  现在已经有一项技术,仅仅根据拍摄者头部的轻微晃动,来提取出某个独一无二的指纹。具体参见如下引申阅读。
第一人称摄像头可能暴露你的身份 @ 网易科技

◇陀螺仪


  名词解释
  在移动设备中,“三轴陀螺仪”已经很普遍了。这玩意儿可以实时获取设备的运动状态(比如:运动方向、加速度)。并且这些运动状态的信息,是可以被设备中的软件读取的。

  隐私风险——基于陀螺仪的窃听
  可能很多人觉得陀螺仪不会有啥隐私问题。其实你错了。以目前的技术水平,陀螺仪可以实现【窃听】。
  这可不是俺耸人听闻,请看大名鼎鼎的《Wired》的报道(链接在“这里”)。看不懂洋文的同学,请看这里的中文节译。此技术是半年前(2014)新鲜出炉的,目前还不成熟。但今后就不好说了。

  隐私风险——泄漏你的生活规律
  除了前面提到的窃听问题,还有其它一些隐私风险。
  由于手机通常都是随身携带的。如果某个软件长时间收集你手机中的陀螺仪数据,就可以大致了解你的日常生活规律——
比如你是驾车上下班还是坐公交车/地铁(私家车/公交车/地铁,其加速度是不同的)
比如你周末是宅在家里还是出门逛街。
比如你是否有跑步的习惯。
......

  隐私风险——跨系统盗取密码
  此风险在前面介绍麦克风的时候,已经提及。此处不再罗嗦。

◇GPS


  名词解释
  GPS 是“全球定位系统”的缩写。这玩意儿如今也比较普及了,大伙儿应该都听说过。

  隐私风险——泄露你的地理位置
  GPS 的主要问题在于泄露了你的地理位置。在这个方面,GPS 暴露的信息远远高于陀螺仪。因为陀螺仪没法准确定位到经纬度,而 GPS 可以。
  因此,如果某个流氓软件(或木马)收集了你的 GPS 信息,就可以非常清楚你的行踪。

  隐私风险——泄漏你的生活规律
  此风险在前面介绍陀螺仪的时候,已经提及。此处不再罗嗦。

◇其它硬件问题


  还有其它一些硬件问题,放到后面的章节介绍。比如 wifi 网卡的问题,在“wifi无线网络”中介绍。


★移动网络(2G、3G、4G)的隐私问题


  为了打字省力,在本章节中,凡是提及“手机”一词,均包含“带有移动电话功能的平板”。
  不具有移动电话功能的“平板/可穿戴设备”,不在本章节的讨论之列。

◇手机的唯一标识(IMEI、IMSI、ICCID、MSISDN)


  名词解释
  大伙儿看到这几个英文缩写容易昏菜,大致解释一下:
IMEI(International Mobile Equipment Identity)
俗称“手机串号”,用来唯一标识某一部手机。共有15位数字。相关维基词条在“这里”。
IMSI(International Mobile Subscriber Identity)
在移动电话网中唯一标识某个用户。共有15位数字。咱们日常用的手机号,没法解决国际漫游问题。IMSI 可以用来解决国际漫游。相关维基词条在“这里”。
ICCID(ICC IDentity)
唯一标识某个 SIM 卡。相关维基词条在“这里”。
MSISDN(Mobile Subscriber ISDN)
这个就是咱们平常所说的手机号(对于大陆而言,就是“86”加上“11位数字”)。相关维基词条在“这里

  隐私风险——身份定位
  理论上讲,智能手机软件可以通过各种 API 获取到上述这些标识符。举例:参见 Android 的这个 API
  在本系列的第5篇《扫盲“浏览器指纹”》中,俺已经解释了“信息量”的概念。如果你还记得的话,你会发现上述这几个标识符,任何一个的信息量都足够大,大到足以定位某个具体的人。

  隐私举例
  假如某个手机软件收集了你的 IMEI 和 手机号码。后来你换了一个手机号,但是手机没换,那么该软件再次收集这两个信息之后,就可以判断出:(有很大可能)这两个手机号码其实是同一个人。

◇基站


  名词解释
  凡是能工作的移动电话,不外乎都要跟“移动基站”打交道。所谓的基站,是移动运营商架设的通讯设施。你的手机需要先跟基站建立无线连接,才能进入到运营商的无线移动网络中。
  和基站相关的隐私问题,主要包括如下2方面:
1. 手机上的基站信息
手机跟基站建立通讯连接之后,手机上会存储当前基站的信息。手机软件可以读取这些信息。如果某个手机同时连接的基站达到三个,就可以用几何定位。
通过基站进行定位,精度通常不如 GPS 那么高。但也已经能够获得某些隐私信息。
2. 基站上的手机信息
手机跟基站建立通讯连接之后,基站自然就获得了手机的信息。通过这个信息,运营商就可以知道你这部手机处于哪个位置。

  隐私风险——泄露你的地理位置
  此风险在前面介绍 GPS 的时候,已经提及。此处不再罗嗦。

  隐私风险——泄漏你的生活规律
  此风险在前面介绍 GPS 的时候,已经提及。此处不再罗嗦。

◇伪基站


  名词解释
  某些图谋不轨的人可以架设一个冒牌的基站,然后用来群发垃圾短信。这种就称为“伪基站”。维基词条参见“这里”。

  隐私风险——泄漏手机标识
  如果你的手机跟“伪基站”建立连接,那么“伪基站”就可以获取你手机的手机号(MSISDN)以及手机串号(IMEI)。

◇政府对运营商的监控


  名词解释
  这个不用多解释,大伙儿只需看看“棱镜门丑闻”。在这方面,咱们的朝廷其实比山姆大叔更糟糕——具体参见俺在《中美政府信息监控的差异——“棱镜门”丑闻随想》一文中的点评。

  隐私风险——政府对移动运营商的监控
  4年前,俺写了《如何隐藏你的踪迹,避免跨省追捕》系列的其中一篇《通讯工具的防范》。其中就已经提到政府对移动运营商的监控。在天朝,所有运营商(移动、电信、联通)的移动数据(语音通话、短信、彩信)都在朝廷的监控之下。

  案例——“茉莉花事件”时期对移动网络的监控
  2011年发生的“茉莉花事件”,大伙儿应该还记得吧?当时朝廷如临大敌。因此,也就对移动网络进行严密控制。那个时期,如果你在【群发】的短信中包含”茉莉花”3个字,估计当天就会有党国的走狗去敲你家门。

  案例——美国的棱镜门丑闻
  棱镜门丑闻,大伙儿应该都很熟悉了。从斯诺登曝光的材料看,美国的 NSA 可以监控其它国家(比如:巴哈马、菲律宾、墨西哥)的移动网络。这些国家的运营商并不在美国政府的管辖范围之下,NSA 是如何做到的捏?据说是 NSA 在这些运营商的网络中设置了后门。

◇移动通讯协议的破解


  名词解释
  通俗地说,“移动通讯协议”就是移动网络中用来传输数据(语音、文本)的协议。你的语音通话、短信、彩信、移动上网,底层都是基于“移动通讯协议”来传输的。
  一旦攻击者能够破解某种移动通讯协议,就意味着攻击者可以拿到你的通讯内容(比如:语音通话、短信、移动上网数据)

  隐私风险——对 2G 加密协议的破解
  虽然移动通讯协议都是经过很多专家(当然也包括砖家)精心打造的,但是依然会有安全漏洞。尤其是 GSM 协议,诞生已经超过20年。当时设计的时候,并未考虑到如今这么强的运算能力(暴力破解)。
  引申阅读:
黑客宣布GSM手机加密算法已被破解并公开 @ 网易科技
安全研究人员谈破解与监听GSM手机 @ CNET
Open-Source Effort to Hack GSM @ IEEE

  隐私风险——对 3G 加密协议的破解
  那么,比 GSM 晚很多年诞生的 3G 协议是否很严密了呢?好像也未必。
  引申阅读:
工程师2小时破解3G网络128位通讯加密方法 @ ZDNet
A Practical-Time Attack on the A5/3 Cryptosystem Used in Third Generation GSM Telephony @ IACR


★无线网络(Wi-Fi)的隐私问题


  聊完了移动网络,再来聊聊 wifi 网络。

◇无线网卡的 MAC 地址


  名词解释
  所谓的“MAC 地址”,你可以通俗地理解为网卡的硬件唯一标识。更详细的介绍可以参见维基词条(在“这里”)

  隐私风险——泄漏你的行踪
  当你的手机了开启 wifi 功能,手机会时不时地扫描周围的 wifi 信号,看看是否有可用的 wifi 网络连接。在扫描信号的过程中,手机会发出一些 wifi 信号。这些信号中包含了你的手机 wifi 网卡的 MAC 地址。因此,有心人就可以利用某些专门的设备,收集这些手机的网卡的 MAC 地址。由于 MAC 地址具有非常好的唯一性,因此也就具有很高的信息量,足以定位到唯一的个人。
  下面这篇引申阅读的文章,就提到了纽约的商家是如何利用这点,摸清顾客的行踪及偏好(很详细哦)。
  引申阅读:
小心,你的手机泄露了你的秘密 @ 华尔街日报

◇公共场所的热点


  名词解释
  顾名思义,就不解释了。

  隐私风险——你的网络流量可能被监控(被嗅探)或篡改
  很多同学喜欢使用公共场所的 wifi 热点。这里面有潜在的隐私风险。
  首先,你并不知道架设这个热点的人是不是一个攻击者。比如你在星巴克里面测试到的 wifi 热点,既可能是星巴克提供的,也可能是某个攻击者提供的(然后伪装成星巴克的热点)。
  其次,至于那种来历不明的热点,就更可疑啦。
  万一你使用的热点是某个攻击者架设的,那么这个攻击者就可以嗅探到你(基于该热点的)所有的上网流量。万一你访问的网站是走 HTTP 协议而不是 HTTPS 协议,那么你就形同裸奔了(HTTP 是明文的,HTTPS 才是加密的)。

  隐私举例
  假设你在公共场所用了某个来历不明的热点上网,并且访问了某个国内邮箱(大部分国内邮箱,都【不是】全程 HTTPS 加密)。而这个热点是一个攻击者架设的。那么攻击者就可以拿到你邮箱中的所有内容。
  更有甚者,攻击者可以直接在邮箱的网页上挂马(因为 HTTP 是明文的,可以直接修改页面内容,植入恶意脚本)。

◇基于 Wi-Fi 热点的定位


  名词解释
  这种定位的原理,有点类似于”基站定位“。
  如果移动设备开启了 wifi,设备上的软件可以收集周边 wifi 热点的信号强度,然后上传到该软件的服务端。如果服务端已经存储了大量的热点信息,就可以通过算法比对,定位出该设备的位置。

  隐私风险——泄露你的地理位置
  此风险在前面介绍 GPS 的时候,已经提及。此处不再罗嗦。

  隐私风险——泄漏你的生活规律
  此风险在前面介绍 GPS 的时候,已经提及。此处不再罗嗦。

◇对 Wi-Fi 协议的破解


  名词解释
  wifi 因为是无线的,意味它没有明确的物理边界,这就让攻击者有机可乘。比如你在公司里面架设的 wifi,如果 wifi 信号覆盖到公司之外(这种情况很常见),那么攻击者无需进入公司,就可以进行破解。

  隐私风险——你的网络流量可能被监控(被嗅探)或篡改
  此风险与“使用未知的公共热点”类似,俺就不再浪费口水了。直接转一篇帖子,给大伙儿瞧一瞧。
  引申阅读:
黑客讲故事:攻下隔壁女生路由器后,我都做了些什么 @ 知乎日报


★固件(Firmware)的隐私问题


  名词解释
  所谓的“固件”,港台叫“韧体”,洋文叫做“Firmware”。维基词条在“这里”。你可以通俗地理解为“手机操作系统”。

  隐私风险——上述的各种风险
  既然是固件,自然可以访问到手机的各种硬件(如前所述的:摄像头、麦克风、陀螺仪、wifi网卡......)。所以,如果固件不靠谱,前面提到的【所有风险】,都会存在。
  那么,啥情况会导致“固件不靠谱”捏?大致有如下几种情况:
1. 手机厂商默认安装的固件就有问题——比如下面列举的“小米丑闻”和“酷派丑闻”。
2. 你自己刷了第三方的固件,而这个固件本身就不靠谱——比如内置了后门。

  案例——小米手机的丑闻
  去年(2013)小米手机曝光了严重的隐私丑闻。经过海外的安全公司 F-Secure 进行专门的测试,小米手机不但会偷偷收集本机的“IMEI 和手机号”,更夸张的是——会收集每一个你拨打的号码或发送短信的号码。
  引申阅读:
小米手機偷傳資料到北京? iThome找資安專家實測:有
小米手机窃取用户隐私在台湾已道歉 大陆用户被无视了? @ TechWeb
(如果你以为只有小米会这么干,那你就是“图样图森破”,请看其它几家公司的丑闻)

  案例——其它国产手机的丑闻
酷派多款手机存后门——可自动安装应用 @ 腾讯科技
酷派手机被曝存“后门” @ 人民网
中兴证实其一款在美销售手机存后门漏洞 @ 网易科技

  前面说的是国产手机。国外手机也未必是可信滴。别忘了“棱镜门”!
  国产手机和国外手机的差别在于——国产手机的后门可能会被朝廷的六扇门控制,而国外手机(主要是美国手机)的后门可能会被 NSA(美国国安局)控制。由于 NSA 对咱们天朝的屁民【没有】司法管辖权,而天朝的六扇门分分钟就可以给你扣上“煽动颠覆”的罪名。所以,就算双方都有后门,国外手机还是好过国产手机。


★应用软件的隐私问题


  移动设备上的应用软件,按照其运作机制可以分为两类:
1. 该软件的特性和移动设备密切相关,因此只存在于移动设备上(比如说“计步器”)。
2. 该软件的特性和移动设备关系不大,既存在于移动设备,也存在于 PC 上(比如说“邮件客户端”)。

  对于第2类,在本系列前面3篇博文,俺已经花了很多口水介绍【桌面软件】的隐私问题以及防范手段——这就把第2类基本上覆盖到了。
  至于第1类,其隐私风险与固件类似。也就是说,只用某个应用软件不靠谱,前面提到的【所有风险】,都会存在。
  比如微信,装机量如此巨大,朝廷如果要求疼逊在微信中植入后门,疼逊敢拒绝吗?如果微信这个应用收集你的各种信息,然后加密发送到疼逊自己的服务器上,你能察觉到吗?


★和“物理安全”相关的隐私问题


◇失窃


  手机/平板容易被偷,这应该是众所周知的了。一旦失窃,那上面的数据(通通都跟隐私有关)就拱手让人了。
  相比而言,笔记本电脑的失窃率就远远小于“手机/平板”;至于台式机,失窃率就更低了(哪怕遭遇入室盗窃,小偷都懒得去扛台式机)。
  从这个角度也可以看出,移动设备【额外的】隐私风险。

◇不恰当的报废处理


  如今多数人至少都用过不止一个手机。淘汰下来的旧手机该咋办捏?
  有些人就当废品卖了——愚蠢大大滴!旧手机能值几个钱?但是你牺牲了自己的隐私。因为旧手机上存储了很多跟你本人密切相关的信息。即使你把手机 reset(重置为出厂设置),这些数据也【不会】彻底消失。
  引申阅读:
清空的智能手机 数据仍能恢复 @ Solidot


★其它的隐私风险


◇闭源的问题


  目前占据主要市场份额的,是 Android(约3/4)和 iOS(约1/4)。iOS 不用说,肯定是闭源的。Android 表面上看是开源的,其实捏,不完全是。
  Android 系统包括两部分:AOSP(Android Open Source Project)和 GMS(Google Mobile Services)。GMS 是【不】开源的。而且自从 Android 占据市场主导地位之后,Google 逐渐把 AOSP 中的模块转移到 GMS 中(参见 36氪 的这篇报道)。

from http://program-think.blogspot.com/2015/01/privacy-protection-10.html