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将继续致力于为平台提供全方位审计与检测,降低各类聚合风险,提高社区信任和整个行业的安全水平

评论

所有评论

推荐阅读

  • 美股三大指数集体高开 科技股普遍反弹

    美股三大指数集体高开,道琼斯指数涨0.80%,标普500指数涨0.44%,纳斯达克综合指数涨0.63%。热门科技股中,苹果股价下跌0.31%,英伟达股价上涨1.48%,微软股价上涨0.32%,谷歌-A股价上涨0.99%,亚马逊股价上涨1.36%,台积电股价上涨1.42%,SpaceX股价上涨2.2%,特斯拉股价上涨1.28%,Meta股价下跌0.47%,博通股价上涨0.27%,SK海力士股价上涨2.46%,美光科技股价上涨0.14%,超威半导体股价上涨0.71%,阿斯麦股价上涨0.45%,思科股价上涨0.23%,甲骨文股价下跌3.9%,英特尔股价下跌1.22%,戴尔科技-C股价下跌0.5%,ARM股价下跌0.18%。

  • Anthropic第三季度营收同比增长1127% Claude营收达170亿美元

    11月2日,Anthropic披露,截至2026年9月30日的三个月,公司营收同比增长1127%,旗下Claude业务营收达到170亿美元。同期,公司调整后营业利润为25亿美元,调整后营业利润率为15%;但按会计口径计算,营业亏损为5.67亿美元。 此外,截至9月30日及此后,公司采购承诺及租赁协议项下的承诺支出总额约8954亿美元。

  • Strategy 上周增持 810 枚 BTC

    据 Strategy 官网数据,Strategy 上周增持 810 枚比特币,累计持仓由 848,517 枚增至 849,327 枚,今年累计买入 176,827 枚。

  • Melius Research将英伟达目标价从420美元下调至315美元

    11月2日,Melius Research:将英伟达(NVDA.O)公司目标价从420美元下调至315美元。将迈威尔科技(MRVL.O)的目标价从445美元下调至300美元。

  • 香港交易所:延长衍生产品收市后交易时段

    11月2日,香港交易所将延长衍生产品收市后交易时段。由2027年3月起,香港交易所衍生产品收市后交易时段的收市时间由现时凌晨3时延长至凌晨4时15分;将根据收市后交易时段延长后的市场发展,考虑是否于2027年11月将收市时间再延至凌晨5时15分。新安排下,收市后交易时段的收市时间将由凌晨3时延长至凌晨4时15分,让市场参与者可在香港日间交易时段以外,因应外围市况灵活管理风险。

  • ETH突破2300美元

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

  • 本周重要事件与数据预告:美国中期选举、非农、中国外储

    11月2日,本周重要事件与数据预告如下: 1. 周一:①数据:中国10月RatingDog制造业PMI;瑞士9月实际零售销售年率;法国、德国、欧元区、英国10月制造业PMI终值;美国10月标普全球制造业PMI终值;美国10月ISM制造业PMI;美国9月营建支出月率;②事件:今日有1万亿隔夜逆回购、560亿元7天期逆回购到期。③财报:苹果(AAPL.O)、Palantir(PLTR.N)等。 2. 周二:①数据:澳大利亚至11月3日澳洲联储利率决定;瑞士10月CPI月率;美国9月JOLTs职位空缺;美国9月工厂订单月率;②事件:澳洲联储公布利率决议和货币政策声明,主席布洛克召开货币政策新闻发布会;2027年FOMC票委、芝加哥联储主席古尔斯比发表讲话;欧洲央行管委拉德夫、穆兰、科赫尔、多伦茨等发表讲话;2026年美国中期选举;③假期:日本东京证券交易所因文化日休市一日;④财报:辉瑞(PFE.N)、AMD(AMD.O)、BioNTech SE(BNTX.O)等。 3. 周三:①数据:美国当周API原油库存;中国10月RatingDog服务业PMI;法国、德国、欧元区、英国10月服务业PMI终值;欧元区10月CPI初值;美国10月ADP就业人数;美国9月贸易帐;美国10月标普全球服务业PMI终值;美国10月ISM非制造业PMI;美国当周EIA原油库存、当周EIA俄克拉荷马州库欣原油库存、当周EIA战略石油储备库存;②事件:欧洲央行管委内格尔、首席经济学家连恩发表讲话;美国财政部发布季度再融资公告;第二十四届中国半导体封装测试技术与市场年会于11月4日-6日在南京丰大国际大酒店举行;③财报:高通(QCOM.O)、Arm(ARM.O)、Uber(UBER.N)、麦当劳(MCD.N)等。 4. 周四:①数据:法国9月工业产出月率;瑞士10月季调后失业率;欧元区9月PPI月率;美国10月挑战者企业裁员人数;英国至11月5日央行利率决定;美国至10月31日当周初请失业金人数;美国10月全球供应链压力指数;美国当周EIA天然气库存;②事件:日本央行公布9月货币政策会议纪要;欧洲央行管委穆兰、执委施纳贝尔等发表讲话; 英国央行公布利率决议、会议纪要及货币政策报告,行长贝利召开货币政策新闻发布会;瑞士央行行长施莱格尔发表讲话;2026年FOMC票委、克利夫兰联储主席哈玛克就稳定币和避险货币汇率问题发表讲话;2027年FO

  • 伊朗外长披露“两天计划” 美方履约方能重启伊美谈判

    当地时间11月1日,伊朗外长阿拉格齐在接受媒体采访时表示,伊朗代表团访问卡塔尔是伊朗与卡塔尔、巴基斯坦等调解方持续沟通的延续。目前,摆在桌面的方案与伊朗此前提出的“七日计划”基本相同。卡塔尔和巴基斯坦等调解方也就此进行了多次磋商和讨论,并提出了比伊朗“七日计划”更具可行性和可操作性的建议。 阿拉格齐表示,卡塔尔提出的建议之一是“将七天期限缩短至五天甚至更短”。目前,伊朗同意一项“两天计划”,即:第一天,美国将采取一系列(履约)措施。第二天,霍尔木兹海峡将开放,海峡交通将恢复到之前的状态。 阿拉格齐指出,现在所有这些问题都摆在了桌面上,只要(美国)遵守伊朗这个为期两天的计划,就能为和平铺平道路,使霍尔木兹海峡恢复正常。在美国履行相关承诺、霍尔木兹海峡开放后,伊朗与美国恢复谈判的道路才会打开。据了解,伊朗提出的美国必须履约的条件包括:确定霍尔木兹海峡通航新航线、解冻伊朗资金、结束包括黎巴嫩在内的地区战争、解除海上封锁、伊朗出口石油豁免权、解除在《伊斯兰堡谅解备忘录》后美国实施的新制裁等。(央视)

  • 以媒:以色列已准备好与美国联手打击伊朗,但具体目标尚不明确

    11月2日,据《耶路撒冷邮报》报道,如果特朗普要求以色列国防军(IDF)在11月3日美国中期选举后参与美军空军对伊朗的军事行动,以军已做好打击准备,但目前局势仍笼罩在诸多不确定性之中。特朗普此前曾在今年8月、10月初及其他多个时点撤回对伊朗发动袭击的威胁,而如今袭击可能性再次上升,部分原因在于各方已尝试通过其他途径争取伊朗让步,特朗普团队中的部分成员也正重新转向支持军事打击。过去一周,超过10架美国军用运输机抵达以色列南部的内瓦提姆空军基地和乌夫达空军基地,似乎是在为一场重大军事行动做准备。另有报道称,美国正向以色列及其他阿拉伯盟友调运防空系统和拦截弹。不过,目前美国在该地区的兵力仍少于此前一些时期的部署规模。但这可能只是部署的开始。美国与以色列对于此类军事行动的具体目标仍存在分歧。(金十)