币安 63 亿惊魂夜:不是被黑的,是被\"请\"走的
原创
APT-101
APT-101
APT-101
2026年11月2日 20:52
陕西
去阅读
社会工程#攻击溯源#加密安全#EIP-7702 #安全分析
01 先看数字:63 亿,和一把没撬的锁
10 月 30 日凌晨,币安多个热钱包在 40 分钟内流出约 63 亿美元资产(币安官方措辞\"预计总影响金额\"),TRM Labs 的人管这叫\"人类历史上最大的银行劫案\"。以太坊上最大的一段:167,464 枚 ETH、16.15 亿枚 USDT,外加 UNI、LINK、AAVE、PEPE 等 63 种代币,在 3 分 24 秒里被一笔扫空。
但把整个事件翻来覆去看,你会看到一个反常现象:这么大一票,里里外外没有\"漏洞\"。没有 0day,没爆出合约漏洞,官方口径至今是\"没有任何钱包私钥泄露的证据\"。连攻击手法用的都是以太坊的官方新特性。
不靠漏洞的攻击,靠什么?靠\"请\"。
02 前两天的排兵布阵:三笔手续费、一个只认一个主人的合约、两遍彩排
这不是临时起意,链上痕迹把准备过程交代得很清楚:
- 10 月 28 日,攻击者三次从混币器 Tornado Cash 提取小额资金,用来支付后面部署合约和演练的手续费;
- 10 月 29 日下午,部署最终版恶意合约(Solidity 0.8.28),这个合约只认一个主人——攻击者自己的钱包,而且只干一件事:转钱;
- 10 月 29 日晚到 30 日凌晨,用两个测试钱包把整套流程完整演练了两遍,收工的时候离正式动手只剩 3.5 小时。
这些动作串起来,是正式演出前的一次完整彩排。说明攻击者把每一步都当成了确定性的工程,不是碰运气。
03 请机器开门:3 分 24 秒,签名系统亲手递出 63 亿
凌晨 4 点 20 分 59 秒,以太坊上链了一笔看起来\"干净\"的交易:没有转账金额,没有调用数据,唯一内容是向币安标记为 Binance 14 的热钱包提交了 50 条 EIP-7702 授权。
EIP-7702 是 Pectra 升级引入的新东西:它允许普通钱包签发一张特殊授权,把自己账户的代码执行权临时委托给一段智能合约代码。官方的设计初衷是改善体验(批量操作、代付 Gas),但官方文件里也白纸黑字警告过:\"授权代码可能拥有对账户的广泛访问权限,钱包必须严格审查授权。\"
50 条授权用的是 18914775 到 18914824 连续 50 个 Nonce。这个细节值得琢磨:为什么一次签 50 个?因为币安热钱包每分钟处理大量交易,攻击者没法提前锁定哪个 Nonce 有效,干脆签 50 个连续值当窗口,等一个命中就生效。
3 分 24 秒后,这个钱包被一笔转空。而且从这一刻起,攻击者再也不用币安的私钥了:合约已经接管了账户,直接调用就能继续扫。
这里有个关键推理,来自链上分析平台 808bits:如果攻击者手里有私钥,根本不需要 Nonce 窗口机制,自己发起转账就行。50 个连续签名只能说明一件事,攻击者没有私钥。真实情况更像是:攻击者把 50 个 32 字节的摘要提交给了币安内部的某个签名服务,服务按正常流程签了字、返回结果,完全没有识别出这是一批危险的 7702 授权。
为什么识别不出来?因为签名对象只有 32 个字节。摘要上只有\"链 ID、目标合约地址、Nonce\"三个字段,没有收款方,没有金额,没有任何调用数据。签名系统看到的是一批合法格式的请求,它按授权面的规则诚实干活。
这就是对机器的社会工程:不骗系统逻辑,骗\"系统与人的分工\"。自动化为了效率把人的判断从签字环节里挤了出去,攻击者就顺着那个空档递纸条。签名系统不是在犯错,它是在替攻击者签字。
图1 请机器开门:4:20:59 提交 50 条 EIP-7702 授权,3 分 24 秒一笔转空;32 字节摘要只有链 ID、目标合约、Nonce,签名机分不出来
04 顺手揭开的一环:Binance 16 的 24 秒
故事里还有一节很蹊跷:Binance 14 被清空约 24 秒后,另一个热钱包 Binance 16 也向攻击者的集结地址转出了 28,005.6 枚 ETH 和约 1.08 亿美元的其他代币。关键是,Binance 16 这次没有走 7702 委托,用的是自己的私钥直接签的。
两种解读:要么同一套签名访问权限覆盖了这个钱包,要么是一笔内部提现被推送到了攻击者地址。无论哪种,结论都指向同一个地方:入侵的根源在币安的签名/提现基础设施,而不是某一把被单独泄露的私钥。
换句话说,攻击者拿到的不是\"一把钥匙\",是\"签字的笔\"。
05 请人递钥匙:那台无人看管的笔记本
笔在机器手里,但第一个入口在人身上。币安初步调查给出的切入点是:一名 DevOps 工程师的笔记本电脑被入侵,攻击者借此访问了服务容器,提交了未经授权的提现交易。
随后,链上调查员 ZACHXBT 披露了更多细节(调查披露,官方事后报告还没出):这名工程师与朝鲜间谍存在恋爱关系,黑客事件当天,笔记本电脑被置于无人看管状态。
如果这一节成立,它就是整件事里最\"老派\"的部分:浪漫陷阱加一个物理窗口。不用鱼叉邮件,也不用恶意附件,一段关系换取信任,一个\"没人看着\"的间隙换取访问。这是情报部门玩了几十年的手法,放在 63 亿美元级的事件里,依然比任何漏洞都好使。
历史也印证了这套剧本:2025 年 Bybit 劫案被归因于亚洲某国关联黑客组织 TraderXXXitor;更早的 Ronin、Harmony 等 DeFi 劫案,也有过靠伪装的社交账号接触开发者的指控。手法换了几轮,最后都得靠人点头。
图2 请人递钥匙:恋爱关系 + 无人看管的笔记本 → 服务容器 → 未授权提现(ZACHXBT 披露,未经官方确认)
06 为什么防线全没用:都在防偷,没人防请
币安的防线并不弱:冷存储、MPC、多签、风控、凭据隔离。这些技术今天依然有效,事件本身也证明私钥没被偷走、冷钱包没被碰。
但所有这些防线共享同一个假设:攻击者想要的是\"获得\"信任。于是防御全部围绕\"防偷\"设计:防私钥泄露、防未授权访问、防签名被复制。没有人防\"系统自愿把授权递出去\"。
有个点容易被忽略:50 个连续 Nonce 的 7702 授权,在监控视角里本来是个清晰的异常信号。但要发现它,前提是把\"授权类交易\"本身当成风险对象来监控。默认信任,是一切趁虚而入的前提。
自动化的代价在这一案里现了原形:摘要签名把\"这条交易是什么\"压缩成 32 个字节,人的判断被格式化成噪声。效率是上去了,能看出这笔有问题的人没了。
图3 防线都在防偷,没人防请:HSM/MPC/多签/凭据隔离全有效,但假设是\"攻击者要获得信任\";50 个连续 Nonce 本是清晰异常信号
07 进化论:从 Bybit 到币安,同一种\"请\"
2025 年 2 月,Bybit 被转走约 15 亿美元。手法:入侵 Safe 钱包的开发环境,诱骗多签审批者批准一笔\"正常转账\",实际签掉的是一次代理合约升级。
2026 年 10 月,币安被转走约 63 亿美元。手法:签名系统看到一批\"普通摘要\",实际签掉的是 50 张 EIP-7702 授权委托书。
同一家公司(Blockaid)的 CEO 说这两次\"非常相似\"。链上分析界的总结一针见血:\"攻击者没有正面攻破保险柜,而是让签名系统自己打开了门。\"
变化的只有两点:规模,从 15 亿到 63 亿;目标对象,从\"骗一个审批的人\"扩展到\"骗一套自动签字的系统\"。攻击者在把社会工程的靶子,从人升级到自动化信任。
08 收束:风险上界,等于权限等值
收个尾,用之前聊过的一条公式:风险上界 = 资产权限的等值。你授予一项资产多少权限,攻破它的风险上界就是多少,不由攻击者强弱决定。
币安这次,签名系统被授予的权限等值,就是它能盖过章的所有热钱包资产,63 亿美元。社会工程做的就是不变卖漏洞,变卖\"权限的等值\":让持有权限的人或系统,按攻击者的意图行使它。私钥没丢,资产没了。
顺着这条线,防御动作其实都有具体落点:
- 签名管道:授权类交易(Type-4 / EIP-7702)单独列为高危对象,前置校验收款方、金额、合约地址黑名单。32 字节盲签可以保留,但要配上下文:签之前,把\"这是什么\"还给系统。
- 对人:关键岗位人员的社交接触面纳入情报视角,恋爱/合作伪装不是八卦是攻击面;设备物理管控,无人看管就是零信任。
- 对自动化:每一个\"人类判断被挤出\"的决策点都要重新设计审查点。摘要签名配上下文,自动化签字的每一步都能回答\"我在签什么\"。
- 资产纪律:热钱包余额能少放就少放;没法被中心化冻结的资产(BTC/ETH),要有更严的冷热分离。这次 30 亿美元靠稳定币发行商在数小时内冻住,其余 33 亿的 BTC/ETH 至今在链上追踪。
回到开头那句评价:这案子从攻击手法上看朴实无华,没有一处需要炫技,靠的全是\"请\"。门不是撬开的,是请开的。 信任该审查的地方就审查,这一条盯住,比升级任何防火墙都便宜。
图4 风险上界 = 权限等值:签名系统的权限等值就是 63 亿美元;防御落在签名管道、关键人社交面、自动化审查点、热钱包余额纪律四件事
版权声明
本站仅做备份收录,仅供研究与教学参考之用。
读者将信息用于其他用途的,全部法律及连带责任由读者自行承担,本站不承担任何责任。











评论