GoBalance漏洞致Tor .onion地址被劫持
通俗解读
暗网网站使用以“.onion 为Tor网络服务保留的后缀,不在DNS中使用。 完整定义(.onion)”结尾的特殊地址,只能通过Tor网络访问。一款名为GoBalance的工具本用于在遭受攻击时保持网站在线,但其存在漏洞,黑客可借此窃取控制地址的密钥。攻击者因此将Dread论坛和一个名为Omega的市场的访客重定向到假网站,但无法进入真实服务器或获取数据。
Searchlight Cyber于10月8日披露,GoBalance存在一处漏洞。GoBalance是Tor自带的Onionbalance工具的Go语言重写版本,被打包进许多暗网站点用于在遭受拒绝服务攻击时保持在线的EndGame工具包中。该漏洞使任何人仅凭公开数据即可还原某个.onion地址背后的私钥,进而劫持该地址,但无法侵入其背后的服务器、数据库或用户数据。
该缺陷源于GoBalance对站点发布的描述符记录的签名方式,Tor依靠这些记录将访客引导至站点。Tor私钥长64字节,但GoBalance在签名函数中只传入了前32字节,丢弃了用于隐藏签名秘密值的另一半。这一疏漏使秘密值成为固定且可计算的数字,攻击者由此能从单条已发布的描述符中还原出站点的长期主密钥。由于暴露的密钥是永久性的而非临时的,一旦被还原便可无限期伪造有效记录。Searchlight表示,原版Onionbalance与Tor本身不受影响,只有以Tor原生格式存储主密钥的GoBalance站点才会暴露,而GoBalance的安装工具默认使用更安全的格式。
该问题是在由HugBunter和Paris管理的大型暗网论坛Dread的两个.onion地址于10月5日至7日相继被劫持、并被重定向至一个名为Conclave的竞争网站后浮出水面的。Paris最初将此归咎于自己,称他在一次GoBalance更新中误上传了Dread的主私钥。两天后,当Dread另行储存的备用地址也遭劫持时,HugBunter表示攻击者是利用GoBalance漏洞攻击了多个暗网服务。Searchlight也认同第二次劫持指向该漏洞,但认为第一次劫持可能是另一起独立的泄露事件。Dread已迁移至新地址,敦促用户修改密码,并表示其服务器未遭入侵。
暗网市场Omega于10月8日确认,其也因GoBalance漏洞迁移至新地址。HugBunter表示还有其他多个市场的地址遭到劫持,其中部分市场已经停运,但未透露具体名称。
截至10月9日,The Hacker News发现Tor Project或GoBalance维护者均未发布CVE编号或官方公告。一名独立研究人员发布了非官方补丁及仅使用测试密钥的概念验证漏洞利用代码。Dread表示将发布经修补的GoBalance版本。由于描述符一旦发布便无法撤回暴露状态,受影响的运营方必须创建新的.onion地址,而非仅打补丁了事。