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

评论

所有评论

推荐阅读

  • IDC:到2027年推理将占智能算力需求70%以上

    6月25日,在日前举行的IDC中国ICT市场趋势论坛上,IDC中国副总裁周震刚在演讲中表示,到2027年,推理将占智能算力需求的70%以上,边缘基础设施的增速将超过核心数据中心。全球加速计算服务器市场到2029年将超过1万亿美元,年复合增长率超过30%。AI领域的竞争优势已经转移:关键不再是拥有最强的算力,而是如何以最低的Token成本将AI转化为可持续的业务能力。

  • 创业板指涨超3% 存储芯片概念领涨

    6月25日,创业板指涨超3%续创历史新高,深成指涨1.88%,沪指涨0.25%。科创50指数涨近4%。存储芯片、培育钻石、CPO、PCB概念震荡上扬。全市场上涨个股超1200只。

  • 港股2倍做多海力士大涨25%创历史新高,年内飙升1099%

    6月25日,港股市场2倍做多海力士一度拉升涨超25%至193.65港元,创历史新高,年内累计涨幅达1099%。韩国市场SK海力士一度涨近16%至2987000韩元,创历史新高。 消息面上,SK海力士已提交美国IPO申请,宣布以逾290亿美元在美国上市,计划7月10日登陆纳斯达克。分析师认为,此次上市将通过产能扩张和吸引更多外国投资者,从而提升公司估值。另外,与海力士竞争的存储芯片企业美光科技公布季度销售预测,远超华尔街预期。 值得注意的是,小摩将韩国综合指数在牛市情景的目标位上调至15000点,较周三收盘点位8471.02点有77%的上行空间。野村将SK海力士目标价上调18%至470万韩元。

  • 全球最具价值的30家独角兽企业的总估值已高达3.9万亿美元

    6月25日,据Crunchbase的数据,截至2026年6月,全球最具价值的30家独角兽企业的总估值已高达3.9万亿美元。 AI初创公司主导独角兽格局,约占30家公司总估值的约60%。其中,Anthropic以9650亿美元的估值位居榜首,OpenAI紧随其后,估值为8520亿美元。Databricks、Figure、Safe Superintelligence、Anysphere、Scale AI和Cognition等AI公司亦上榜。 除AI之外,金融科技、商业与出行领域依然是主要赛道。Stripe、Revolut、Checkout.com和Ramp跻身估值最高的金融科技公司之列。字节跳动、蚂蚁集团和Shein均跻身前十。

  • “10·11内幕巨鲸”BTC多单浮亏超1855万美元,清算价暂报16964美元

    数据显示,“10·11 内幕巨鲸” Garrett Jin 仍持有 1270 枚 BTC 5 倍杠杆多单,该仓位于今年 5 月以 76,117 美元价格开立,持仓时间近 2 个月。目前,该交易浮亏超 1855 万美元,保证金规模为 1560 万美元 ,清算价暂报 16964 美元。

  • 金饰克价年内已跌近500元 降至1200元左右

    6月25日,据央视财经,近期国际金价持续调整,伦敦现货黄金价格跌破4000美元/盎司关口。国内多家品牌金店足金饰品挂牌价同步下调,部分品牌足金饰品价格降至1220元/克附近,较年内高点回落480至500元。

  • 韩国又现“鸡蛋通胀”

    6月25日,韩国鸡蛋价格近期明显上涨,“鸡蛋通胀”一词又出现在韩国媒体上。韩国媒体综合韩国畜产品质量评价院、韩国农林畜产食品部数据报道,截至本月中旬,韩国一盒30枚装鸡蛋的零售价为7506韩元(1000韩元约合4.4元人民币),同比上涨7.1%;一盒10枚装高档鸡蛋本月平均零售价升至5229韩元,首次突破5000韩元,比5月上涨16.7%,与去年同期相比上涨近39%。此外,本月韩国日均鸡蛋供应量为4705万枚,较去年同期下降3.3%。

  • 美光科技在法兰克福上市的股票大涨18%

    6月25日,美光科技在法兰克福上市的股票大涨18%,此前公司业绩展望超出市场预期。

  • 恒指跌破23000点,为2025年6月以来首次

    6月25日,恒生指数跌幅扩大至1.7%,跌破23000点,为2025年6月以来首次。

  • DRAM ETF夜盘涨超13%,2倍做多杠杆版飙升27%

    美股和韩股存储概念股涨幅不断扩大,在目前的美股夜盘市场中,Roundhill Memory ETF(DRAM.US)涨超13%,2倍做多DRAM(RAM.US)夜盘涨超27%。Roundhill Memory ETF是全球首款专门聚焦于计算机存储与数据存储行业的纯主题型ETF,目前该基金高度集中于全球三大存储巨头——美光科技、三星电子和SK海力士,三者合计权重超过70%。