Flashbots立下大功,白帽黑客大战骗子并挽救11.7万美元加密货币
7 月 12 日,一名心急如焚的加密货币持有者在 Reddit 发帖称,自己在 MetaMask 钱包里存放了一大笔钱(约 24 万美元),并且遭遇网络钓鱼,让一名骗子获得了访问权限,该骗子正在榨干其资金。该 Reddit 用户开始“自黑”,邀请其他网友围观自己的账户被骗子清空。
这个帖子“收获”了一些合理的批评:人们认为不应该把这么多钱放在浏览器钱包里(通常比离线的硬件钱包风险更大),而且“把资金使用权交给一个所谓非常有帮助的技术支持助理”的想法也让人无语。
但在这些回复中,有一些用户提出一种解决方案——一种可能减少损失的方法。
结果证明,这种方法最终可以挽救大约一半的资金(约 11.7 万美元),并使骗子无法触及它们。事情是这样发生的:
寻求帮助
这位在 Reddit 上名为“007happyguy”的加密货币持有者,被引导填写白帽热线(Whitehat hotline)表格,并发布其详细信息。
表格的另一端是一些白帽黑客,他们表示自己很乐意帮助陷入困境的人。这是一项临时服务,如果有空的话,开发人员可以选择响应请求。
在这个案例中,Alex Manuskin 向 The Block 表示,他回应了这个请求。Alex Manuskin 曾是 ZenGo 的区块链研究员,现在从事自由职业的区块链开发工作。当他读到这条信息时,已经是晚上了,他意识到事情很紧急,因为钱包还在被掏空的过程中,而且金额很大。
Manuskin 做的第一件事是核实该 Reddit 用户拥有的这个钱包,并且确认其没有试图获取其他人的资金。
此时,他必须通过索要私钥来访问钱包。这很讽刺,因为这是任何安全专家都会告诉你不要做的事情。但在这种情况下,这更像是最后的手段。
然后他确保骗子不能再从该钱包转移走资金。为了在以太坊进行交易,用户需要一些 ETH 来支付交易费用。因此,(通过设置一个销毁器)他确保任何发送至该钱包的 ETH 都会自动被移除(即销毁)。
使用 Flashbots 拯救资金
随着更多资金被取走的威胁减少,下一个目标是拯救剩余资金。
为了做到这一点,Manuskin 使用了 Flashbots,这是一种支持开发人员和矿工之间通信的服务。简而言之,开发人员可以使用 Flashbots 向矿工发送一个交易“包(parcel)”,直接包含在一个区块中,而不是向网络广播交易并希望其被打包。
之所以有效是有两个原因。这种情况的主要原因是,如果钱包里没有任何 ETH,任何零交易费用的交易都不会被任何矿工打包。使用 Flashbots 的情况是,进行了一项复杂的交易,将资金转移到另一个钱包,并一次性使用其他资金支付给矿工。
第二个原因是它更隐蔽。如果任何交易被广播到公共网络上,这就给了诈骗者抢先交易的机会。(虽然在这种情况下,仍然需要一些 ETH 来支付交易费用。)
Manuskin 解释说,编写定制脚本和执行交易大约需要 5 - 6 个小时。他表示,时间的长短取决于交易的复杂性(比如它们是否被锁定在复杂的协议中)以及他以前是否经历过类似的情况。
根据 Reddit 帖子,在骗子开始转移钱包资金后,Manuskin 设法从钱包剩下的 12 万美元代币中挽救了大约 11.7 万美元。
通常情况下,白帽黑客会根据所需工作的复杂程度,收取约 5% - 10% 的回收资金作为拯救资金的报酬。
Manuskin 说,这个案例很有趣,因为这是他和骗子之间的一场实战。通常资金只能被收回,因为它们将在未来的某个日期解锁,但在这个案例中它们仍有被取走的风险。
他表示,因为骗子仍在尝试将 ETH 发送到钱包以试图取走代币,所以压力会更大一点,并补充说,“这不是一个轻松的下午。”
微信扫描关注公众号,及时掌握新动向
2.本文版权归属原作所有,仅代表作者本人观点,不代表比特范的观点或立场
2.本文版权归属原作所有,仅代表作者本人观点,不代表比特范的观点或立场