安全与密码学2017arxiv.org
移动设备中 MAC 地址随机化研究及其失效场景
A Study of MAC Address Randomization in Mobile Devices and When It Fails
进阶 · 约 45 分钟读完前置知识:802.11/Wi-Fi 基础、MAC 地址与二层网络、设备指纹与隐私跟踪
导读
这篇论文研究移动设备上的 MAC 地址随机化机制,以及它在哪些情况下失效、仍可被用于跟踪或识别设备。评论提到论文分析了针对 Android 等设备的探测/指纹攻击,并指出部分攻击(如基于 RTS/CTS 的方法)可能难以只在终端侧修复,需要 Wi-Fi 芯片厂商配合。也有读者批评论文对随机化给网络管理、ARP/IPv6 和二层安全带来的副作用讨论不足。
HN 关注点:MAC 随机化是否真能保护隐私、相关攻击能否修复,以及随机化对网络运维和二层安全的副作用。
后来怎么样
论文系统梳理了 MAC 地址随机化在多类 Wi-Fi 场景下的失效方式,成为后续 MAC 随机化隐私评估与厂商修补实现缺陷时经常引用的参考工作。
HN 评论精选
这几条评论里:质疑 1 补充 2 亲历 1
质疑批评论文缺少网络运维视角,未讨论随机化对 ARP/IPv6 和二层端口安全/MAC 学习限制的破坏,也没咨询厂商。
读这篇论文给我的印象是作者没有多少网络经验。网络里大量 MAC 地址随机变化不只是潜在麻烦,它真的会让东西出故障,而作者根本没谈这一点。至少我期待他们讨论 IPv4 的 ARP,以及 IPv6 的 ICMPv6/NDP/RA/SLAAC/DHCPv6。除此之外,我真的很想看到随机化对二层安全机制的影响,比如限制端口上的 MAC 学习。网络管理员如果担心安全,一个聪明做法就是限制某个端口/VLAN 能学习多少 MAC;所以在设备上随机化 MAC 会导致一些设备偶尔掉线。作者没谈这些。几乎可以说他们没意识到 MAC 地址在网络里除了侵犯隐私还有别的用途。移动厂商这么做可能有很好的理由,但作者看起来根本没联系厂商询问。
AndyMcConachie查看英文原文
I get the idea from reading this paper that the authors don't have much networking experience. Having lots of MAC addresses randomly changing in your network is more than a potential headache. It can really cause stuff to break and the authors don't even address that. At the very least, I expected a discussion of arp for IPv4 and ICMPv6/NDP/RA/SLAAC/DHCPv6 for IPv6. But beyond that, I really need to see some discussion on the effect of randomization on L2 security mechanisms like limiting MAC learning on ports. A smart thing to do if you're a network admin concerned about security is to limit the number of MACs that can be learned on a given port/vlan. So randomizing MACs on devices would cause some devices to just drop connection occasionally. The authors don't address this. It's almost like they don't even realize that MAC addresses are used for things in networks besides invading people's privacy. There might be very good reasons why manufacturers of mobiles do things the way they do them. However, it doesn't look like the author's reached out vendors at all to ask.
亲历指出与 ASIACCS 2016 相关工作关系,被动 probe request 指纹可辅助减少主动探测的 MAC 数,问题难修且存在驱动泄露真实 MAC 的 bug。
这和我们早先关于 MAC 地址随机化安全性的工作非常相似:http://papers.mathyvanhoef.com/asiaccs2016.pdf 如果你想实现我们的 probe request 指纹跟踪机制,他们提供了更多实用细节。这是一种被动跟踪技术。他们跟踪所有设备的方法需要针对每一个被跟踪的 MAC 地址主动发送数据包。不过,(不完美的)被动跟踪技术可以用来减少需要尝试的 MAC 地址数量。总体是个不错的发现!而且这个问题很可能很难修补。有时还有愚蠢的驱动 bug,能让用户在 spoof MAC 时拿到设备真实 MAC :) http://www.mathyvanhoef.com/2013/11/unmasking-spoofed-mac-address.html
gipsies查看英文原文
This is very similar to our earlier work on the security of MAC address randomization: http://papers.mathyvanhoef.com/asiaccs2016.pdf They provide some more practical details if you want to implement our probe request fingerprint tracking mechanism. This is a passive tracking technique. Their method to track all devices requires actively sending packets for every single MAC address that is being tracked. The (imperfect) passive tracking techniques can be used to reduce the number of MAC addresses you have to try though. Nice finding overall! And it will likely be hard to patch this issue.. Sometimes there are also silly driver bugs that allow you to get the real MAC address of a device when the user is using a spoofed MAC address :) http://www.mathyvanhoef.com/2013/11/unmasking-spoofed-mac-address.html
补充提出终端侧缓解工具和 per-AP MAC,但认为 RTS/CTS 方法需芯片厂商修改硬编码 MAC。
这里针对 Android 的主要检测大概可以用 rooted 设备上的 Pry-Fi 之类工具绕过,https://play.google.com/store/apps/details?id=eu.chainfire.pryfi&hl=en 你还可以为每个 AP 设置特定 MAC,理论上也能击败基于 probe 的攻击。这应该能躲过这里 4/5 的攻击。尤其是他们的 RTS/CTS 方法,听起来除非 Wi-Fi 芯片厂商移除硬编码 MAC、改让 OS 选择,否则无法击败——除非已经能通过驱动触发这种改变;也许该开始查 Wi-Fi 芯片数据手册了。
problems查看英文原文
The main Android detection here can probably be defeated using a tool like Pry-Fi on a rooted device, https://play.google.com/store/apps/details?id=eu.chainfire.pryfi&hl=en You can also set specific MACs per-AP so it'll defeat probe-based attacks too theoretically. This should get it by 4/5 attacks here. Their RTS/CTS method in particular sounds like it'll be impossible to defeat without Wifi chipset manufacturers simply removing their hardcoded MAC and switching to letting the OS pick it - unless there's a possibility of triggering that change via a driver already, might be time to start looking at datasheets on wifi chips.
补充询问未关联 iPhone 广播特定 SSID 是否可被用于跟踪,以及用户侧缓解办法。
题外问题:上次我观察未关联的 iPhone 发出的广播时,它是在专门请求某些 SSID。这些 SSID 看起来有点随机(我都加入过,但不是最近),而且我不认为其中有任何隐藏网络。这些广播可用于跟踪吗(看起来可以)?作为用户除了关 Wi-Fi 还有什么缓解办法?
Sidnicious查看英文原文
Side question: the last time I watched broadcasts coming out of my unassociated iPhone, it was specifically asking for certain SSIDs. The set seemed somewhat random (I've joined all of them, but not recently), and I don't think any of them had ever been hidden networks. Are these broadcasts viable for tracking (it seems like they would be)? Is there anything I can do as a user to mitigate the effects (other than turning off WiFi)?
相关资源
从这篇论文所有 HN 讨论帖的全部评论里整理出来的链接。
历次讨论
- 2017Hacker News 讨论帖112 分 · 16 评
- 2017Hacker News 讨论帖57 分 · 1 评
同领域还值得读
如何入侵一台已关机的电脑:在 Intel ME 中运行未签名代码
How to hack a turned-off computer, or running unsigned code in Intel ME
这篇 Black Hat 2017 白皮书讨论 Intel Management Engine(ME)的安全问题:如何在 ME 中运行未签名代码,以及攻破处于关机状态的电脑的相关…
安全与密码学2017 · 543 分 · 107 评专业 · 约 40 分钟编辑精选比特币:一种点对点的电子现金系统(2008)
Bitcoin: A Peer-to-Peer Electronic Cash System (2008)
中本聪 2008 年发表的比特币白皮书,提出了无需可信第三方的点对点电子现金系统。
安全与密码学2017 · 536 分 · 394 评入门 · 约 45 分钟编辑精选GPRS 加密算法 GEA-1 的密码分析表明存在故意弱点
Cryptanalysis of GPRS Encryption Algorithms GEA-1 suggest intentional weakness
首次公开了对 GPRS 加密算法 GEA-1 和 GEA-2 的密码分析攻击。
安全与密码学2021 · 487 分 · 107 评专业 · 约 90 分钟编辑精选Signal 消息协议的形式化安全分析
A Formal Security Analysis of the Signal Messaging Protocol
用形式化方法分析 Signal 消息协议(TextSecure)的安全性:作者在多阶段密钥交换模型下,借助自动化证明工具对协议的密钥协商与 Double Ratchet 密钥更新…
安全与密码学2016 · 353 分 · 230 评专业 · 约 120 分钟编辑精选A2:模拟恶意硬件
A2: Analog Malicious Hardware
论文研究如何在芯片设计阶段植入模拟电路形式的恶意硬件后门,使其难以被常规检测发现。
安全与密码学2016 · 315 分 · 94 评专业 · 约 75 分钟编辑精选