Cointime

扫码下载App
iOS & Android

详解Socket攻击事件始末

项目方

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

背景介绍

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

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

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

事件梗概

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

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

  1. 3,接下来,第二个合约则将目标对准了受害者地址内的WETH, USDT, WBTC, DAI 与MATIC。于是,另外104名受害者损失了如下资产:
  • 42.47526105 WETH
  • 347,005.65 USDT
  • 2.88962154 WBTC
  • 13,821.01 DAI
  • 165,356.99 MATIC
  1. 4,攻击者将USDC与USDT转换成了ETH。

漏洞来源

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

该地址内的performAction函数原本的功能是协助Wrapping与Unwrapping的功能。 然而,该函数中出现了一个关键漏洞:用户在无需验证的情况下,直接在.call() 中通过swapExtraData调用外部数据,这意味着攻击者可以执行任意恶意函数。

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

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

还原攻击流程

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

  1. 2,fallback() 使用六进制签名 196 调用了有漏洞的路由地址合约(routerAddress)。

  1. 3,在下面的截图中,我们可以看到攻击者使用的虚假输入,Swapping数量全部为0。

  1. 4,接下来将调用WrappedTokenSwapperImpl.performAction() 进行Swap。

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

  1. 6,攻击者重复执行以上流程,直到受害者资产耗尽。 恶意交易出现后,Socket 迅速调用了 disableRoute,屏蔽了之前有漏洞的路由,阻止了更大范围的攻击。
  2. 7,1月23日,Socket宣布已经追回1032枚ETH,并在25日宣布将全额补偿所有损失。本次事件得到解决。

事件总结

在有着无限额用户授权的路由合约中,恶意 calldata 攻击并不罕见。 以前类似的攻击包括 Dexible 和 Hector Bridge。 2023 年 2 月 17 日,去中心化交易所 Dexible 被攻击,损失超过 150 万美元。 漏洞利用者向 Dexible 的 fill() 函数输入恶意 calldata,以窃取用户资产。 2023 年 6 月 2 日,Hector 网络的协议被攻击。攻击者部署了一个虚假的 USDC合约,并通过恶意 calldata,将 65.2万枚真实的USDC从受害者的合约中转移出去。

区块链聚合平台通常通过封装一系列桥和路由合约来提高流动性,减少损耗。然而,这种复杂的封装会给安全性带来更多难题。我们欣慰地看到Socket此次事件可以得到解决,CertiK将继续致力于为平台提供全方位审计与检测,降低各类聚合风险,提高社区信任和整个行业的安全水平

评论

所有评论

推荐阅读

  • 对冲基金对美股科技七巨头净敞口升至22%创新高

    10月10日,据高盛数据及The Kobeissi Letter,投资者对大型科技股的看涨情绪达历史最高水平。对冲基金对美股「科技七巨头」的美国净敞口总额已升至22%,创历史新高;该数据自7月以来激增7个百分点,为2023年以来最大3个月增幅,并打破2024年6月创下的21%高点(2022年熊市低点时仅8%)。同期,对冲基金对半导体股票的美国净敞口升至12%,略低于2026年6月的14%峰值,而该指标在2025年初仅为2%。

  • 观点:Tom Lee称以太坊本轮周期有望涨至2.5万至5万美元

    10月10日,以太坊财库公司Bitmine董事长Tom Lee在采访中表示,以太坊在本轮周期中有望涨至2.5万至5万美元。他认为ETH过去五年长期在相近区间震荡,持续筑底可能为后续更大幅度的突破奠定基础。Tom Lee还预计ETH年底价格将超过5000美元,并指出若比特币涨至10万美元以上,ETH则有望达到约7500美元。不过市场预测数据显示,交易员目前认为ETH在2026年底前涨至5000美元的概率仅为4%。

  • 传出爆炸声的利雅得哈立德机场已无航班起降

    10月10日,据CCTV国际时讯,有目击者今天称,沙特首都利雅得哈立德国王国际机场3号航站楼当天下午传出爆炸声,机场内人员被疏散撤离。航班追踪网站“飞行雷达24”信息显示,该机场已无航班起降,部分飞往利雅得的航班已备降或返航。哈立德国王国际机场已发布旅客提醒说,建议旅客在前往该机场前联系航空公司并确认航班状态。

  • Anthropic自曝家丑:失控智能体试图访问多个政府网站,已向白宫汇报

    Anthropic周五表示,公司的AI智能体曾自主行动,试图访问多个联邦、州和地方政府网站。该公司没有透露涉及哪些政府机构,但表示已就这些事件向白宫作了汇报。 Anthropic在博客文章中称,其正在测试的一款AI模型采取了多项未经授权的行动,包括利用一所大学网站的漏洞下载数据,以及向一个政府机构发送了一份它被明确告知不得提交的表单。该公司表示,公司在七月开始审查AI采取的行动后,发现了这些事件。 费城警察局周五早些时候表示,Anthropic 已通知警方,该公司的技术曾向警方网站提交一条虚假的凶杀案线索。

  • BTC突破83000美元

    行情显示,BTC突破83000美元,现报83020.19美元,24小时跌幅达到0.2%,行情波动较大,请做好风险控制。

  • ETH突破2500美元

    行情显示,ETH突破2500美元,现报2500.03美元,24小时涨幅达到0.33%,行情波动较大,请做好风险控制。

  • 胡塞武装称沙特空袭也门萨那机场

    10月10日,据也门胡塞武装发布的信息,当地时间10日下午,沙特主导的联军空袭了胡塞武装控制下的也门首都萨那国际机场,空袭中投下了四枚炸弹。此外,沙特联军还空袭了胡塞武装控制下的也门哈杰省的一处通信设施,投下了三枚炸弹。沙特方面对此暂无回应。(金十)

  • 立讯精密:公司及立讯技术涉337调查,尚处立案初期

    10月10日,立讯精密公告,公司及控股子公司东莞立讯技术股份有限公司被列为美国国际贸易委员会337调查被调查方,涉及美国专利US 10,90.37万。ITC于当地时间2026年10月9日正式启动调查,调查编号337-TA-1526,目前尚处于立案初期,尚未就相关侵权主张作出实质认定;涉案产品处于客户验证阶段,尚未进入量产状态。

  • 法国财委会通过稳定币兑换税与加密离境税修正案

    10月10日,据Decrypt报道,法国国民议会财政委员会本周通过两项加密税收修正案:自2027年1月1日起,将兑换受MiCA监管的稳定币视为应税出售;并拟对过去10年内至少6年为法国税务居民、加密资产合计价值超80万欧元而迁居海外的纳税人征收离境税。委员会10月9日以31票对3票否决预算收入部分,全体国民议会将基于政府原始文本审议,修正案不会自动纳入,支持者需在10月13日开始的辩论中重新提出,正式投票定于10月20日,相关措施尚未成为法律。稳定币修正案由左翼GDR党团成员Nicolas Sansu及16名联署者提出,未设新税率,拟将收益纳入法国现行31.4%统一税制。委员会还通过修正案,允许将加密资产亏损结转10年抵扣未来收益。

  • Entropy花费569.98枚HYPE拍下xiaomi(小米)代码,或即将上线其永续合约

    10月10日,HIP-3市场部署者Entropy花费569.98枚HYPE拍下代码xiaomi,Entropy或即将上线其永续合约。