Binance遭63亿美元盗窃:黑客利用EIP-7702与自动化洗钱链
Where Did Binance's Stolen $6 Billion Go?
加密行业史上最大规模盗窃案,详细拆解了EIP-7702被滥用路径及DeFi借贷洗钱机制,对理解智能合约安全与链上追踪极具参考价值。
It's a standard Thursday evening, and all of a sudden, the biggest hot wallets in crypto begin to empty. 11 blockchains and about 20 minutes later, the biggest crypto theft in history was complete. By the time Binance understood what it was looking at, the money was already gone. $6.3 billion just walked out of the industry's biggest exchange. But taking it was only the first task. [music] The theft took minutes, but turning that money into something the thieves can actually spend takes far, far longer, and every step happens on public blockchains that anyone can watch.
这是一个普通的周四晚上,突然间,加密领域最大的热钱包开始清空。11条区块链和大约20分钟后,历史上最大的加密货币盗窃案完成。当币安明白自己看到的是什么时,钱已经不见了。63亿美元刚刚从行业最大的交易所溜走。但拿走它只是第一个任务。[音乐] 盗窃只需几分钟,但将这些钱变成窃贼真正能花掉的东西要花费远远更长的时间,而每一步都发生在任何人都可以观察的公共区块链上。
Tether and Circle were watching, so were the FBI and every major blockchain analytics firm. [music] And yet, as I make this video, more than $3 billion of it is still out there and still moving. So how do you actually clean billions of dollars in stolen crypto when the whole world can see your wallets? Well, in this video, we're going to look at the race to move the money before it could be frozen, the automated laundering system that was set up before the theft even started, and the company best placed to follow the money being breached itself.
Tether和Circle在监视,FBI也在监视,每个主要的区块链分析公司也在监视。[音乐] 然而,当我制作这段视频时,仍有超过30亿美元的资金在外面并且仍在移动。那么,当全世界都能看到你的钱包时,你如何实际清洗数十亿美元的被盗加密货币呢?在这段视频中,我们将看看在资金被冻结之前转移资金的竞赛、在盗窃发生之前就已经建立的自动化洗钱系统,以及最适合追踪资金的公司本身遭到入侵的情况。
My name is DC, and you're watching The Coin Bureau. Okay, first off, how does that much money actually get stolen? Well, it was stolen from what are known as hot wallets. These are wallets that stay connected to the internet so they can send and receive funds automatically. And of course, that makes them faster to use, and it makes them the obvious target. On the 29th of October, Binance's hot wallets gave up Ethereum, Bitcoin, USDT, USDC, about 233 million XRP, and a long tail of smaller tokens.
我叫DC,你正在观看The Coin Bureau。首先,这么多钱是如何被盗的呢?它是从所谓的“热钱包”中盗取的。这些钱包保持与互联网连接,以便自动发送和接收资金。当然,这使得它们使用速度更快,也使它们成为明显的目标。10月29日,币安的热钱包交出了以太坊、比特币、USDT、USDC、约2.33亿XRP以及一系列较小的代币。
The total was about $6.3 billion worth. Now, the speed came from an Ethereum feature called EIP-7702. It lets an ordinary wallet address run smart contract code. So that basically means a wallet can pack many actions into one transaction and accept instructions that were signed in advance. So the attacker abused access to an internal wallet signing service and attached their own contract to Binance's wallets. From there, withdrawals went in batches, completely outside the normal approval flow.
总金额约为63亿美元。现在,速度来自于以太坊的一个名为EIP-7702的功能。它允许普通钱包地址运行智能合约代码。所以这基本上意味着一个钱包可以将许多操作打包到一个交易中,并接受预先签署的指令。因此,攻击者滥用了对内部钱包签名服务的访问权限,并将自己的合约附加到币安的钱包上。从这里开始,提款以批次方式进行,完全绕过了正常的审批流程。
But how does an attacker get that kind of access? Well, for Binance, the groundwork started months earlier. The first foothold came in June when a wallet engineer downloaded a tampered installer of Homebrew, a common developer tool, while searching for an AI coding tool. Binance caught the infected device, replaced it, and rotated credentials. But by then, the attacker had already mapped out the engineer's role and the team.
但攻击者是如何获得这种访问权限的呢?对于币安来说, groundwork 早在几个月前就已开始。最初的立足点出现在六月,当时一名钱包工程师在搜索 AI 编码工具时,下载了一个被篡改的 Homebrew(一种常见的开发者工具)安装程序。币安发现了受感染的设备,替换了它并轮换凭证。但到那时,攻击者已经摸清了该工程师的角色及其团队的情况。
So in October, they reached two more team members' machines, and on the day of the theft, they used the first engineer's stolen credentials to run a malicious script inside a Binance service container. But if all of that went off without a hitch and the money was then safe in the thieves' wallets, why couldn't they just sit on it? Well, because a big part of it could be switched off, namely the portion that was USDT and USDC.
因此到了十月,他们又控制了另外两名团队成员的机器,并在盗窃当天,利用从第一名工程师那里窃取的凭证,在币安服务容器内运行了一个恶意脚本。但如果这一切都顺利进行,资金随后安全地存放在贼人的钱包里,为什么他们不能就此持有呢?嗯,因为其中很大一部分可以被冻结,即 USDT 和 USDC 的部分。
The code behind those stable coins contains a blacklist function that only the issuer can use. Once an address is on that list, the tokens inside it can't move. Stable coins are the most recoverable asset class in crypto because Tether and Circle can freeze, burn, and reissue. But Ether's different. There's no issuer and no blacklist. So every single dollar of USDT and USDC was on a countdown, and the only way to keep it was to swap it into something without a blacklist before the freeze came.
这些稳定币背后的代码包含一个黑名单功能,只有发行商才能使用。一旦某个地址被列入该名单,其中的代币就无法移动。稳定币是加密资产中最易回收的一类,因为 Tether 和 Circle 可以冻结、销毁并重新发行。但 Ether 则不同。没有发行商,也没有黑名单。因此,每一美元的 USDT 和 USDC 都在倒计时,唯一能保住它们的方法就是在冻结发生之前,将其兑换成没有黑名单功能的资产。
And the thieves knew about that. So in a window of about three minutes, one wallet deposited $60 million of USDT into the lending protocol Aave and borrowed 19,762 wrapped ETH. Wrapped ETH being Ethereum in token form, but we'll just call it ETH for simplicity. Now, step by step, it works like this. First, the USDT goes into Aave's lending pool and goes inside the protocol's contract. Second, the wallet borrows ETH against that deposit.
而窃贼们深知这一点。因此,在大约三分钟的时间窗口内,一个钱包将 6000 万美元的 USDT 存入借贷协议 Aave,并借出了 19,762 枚封装 ETH(Wrapped ETH)。封装 ETH 是以代币形式存在的以太坊,但为简便起见,我们暂且称之为 ETH。现在,逐步来看,其运作方式如下:首先,USDT 进入 Aave 的借贷池,并进入协议的合约内部。其次,该钱包以这笔存款为抵押借出 ETH。
Third, the ETH goes to a wallet that no issuer can freeze. And fourth, the USDT stays behind as collateral. So the value has left the token that can be frozen, and the debt with a borrower who has no reason to ever repay it. The same move was run on Tron through lending pools such as JustLend, where depositors receive a receipt token that has no freeze function. So the thieves didn't hide the stablecoins. Instead, they turned them into assets that nobody could control.
第三,ETH 转入一个任何发行商都无法冻结的钱包。第四,USDT 仍留在原处作为抵押品。于是,价值离开了可能被冻结的代币,而债务则落在了一个根本没有理由偿还的借款人身上。同样的操作也在 Tron 网络上通过 JustLend 等借贷池执行,存款人收到的是不具备冻结功能的收据代币。因此,窃贼并没有隐藏稳定币,而是将它们转化为了任何人都无法控制的资产。
But lending pools only absorb so much, and for the rest, one wallet went straight to the open market. So between 21:09 and 21:34 UTC, a single wallet pushed about $500 million of stablecoins to decentralized exchanges using aggregators like Uniswap and 1inch. But the bigger your trade compared to DEX liquidity pools, the worse the price you get on every extra dollar. That's what's known as slippage. And on one batch of orders, the slippage was ugly, very, very ugly.
但借贷池的吸纳能力有限,其余部分则直接流入公开市场。因此,在 UTC 时间 21:09 至 21:34 之间,一个单一钱包通过 Uniswap 和 1inch 等聚合器,将约 5 亿美元的稳定币推送到去中心化交易所(DEX)。但是,你的交易规模相对于 DEX 流动性池越大,每多投入一美元所获得的成交价格就越差。这就是所谓的滑点(slippage)。而在其中一批订单中,滑点非常难看,极其难看。
About $325 million went in, about $285 million came out. That's $40 million gone in about 20 minutes of trading, or about 12 cents on every dollar. Now across the wider push, one estimate put slippage as high as 26%. And that money didn't disappear. Bitquery estimates the thieves lost about $119 million against market prices across their rush trades. Roughly half of that, around $60 million, went to arbitrage bots and fast traders, and about $30 million went to block builders.
大约 3.25 亿美元进入,约 2.85 亿美元流出。这意味着在大约 20 分钟的交易时间内损失了 4000 万美元,或者说每美元损失约 12 美分。在整个大规模抛售过程中,有估算显示滑点高达 26%。而且这笔钱并没有消失。Bitquery 估计,窃贼在其匆忙进行的交易中,相对于市场价格损失了约 1.19 亿美元。其中大约一半,即约 6000 万美元,流向了套利机器人和快速交易者,另外约 3000 万美元流向了区块构建者(block builders)。
Not a bad Thursday evening for whoever was running those bots. And just to be clear, this wasn't a careless trade. It was a $40 million fee for getting out before the blacklist came. And the blacklist did come in the end. Tether's first major freeze hit 37 minutes after the funds reached the main Ethereum wallet. Aave's Guardian, the role that can pause the protocol in an emergency, froze the V3 reserves, but only after the Ethereum was already gone.
对于运行这些机器人的任何人来说,这都不失为一个不错的周四晚上。必须澄清的是,这并非一次粗心的交易。这是为了在黑名单生效前脱身而支付的 4000 万美元“费用”。最终,黑名单确实生效了。Tether 的首次大规模冻结发生在资金到达主以太坊钱包后的 37 分钟。Aave 的 Guardian(一种可在紧急情况下暂停协议的权限角色)冻结了 V3 储备金,但此时以太坊上的资金已经转移完毕。
Tether CEO Paolo Ardoino confirmed more than $1.5 billion frozen, Circle CEO Jeremy Allaire confirmed more than $800 million frozen, and Ripple froze about $200 million of its RLUSD stablecoin. By the 31st of October, about $3 billion had been locked up. So, Tether and Circle acted fast, very fast. Close to half the haul got frozen, but the other half did get out of reach. Now, with that other half splitting across 11 blockchains and thousands of wallets, keeping up with it is close to impossible for any one person to do alone.
Tether CEO Paolo Ardoino 确认超过 15 亿美元被冻结,Circle CEO Jeremy Allaire 确认超过 8 亿美元被冻结,Ripple 也冻结了其 RLUSD 稳定币中的约 2 亿美元。到 10 月 31 日,约有 30 亿美元被锁定。因此,Tether 和 Circle 行动迅速,非常快。接近一半的赃款被冻结,但另一半成功逃脱。现在,由于另一半资金分散在 11 条区块链和数千个钱包中,任何单个人都几乎不可能独自跟上这一动态。
So, if you don't have 16 hours a day to spend glued to a screen, we've made it a lot easier. Our Coin Bureau newsletter breaks down major market events that actually impact you and your holdings, cutting through all that noise across both crypto and the wider market. And the best part, it's absolutely free. You can sign up using the link in the description below or by scanning the QR code on screen right now. Okay, back to the money.
所以,如果你没有每天花 16 小时盯着屏幕的时间,我们让这一切变得简单得多。我们的 Coin Bureau 通讯简报剖析那些真正影响你和你持仓的重大市场事件,穿透加密领域及更广泛市场中的所有噪音。最棒的部分是,它完全免费。你可以使用下方描述中的链接注册,或者立即扫描屏幕上的二维码。好了,回到正题。
So, once the haul was in assets nobody could freeze, where did it actually go? Well, into a machine that was built before the theft even occurred. On the 28th of October, the thieves' operator wallets were funded through three small withdrawals from Tornado Cash. Tornado Cash is an Ethereum smart contract where users deposit crypto and later withdraw it to a different address. That breaks the public link between the address that sent the money and the address that received it.
那么,当赃款转入无人能冻结的资产后,它们究竟去了哪里?嗯,进入了一台在盗窃发生前就已搭建好的机器。10月28日,通过从Tornado Cash进行三次小额提款,为盗贼的操作者钱包注入了资金。Tornado Cash是一个以太坊智能合约,用户存入加密货币,随后将其提取到另一个地址。这就切断了发送资金地址与接收资金地址之间的公开联系。
Now, every wallet needs a little crypto to pay transaction fees. So, funding the operators that way meant even the fee money came with no visible history. So, the laundering didn't start after the theft. It actually began at least 36 hours before it. And once the theft happened, everything kicked into gear. The stolen funds moved through about 12,000 wallets across 11 blockchains in under four days in more than 40,000 transactions.
现在,每个钱包都需要少量加密货币来支付交易费用。因此,以这种方式为操作者充值意味着,就连手续费也毫无可见的历史记录。所以,洗钱并非在盗窃发生后才开始,实际上至少提前了36小时就开始了。而一旦盗窃发生,一切便迅速启动。被盗资金在不到四天的时间里,通过超过40,000笔交易,流经了11条区块链上的约12,000个钱包。
Now, for a sense of scale, that's roughly 10,000 transactions a day or about seven every single minute around the clock. So, the laundering was running on autopilot. On Tron, many wallets were pre-funded with exactly one TRX, just enough to cover fees, and then forwarded larger bala
为了有个概念,这大致相当于每天10,000笔交易,或者说全天候每分钟约七笔。因此,洗钱过程处于自动运行状态。在Tron网络上,许多钱包预先注入了恰好一个TRX,仅够覆盖手续费,然后转发更大的余额
原文超出正文长度上限,此处截断——上游还有内容,完整版见上方「原文 ↗」。
更进一步:量化金融体系
看懂新闻只是起点——沿量化金融路径,把它变成能交付的工程能力