摘要
- 攻击链不是一个主体夺得全部控制权,而是更具体 BGP 路由、传播放行、递归解析、伪权威应答和用户越过 TLS 警告依次接力。
- 管理层需要的不是一个笼统的“DNS 安全负责人”,而是每层明确的所有者、可独立执行的拒绝权,以及能够把跨层异常及时拼起来的证据系统。
解析器替用户做了一个看不见的选择
用户输入的仍是 myetherwallet.com。真正发生变化的,可能是他从未见过的一台递归解析器:它所在网络接受了错误路由,于是向冒充 Amazon Route 53 的服务器发出查询,再把假答案交给用户。
Cloudflare 的采集器记录到,2018 年 4 月 24 日约 11:05 至 12:55 UTC,Amazon 四个 /23 地址段内出现了一组更具体的 /24 通告。这些地址用于 Route 53 权威 DNS,正常归属 Amazon AS16509,观测到的起源则是 eNet AS10297,部分传播路径经过 Hurricane Electric AS6939。
这组事实不能直接证明 eNet 就是攻击者。Cloudflare 明确指出,通告也可能来自其客户。BGP 里出现的 ASN 是技术观测,不是关于主观意图和刑事归责的裁判。
攻击利用了最长前缀匹配。合法的 Amazon 聚合路由不必消失,只要部分网络接受更具体的 /24,相应流量就会被吸向新的路径。另一些上游似乎没有传播这些路由,因此世界各地并未在同一时刻得到同一结果。
Cloudflare 报告,1.1.1.1 在芝加哥、澳大利亚和亚太多座城市,以及马斯喀特、吉布提等节点受到影响,其他节点保持正常。用户自己的接入网即使没有接受恶意路由,只要使用了受影响的递归解析器,也可能拿到被污染的答案。
这揭示了经常被遗漏的依赖:公共递归 DNS 的路由暴露、缓存和验证策略,会成为客户安全状态的一部分。
攻击者得到的是窄能力,不是完整主权
冒充服务器并没有复制 Route 53。Cloudflare 观察到,它针对 myetherwallet.com 返回答案,对其他查询则出现失败。这种选择性既降低噪声,也暴露了异常:一个权威服务若只对高价值域名表现正常,并不像普通故障。
公开证据也没有显示攻击者登录 AWS 控制台、修改托管区、转移域名或破坏 MyEtherWallet 源代码。路由通告制造了“部分流量可以到达我”的技术能力,却没有产生对 Amazon 地址空间或域名的合法权利。
假 DNS 答案仍不是最终授权。Cloudflare 称钓鱼站点使用自签名证书。浏览器能识别出签发者不受信,并展示警告。攻击要转化为资产损失,还需要用户跨过这道拒绝权并与假页面交互。
MyEtherWallet 后来称约有价值 15 万美元的 Ether 被盗。这个数字应当保留为受影响服务的公开估算;现有资料没有提供逐笔独立审计,也没有完整列出受害者数量。
因此,不能把责任只推给最后一次点击。警告出现之前,恶意状态已经经历通告、传播、选路、递归查询和假应答。用户是最后一个可见环节,不是唯一的失守点。
五层证据被误读成了一个事实
BGP 回答“从哪条路径可以到达前缀”,并不证明谁拥有它。递归解析器回答“我从权威端点得到什么数据”,未必证明端点确实是预期服务器。DNS 名称正确,不等于证书可信。证书可信,也不等于页面业务诚实。页面身份正确,更不等于一笔不可逆交易符合用户真实意图。
攻击把这些窄答案拼成了一个看似完整的事实:“这里就是 MyEtherWallet。”每一层都只看见自己的局部,整体欺骗却在层与层之间形成。
这正是分层权力的危险。没有单一主体统治全部系统,但多个局部决定可以临时组成足以造成损失的有效权力。
RPKI 与 DNSSEC 各守一扇门
RFC 6811 规定如何用经验证的前缀—起源授权判断 BGP 路由。若接收网络依据边界正确的 ROA 部署 ROV 并拒绝 Invalid,来自不同起源的更具体通告就可能在抵达解析器之前被拦下。
但 RPKI 不是完整路径验证,也不强迫所有网络执行同一策略。坚定的攻击者可能伪造已授权起源,过宽的 maxLength 也会给更具体通告留下空间。它提供的是接收方本地可用的起源证据。
DNSSEC 保护另一个对象。RFC 4033 将其能力限定为 DNS 数据的来源认证与完整性;RFC 9364 把它列为当前最佳实践。即使 BGP 把验证型解析器带到假服务器,假服务器也无法生成域名私钥对应的有效签名。
AWS 在 2020 年 12 月宣布 Route 53 公共托管区 DNSSEC 签名与解析器验证。这证明后来出现了平台能力,却不能倒推 2018 年 MyEtherWallet 托管区的精确配置,更不能把 DNSSEC 说成路由过滤或交易授权。
事后清单必须按机制拆开
MyEtherWallet 的回应列出了注册局锁、注册商锁、HSTS 与预加载、CAA、DNSSEC、CDN 和 DDoS 防护。它们并非同一种控制的不同名字。
域名锁防止账户层面的转移或名称服务器变更;本事件不需要改变域名。CAA 约束证书颁发机构,而自签名证书本来就不受浏览器信任。HSTS 预加载让用户无法绕过证书错误。DNSSEC 验证数据。ROA 与 ROV 限制路由起源。跨地域监控负责把这些异常汇合起来。
董事会不应只问“是否全部启用”,而应要求一张机制表:每项控制阻断哪个条件,由谁操作,失败时出现什么信号,恢复要清除哪些残留状态。
运行代码优先意味着保留本地否决
Heng Lu 的 Running-Code Primacy 在这里不是事故事实来源,而是一条分析边界。记录只有被运行中的网络、解析器和浏览器采用时才产生操作后果。AS10297 的通告在一些网络有效,在另一些网络无效;假答案在一些解析器流通,在验证或未受影响的路径上则无法成立。
分布式决策不会自动给出真相,但它保留了多个说“不”的位置。上游可以过滤,网络可以拒绝 Invalid,解析器可以验证 DNSSEC,浏览器可以强制 HSTS,钱包可以在独立设备上显示真实目标。
技术能力也不等于合法权力。吸引流量没有转移地址权利,回答域名没有取得域名,诱导一次交互也没有把欺骗变成正当授权。
结论:不要让窄证明自动升级
现有记录不能确定攻击者身份、所有受影响解析器、每个缓存期限或完整损失。它也不支持“Amazon 或 MyEtherWallet 被全面攻破”的说法。
它足以证明,一段不到两小时的路由异常可以借助共享解析服务,把临时的可达性变成假身份,再尝试把假身份变成永久资产转移。
真正稳健的架构要求每层证明保持狭窄:路由可达性不能自动认证名称,名称不能自动认证证书,证书不能自动认证交易意图。后一层必须有能力拒绝前一层带来的谎言。
来源
会员简报
档案背景详情
使用相应会员等级登录,即可解锁完整简报与来源注释。
仅限 Strategic Circle
Strategic Circle
所有读者均可浏览。加入并登录后可解锁档案简报。
加入 Strategic Circle仅限 Leadership Alliance
Leadership Alliance
符合条件的 IP 资产所有者和管理层可登录查看 Leadership Alliance 简报。
加入 Leadership Alliance
