一个据称针对Changelly的零日漏洞利用代码在潜在攻击者中流传,结果却是诱饵。根据ThreatMon的调查,该代码是一个加密货币交易劫持工具,而最可能受到伤害的恰恰是运行它的人。这个假冒的Changelly零日钱包劫持方案表明,攻击者如何用同一段JavaScript代码同时针对好奇者、投机者和粗心者。
假冒的Changelly漏洞利用是如何引诱受害者的
该活动被包装成针对加密货币兑换服务Changelly某个漏洞的有效利用程序。零日漏洞的说法是一个有效的诱饵。零日漏洞是供应商尚不知晓的漏洞,因此现成漏洞利用代码的承诺会吸引那些希望从中获利或只是想测试它的人。
这就是陷阱。根据ThreatMon的说法,虚假的漏洞声明被用来引诱用户接触该代码。该脚本并不攻击Changelly,而是针对任何执行它的人。潜在的攻击者反而成了目标。
这种做法在本质并不新鲜。安全研究人员长期以来一直看到针对寻找捷径之人的诱饵概念验证代码和虚假工具。这起案件的特别之处在于具体的载荷:一个旨在直接在浏览器中干扰加密货币交易的脚本。
恶意脚本对钱包地址做了什么
根据ThreatMon的发现,该恶意JavaScript旨在做两件事:
- 替换钱包地址。 当用户输入或复制交易的目的小地址时,该脚本可以换入由攻击者控制的地址。善意发送的资金最终进入了错误的口袋。
- 操纵显示的兑换数值。 该脚本可以更改屏幕上显示的数字,使用户看到的汇率或金额与现实不符。这有助于掩盖盗窃行为,使交易看起来正常。
加密货币交易通常是不可逆的。一旦币被发送到攻击者的地址,通常没有银行可以联系,也没有退款可以申请。这使得任何悄悄更改目的地址的工具尤其具有破坏性。
为什么浏览器层面的劫持难以被发现
这种攻击不需要入侵交易所、破解密码或窃取私钥。它在你查看和确认信息的节点上起作用:你的浏览器。如果页面本身被注入的JavaScript篡改,你所看到的内容可能并非实际发生的情况。
以下几个原因使这种情况难以察觉:
- 长地址难以阅读。 钱包地址是一串随机字符。很少有人会逐一核对每个字符,而攻击者往往正是利用这一点。
- 界面看起来仍然合法。 如果显示的兑换数值被操纵,屏幕在发送前的最后一刻看起来仍可能是一致且可信的。
- 没有明显的警告。 与登录失败或安全警报不同,地址被替换不会产生任何错误信息。
教训是:当涉及真实资金时,仅凭浏览器显示并非可靠的事实来源。
这对你意味着什么
大多数读者永远不会去寻找漏洞利用代码,但潜在的风险广泛存在。在你的浏览器会话中运行的任何脚本——无论是来自可疑的下载、粘贴的控制台代码片段、来路不明的扩展程序,还是被入侵的页面——都可能在加密货币交易期间改变你所看到的内容。
如果你处理加密货币,请默认将非官方的“漏洞利用”或“福利”代码视为敌意代码。承诺可以轻松获取他人资金的代码应该引起怀疑,而非好奇。如果你是安全研究人员或爱好者,请仅在隔离环境中分析未知代码,切勿在与真实钱包关联的机器或浏览器配置文件上进行分析。
网络卫生也很重要。不可信的网络为攻击者提供了另一种篡改你在线活动的方式,正如微软关于俄罗斯黑客在酒店Wi-Fi网络上活动的警告所示。该报告涉及的是凭据窃取和恶意软件,而非加密货币,但谨慎原则同样适用:避免在你不信任的网络上处理加密货币。
保护你的加密货币交易的检查措施
以下几个习惯可以大幅降低因地址替换脚本而损失资金的可能性:
- 在硬件钱包屏幕上核实地址。 设备显示屏与你的浏览器相互独立,因此注入的JavaScript无法更改它。将那里的地址与你 intended 的收款方进行比对。
- 切勿运行非官方的漏洞利用代码。 如果某个所谓的Changelly零日漏洞或任何其他漏洞利用出现在论坛或聊天中,不要执行它,也切勿将未知代码粘贴到浏览器控制台中。
- 警惕交易所弹窗。 通过手动输入地址或使用书签访问交易所,忽略意外出现的提示。
- 使用脚本拦截器。 限制可以运行的JavaScript可以减少注入代码的活动空间。
- 先发送一笔小额测试交易。 对于大额转账,在发送全额之前先确认资金到达了正确的地方。
- 在干净的浏览器配置文件上处理加密货币活动。 更少的扩展程序和更少的无关标签页意味着更少的干扰机会。
关键要点
假冒的Changelly零日钱包劫持活动提醒我们,最有说服力的诱饵往往针对的是那些自以为自己是攻击者的人。实际的防御很简单:不要运行你无法信任的代码,拦截不必要的脚本,并在批准交易前在硬件钱包屏幕上确认每一个钱包地址。将浏览器视为不可信的最后检查环节,并在转移加密货币时对公共或不熟悉的网络保持谨慎。




