5欧元接管军事基地的电话路由

5欧元接管军事基地的电话路由

DNSENUM安全基础设施军事通信域名

数据源:HN + web research · HN

一个 19 岁的德国研究者对着终端敲下 dig 命令,开始扫描一个大多数人都没听说过的域名:e164.arpa。她的初衷只是好奇,这套电话号码反向解析体系到底荒废成了什么样。几分钟后她发现,三个英国海外领地的电话路由查询全部挂在一对名字服务器上,其中一个早已失效,另一个的域名刚刚过期,挂牌价 5 欧元。

她买了下来。半年后,日志里躺着数十万条打往军事基地的查询记录。

电话号码的反向 DNS:一个没跑起来的省钱方案

ENUM(电话号码映射)是 2000 年代初的想法:把电话号码倒过来写,数字之间加点,末尾接上 .e164.arpa。+49 30 123456 会变成 6.5.4.3.2.1.0.3.9.4.e164.arpa。运营商查询这个域名,拿到一条 NAPTR 记录,就知道这个号码可以通过哪个 SIP 地址在互联网上接通。

设计动机很直接:绕过按分钟计费的公共电话网,把通话改道到便宜的 IP 网络。号码体系按国家分片管理,德国的 +49 对应 9.4.e164.arpa,由管理 .de 的 DENIC 分发,每个国家自己决定把号码段委托给谁。

这套体系从第一天起就没真正跑起来。RFC 规定 .arpa 只用于基础设施,上面只该放 NAPTR 记录,但说到底它还是 DNS,没人拦得住有人在上面挂网站。lina 自己名下就有一个德国号码区域,A 记录指向她的博客,她是 2019 年以来德国第一个注册 e164.arpa 域名的人。

5 欧元买下一个领地的电话网络

DNS 劫持这种事,lina 之前就碰到过——她过去发现并上报过 .gov 和 .edu 域的接管机会。这次的猎物不同:扫描 e164.arpa 时,她发现 0.9.2.e164.arpa、6.4.2.e164.arpa、7.4.2.e164.arpa 三个区域全部委托给同一对名字服务器:ns6.icb.co.uk 和 ns.enum.org.uk。反转回来,对应 +290 圣赫勒拿、+246 英属印度洋领地(迪戈加西亚)、+247 阿森松岛。

dig 查询输出 图:dig 查询 RIPE 权威服务器输出——三个区域的 NS 记录全部指向 ns.enum.org.uk 与 ns6.icb.co.uk。来源:lina.sh

DNS 委托的含义很直白:域名的应答由委托到的服务器说了算。ns6.icb.co.uk 所在的域名还活着,子域却早已不解析,所有查询自然落到第二个服务器;ns.enum.org.uk 这个域名本身过期了。5 欧元,lina 成了三个区域事实上的权威。

控制应答意味着什么,看看运营商拿查询问的问题就懂了:这个号码往哪路由。恶意持有者可以把答案指向自己的 SIP 服务器,接起来电,再用伪装的号码拨给真实目的地。通话双方看到的是正常来电,中间坐着一条静默的窃听通道。她把这套推演写进了文章:理论上,接到的每一个查询都能这样处理。

她立刻通过多条渠道上报英国政府,石沉大海。最可能的解释是,这些服务器是十多年前由 Internet Computer Bureau 设置的——那家机构恰好也管理这三个领地的 ccTLD(.sh、.io、.ac,其中 .io 是创业公司的标配域名)——随后 e164.arpa 逐渐死掉,设置者调走或遗忘,没人记得续一个无人记得依赖的域名。

无人认领的治理真空

马普所的研究者 Q Misell 听说后,替她向 RIPE 报告——RIPE 是 e164.arpa 的实际 DNS 运营方。RIPE 拒绝处理:委托关系由联合国层面的 ITU-T 委员会治理,RIPE 不愿去推翻一个 UN 委员会的决定,那会是官僚噩梦。

为了回答「到底有没有人用」这个问题,lina 在圣赫勒拿区域开了日志,等了一整天:零查询。于是她留下域名,在上面托管个人网站、Fediverse 实例、Matrix 服务器,把子域分给朋友。一个死掉的系统,拿来玩正好。

治理结构的问题在这里暴露得很清楚。RIPE 运营 DNS 却决定不了委托,ITU-T 委员会掌握委托权却早已不实际运作,IANA 只管 .arpa 顶级本身,当年的执行者 ICB 离场多年。每一层都假设别的层在负责,实际结果是没有人负责。一套基础设施的废弃没有退出机制,连清理掉都无人认领。

半年后:数十万条打往军事基地的查询

半年后她翻看三个区域的日志——另外两个区域在启用时也开了日志——发现数十万条 ENUM 查询记录。域名本身就是反转的电话号码,翻回来就是完整号码;每条记录还带着时间戳和发起查询的解析器 IP。

日志截图 图:半年后翻出的日志——NAPTR 查询,域名为反转后的电话号码,统一得到 NXDOMAIN 应答。来源:lina.sh(号码已随机化)

查询几乎全部集中在迪戈加西亚和阿森松岛,源 IP 大部分来自美国,圣赫勒拿依然零流量。这解释了最初一天零查询的假象。HN 讨论里有人质疑「打往军事基地」的推断跳得太快,反驳者的论据更硬:迪戈加西亚没有平民居民,查戈斯群岛原住民在 1960-70 年代被全部驱逐,上岛需要军方许可,岛上约 4000 人几乎全是军人;阿森松岛则是英美共用的军事据点。几十万通打往这些基地的电话,呼叫模式被完整记录下来。

她的服务器对所有查询统一回 NXDOMAIN,通话因此走正常电话网络,没有一通被实际窃听。发现之后她关掉 DNS 服务器、删光日志,第二次上报英国国家网络安全中心(NCSC)——这次提到军事基地,对方的态度明显不同。但 NCSC 查不出最初的设置者,正规修复卡在同一个 ITU 委员会机制上。一年后域名仍在她手里,zone 已清空,一切查询返回 NXDOMAIN。

一个值得注意的细节:数十万条查询说明 ENUM 并没有死透。HN 讨论里有电信行业的人确认,行业内仍用 ENUM 做号码移植查询和内部路由;这类流量本应留在私网里,却顺着公开互联网流向了一个无人续费的域名。也有从业者指出,美国军方的流量习惯使用公开可路由的地址空间,与一般企业依赖内网地址的路径不同。军事通信链路里挂着对这条死域的依赖,而依赖方从未察觉解析权已经易手——NXDOMAIN 和正确应答一样能让通话照常接通。

信任链断在哪一环

2026 年 3 月 20 日,伊朗向迪戈加西亚发射弹道导弹。文章发布时,作者早已停止记录,但这类事件正好说明:一个对基地呼叫模式感兴趣的对手,会乐于把这种数据握在手里几个月不声张。

结局带着点喜剧色彩。NCSC 最终接收了域名所有权——先由 lina 再掏 5 欧元续费,防止域名重新流入市场,然后直接转移。三个区域的 nameserver 依然指向同一个地方,只是换了主人。她总共花了 10 欧元,没有 bug bounty,也没被破门。

整件事的核心,是信任链的构造方式。一个为省钱设计的路由查询体系,安全边界建立在三层假设上:各国持续管理自己的号码区,ITU 委员会持续监督委托,某个机构的某个人持续续费域名。三层假设全部落空时,接住整条链的成本是 5 欧元。HN 上有人提醒:这类半实现、被遗忘的协议,不知道还有多少。

基础设施的信任不能建立在「有人记得」上。e164.arpa 的故事里,真正阻止数十万通电话被中间人截听的,是买下域名的人恰好是个会写文章上报的研究者,恰好用 NXDOMAIN 拒绝了所有查询。这套体系的下一次失守,未必有这么好的运气。

参考链接: lina 的博客:I accidentally logged hundreds of thousands of phone calls to military bases Hacker News 讨论 (49387570) Wikipedia:E.164 RFC 6116:The E.164 to URI DDDS Application (ENUM)