从一次签名授权到多链失窃:币安热钱包事件复盘

2026年10月29日,币安多条链的热钱包出现异常转出,币安口径下影响金额约63亿美元。本文按币安公告和公开链上分析,梳理以太坊上的EIP-7702授权与清扫合约如何配合,也说明哪些问题至今没有结论。

本文由 AI 根据公开资料整理发布。

复盘币安这次热钱包失窃,需要把三件事分开:资产怎样被转走,攻击者如何获得有效签名,被盗资产后来如何处置。链上记录揭示了大量转账细节,完整的入侵路径却还没有公布。本文的事件金额与处置状态采用币安2026年10月30日公告口径,技术过程参考当时CoinDesk、TRM Labs等公开链上分析。

热钱包签名权限失守与多链资产转移的概念插画

下面是谢彦提供的事件可视化视频,可以对照文中的资金转移过程观看。

先把事情的轮廓说清楚

2026年10月29日,币安多个链上的热钱包出现异常转出。币安在10月30日的公告里说,影响金额约63亿美元。TRM Labs按转出时的价格估算是约63.6亿美元,两者相差不大,本文统一用币安的口径,也就是约63亿美元。

涉及的链不少:Ethereum、Bitcoin、Tron、Solana、XRP Ledger,还有Arbitrum、Optimism、Base、Avalanche、Polygon这些网络。主要资金是在很短时间内转走的,约20分钟是主要阶段。不过这不等于所有后续转账都在这20分钟里完成,之后还有资金陆续移动。

币安目前说了什么,没说什么

币安最初的调查指向一名DevOps工程师的电脑可能被攻破,攻击者借此接触到服务容器,提交了未授权的提现。后来又发现了其他入侵点。币安还说,暂时没有发现钱包私钥泄露的证据。

多条链上都出现了有效签名,公开分析因此怀疑签名基础设施遭到滥用。不过,币安尚未公布最终根因和完整入侵路径,现阶段还不能把事件归结为一台电脑或某一个人的权限失守。

“没有私钥泄露”为什么不让人安心

先说一个通用的理解模型。在个人钱包里,助记词可以恢复出派生的私钥,私钥则用来生成签名,链上认的就是这个签名。交易所一般会把签名能力放进专门的安全系统和流程里,员工和程序不需要直接读到私钥,可能只是向签名服务提出一个请求,由它来完成签名。这只是通用的理解模型,不能当作对币安完整内部架构的描述。

顺着这个模型想,问题就清楚了:如果攻击者能让内部系统替自己签出有效的授权或交易,那即使没有直接拿走私钥,资产照样可能被转走。所以“没发现私钥泄露”,并不等于资产的控制权没有失守。这两件事要分开看。

以太坊上的做法与其他链不同

从公开观察看,以太坊之外的多条链,资金是通过普通、有效签名的转账被转走的。以太坊这边则有两种:一部分是直接转账,另一部分用了EIP-7702授权加清扫合约。

EIP-7702委托只是这次多链失窃中的一段,并不能解释全部63亿美元的转出。其他链上的普通转账同样带有有效签名,多条签名路径为何一起失守,仍是调查需要回答的问题。

EIP-7702和清扫合约是怎么回事

EIP-7702在2025年5月的Pectra升级后启用。它允许普通的外部账户签署一份授权,让这个地址去执行指定合约的代码。注意,地址和余额没有搬到别的钱包,还是原来那个地址,只是它多了“执行被委托代码”的行为。这种委托也不是只在一笔交易里短暂生效,它会留在链上,直到被替换或撤销。

同时,授权仍然需要该钱包的有效签名,外人不能仅凭知道地址就接管。所以这次是机制被滥用,并不等于发现了这个标准本身的漏洞。

再说合约。智能合约可以简单理解为部署在链上的程序,Ethereum上常用Solidity来写,开发测试后通过部署交易获得一个链上地址。“清扫合约”是按用途起的名字,指能在一次调用里批量转走指定的ETH和代币的合约。它按事先准备的代币列表处理转账。本案合约还限制了调用权限,只有攻击者的操作地址才能指挥。

把两者合起来看:通过7702委托,这段代码是在币安热钱包自己的账户上下文里执行的,所以它能动用这个地址里的资产。

nonce、50份授权和那一份被接受的

nonce可以理解成账户的序号,授权执行时,要求它与当时的账户状态匹配。币安热钱包提现很频繁,序号变化很快,要恰好对上并不容易。

据CoinDesk报道,攻击者准备了50份覆盖连续nonce的有效授权。这样做的目的是扩大命中当时状态的窗口,并不是保证一定成功。结果是序号18,914,809的那一份被接受,其余的被忽略。

真正值得追问的是,攻击者为什么已经拿到了50份有效签名。nonce没有被破解,多份授权只是为不断变化的账户序号留出了更大的匹配窗口。签名从哪里来,仍需要官方的技术复盘。

约3分24秒之后:清扫与撤销

授权被接受后约3分24秒,攻击者调用了被委托的代码,在一笔交易里转走约167,464 ETH和63种代币,其中约16亿USDT。这是以太坊部分的重要一笔,不是所有链的总额。

委托持续了将近4小时,期间新流入的资产又被多次清扫,之后授权才被撤销。批量清扫的好处,是减少逐个处理资产的交易步骤,也让后续到账的资产继续暴露在这个委托之下。至于能快速命中nonce,那是靠前面准备的多份授权,不该算在清扫合约头上。

动手之前,还有几处铺垫。操作钱包先从Tornado Cash收到少量ETH用作Gas。Tornado Cash是隐私混币工具,作用是切断或削弱存入与提取地址之间的直接关联,但这不代表绝对无法追踪,也不能据此断定所有使用者都违法。另外,攻击者还提前部署并演练了清扫逻辑。

资金去了哪里,以及怎么看接收地址

公开记录中的一个接收地址为 0x5227f603C1eE34CE3C06eFe6477003BDfCCB2f8c,公开标签为Binance Hot Wallet Exploiter 2。该地址仅用于复盘,不作为转账目标;其余额和后续交易持续变化,这里不列实时数字。

关于流向,要分两类看。大量USDT、USDC等稳定币已被发行方冻结,但冻结不等于已经返还给币安。ETH、BTC这类原生资产,稳定币发行方是无法冻结的,仍需要继续跟踪和后续处置(个别网络有特殊的应急权限,这里不展开)。币安在10月30日说,约30亿美元的资产已在链上冻结,并承诺用SAFU和公司资金承担损失。这是当时的披露,不是实时余额,也不是最终的净损失。

另外,这个地址里不断出现小额转入、0 ETH交易和留言,容易让人以为黑客还在转移资金,其实不能仅凭交易多就下这个结论。要看这几样:

  • 方向:是转入还是转出。
  • 真实价值:金额是否有实际意义。
  • Input Data:交易里带了什么数据。
  • 后续路径:这些资产之后去了哪里。

很小的入账可能是灰尘,可能是围观留言,也可能夹杂着骚扰或钓鱼,没有证据的话,不宜说每一笔都是无害的噪音。0 ETH交易也是允许的,发送方照样要付Gas,交易可以携带数据或调用合约。所以“ETH金额是0”,不代表没有代币转移或合约动作,不能只看这一栏下判断。

签名有效,审核未必有效

从目前公开的信息看,最值得警惕的是:有效签名并不等于真实意图经过了充分审核。链上只认签名,但签名背后是谁的意思、在什么条件下被请求、请求的范围有多大,这些都得在链下的系统里看清。放到日常,也是同样的道理,授权的具体内容、签名请求的边界,以及像EIP-7702这类持续有效的委托风险,都该认真看过再签。

至于多条链的权限为何会同时失守,还要等正式的技术复盘。在那之前,链上分析能解释资金怎样移动,却还不能代替完整的入侵调查。

原创文章,作者:xieyan,如若转载,请注明出处:https://xieyan.com.cn/?p=243

赞 (0)
xieyan的头像xieyan
涨了之后怎么卖:A股波段交易中的分批止盈
上一篇 4小时前
做了一个面向A股公司分析的财报分析系统
下一篇 2026-05-09 13:02

相关推荐

发表回复

登录后才能评论