数据验证环节漏洞导致损失330万美元,详解Socket攻击事件始末

Odaily星球日报發佈於 2024-02-04更新於 2024-02-04

文章摘要

2024年1月16日,Socket Tech遭到攻击,损失约330万美元,本文详解攻击事件始末。

数据验证环节漏洞导致损失330万美元,详解Socket攻击事件始末

2024 年 1 月 16 日,Socket Tech 遭到攻击,损失约 330 万美元。攻击者利用了 Socket 某合约中数据验证环节的漏洞,通过恶意数据输入盗取了授权合约的用户资金。这次攻击共给 230 个地址带来损失,最大的单地址损失约为 65.6 万美元。

背景介绍

Socket 是一种服务于跨链安全、高效数据和资产传输的互操作性协议。Socket Gateway 合约是与 Socket 流动性层所有交互的接入点,所有资产桥接器和 DEX 在此汇聚成一个唯一的元桥接器,并根据用户偏好(如成本、延迟或安全性)选择最佳交易路由。

黑客攻击发生的前三天,Socket 合约管理员执行了 addRoute 命令,在系统中加入了一条新路由。添加路由的目的是扩展 Socket 网关的功能,但却无意中引入了一个关键漏洞。

下图为通过合约管理员添加路由的记录:

数据验证环节漏洞导致损失330万美元,详解Socket攻击事件始末

事件梗概

1.北京时间 1 月 16 日 15: 03 ,攻击者钱包转入攻击所用资金,我们的时间分析表明这笔资金来自0x e 620 ,与从 Tornado Cash 提取的 10 BNB 有关。

数据验证环节漏洞导致损失330万美元,详解Socket攻击事件始末

2.这些资金被用于创建和执行两个合约来利用 Socket 的漏洞。第一个合约针对的是授权了 SocketGateway 的地址中的 USDC(截图如下)。127 名受害者被骗走约 250 万美元。

数据验证环节漏洞导致损失330万美元,详解Socket攻击事件始末

3.接下来,第二个合约则将目标对准了受害者地址内的 WETH、USDT、WBTC、DAI 与 MATIC。于是,另外 104 名受害者损失了约如下资产:

-42.48 WETH

-347, 005.65 USDT

-2.89 WBTC

-13, 821.01 DAI

-165, 356.99 MATIC

4.攻击者将 USDC 与 USDT 转换成了 ETH。

数据验证环节漏洞导致损失330万美元,详解Socket攻击事件始末

漏洞来源

被攻击者利用的漏洞存在于新添加的路由地址 routeAddress 内的 performAction 函数中。

该地址内的 performAction 函数原本的功能是协助 Wrapping 与 Unwrapping 的功能。

然而,该函数中出现了一个关键漏洞:用户在无需验证的情况下,直接在.call() 中通过 swapExtraData 调用外部数据,这意味着攻击者可以执行任意恶意函数。

数据验证环节漏洞导致损失330万美元,详解Socket攻击事件始末

在这次事件中,攻击者制作了一个恶意的 swapExtraData 输入,触发 transferFrom 函数。该恶意调用利用了用户对 SocketGateway 合约的授权,从他们那里盗走了资金。

虽然合约会通过检查余额检查确保 fromToken.call()调用后用户余额会出现正确的变化,但该函数没有考虑攻击者将金额设置为 0 的情况。

数据验证环节漏洞导致损失330万美元,详解Socket攻击事件始末

还原攻击流程

1.使用攻击合约,攻击者在 Socket Gateway 合约上调用了0x 00000196()。

数据验证环节漏洞导致损失330万美元,详解Socket攻击事件始末2.fallback() 使用六进制签名 196 调用了有漏洞的路由地址合约(routerAddress)。

数据验证环节漏洞导致损失330万美元,详解Socket攻击事件始末3.在下面的截图中,我们可以看到攻击者使用的虚假输入,Swapping 数量全部为 0 。

数据验证环节漏洞导致损失330万美元,详解Socket攻击事件始末4.接下来将调用 WrappedTokenSwapperImpl.performAction()进行 Swap。

数据验证环节漏洞导致损失330万美元,详解Socket攻击事件始末

5.在没有进行任何验证的情况下,虚假的 SwapExtraData 被 fromToken (WETH)接受并执行。

数据验证环节漏洞导致损失330万美元,详解Socket攻击事件始末

6.攻击者重复执行以上流程,直到受害者资产耗尽。恶意交易出现后,Socket 迅速调用了 disableRoute,屏蔽了之前有漏洞的路由,阻止了更大范围的攻击。

7.1 月 23 日,Socket 宣布已经追回 1032 枚 ETH,并在 25 日宣布将全额补偿所有损失。本次事件得到解决。

数据验证环节漏洞导致损失330万美元,详解Socket攻击事件始末

事件总结

在有着无限额用户授权的路由合约中,恶意 calldata 攻击并不罕见。

以前类似的攻击包括 Dexible 和 Hector Bridge。

2023 年 2 月 17 日,去中心化交易所 Dexible 被攻击,损失超过 150 万美元。漏洞利用者向 Dexible 的 fill()函数输入恶意 calldata,以窃取用户资产。

2023 年 6 月 2 日,Hector 网络的协议被攻击。攻击者部署了一个虚假的 USDC 合约,并通过恶意 calldata,将 65.2 万枚真实的 USDC 从受害者的合约中转移出去。

区块链聚合平台通常通过封装一系列桥和路由合约来提高流动性,减少损耗。然而,这种复杂的封装会给安全性带来更多难题。

Socket 此次事件可以得到解决无疑是各方努力的结果,CertiK 也将继续致力于为平台提供全方位审计与检测,降低各类聚合风险,提高社区信任和整个行业的安全水平。

你可能也喜歡

不可能三角根本就是伪问题

加密行业构建了强大的密码学系统,但默认状态下却无法保护用户资金的隐私,所有交易和持仓都公开可查,这成为大规模资金入场的主要障碍。文章认为,区块链本质上是一台无人拥有的慢速、昂贵计算机,其核心价值在于提供无需许可的准入和去中心化信任。资金(尤其是稳定币)是天然适合上链的资产,因为账本记录即资产本身。 然而,行业长期关注的“不可能三角”(去中心化、可扩展性、安全性)并非真正瓶颈。实际阻碍在于两大设计缺陷:合法性与隐私。合法性方面,无许可特性导致监管灰色地带,但随着美国《GENIUS法案》等监管框架落地,合规环境正在改善。 更关键的缺陷是“透明度税”。链上所有交易公开,导致用户面临MEV(矿工可提取价值)被抢跑、夹击等风险,这实质上是一种持续的成本。对于家族办公室、大型机构等严肃资本而言,公开资产负债表是无法接受的。隐私并非与合规对立,现代密码学(如零知识证明)允许在不泄露具体数据的情况下证明合规性(如偿付能力、KYC),实现“可证明的合规隐私”。 作者指出,为链上交易添加隐私保护是一次纯粹升级,它将把加密系统从“公开的谷歌表格”转变为能保守秘密的共享机器,从而吸引数万亿规模的机构资金,真正释放区块链的潜力。

链捕手6 小時前

不可能三角根本就是伪问题

链捕手6 小時前

光芯片,集体扩产

近日,全球光芯片产业链密集出现扩产、投资与供应链绑定动作,以满足AI数据中心对光互连能力激增的需求。 美国方面,Coherent获政府资助扩建德州6英寸磷化铟(InP)产线,产能将提升至4倍,NVIDIA已对其战略投资并锁定未来产能。Lumentum在北卡罗来纳州新建激光器工厂,Nokia则在宾夕法尼亚扩建光子芯片先进测试与封装产能。日本材料商JX Advanced Metals计划大幅投资,将InP衬底产能提升7-10倍。欧洲方面,IQE与Tower Semiconductor达成InP外延片供应协议,推动硅光平台与III-V材料集成;ST计划在法国大幅提升300mm硅光产能;Sivers Semiconductors与格芯合作开发集成激光器的硅光方案。 国内光芯片产业链同样迅猛发展。东山精密旗下索尔思光电宣布投资12亿美元在常州扩建光芯片及光模块产能。三安光电已具备6英寸InP光芯片量产能力,云南锗业亦启动磷化铟单晶片扩产项目。产业链正从模块组装向材料、芯片、封测等全环节延伸。 行业分析指出,无论未来采用可插拔、CPO(共封装光学)还是其他架构,AI算力增长对带宽的需求将持续推高光芯片用量。目前CPO面临技术挑战,可能放缓落地,但光源路线呈现多元化(如硅光+连续波激光器、VCSEL、MicroLED等),将在不同应用场景分层并存。这场全球扩产竞赛实质是各国对AI数据中心光互连时代的关键布局,光子产业链已进入白热化竞争阶段。

marsbit9 小時前

光芯片,集体扩产

marsbit9 小時前

交易

現貨
合約
活动图片