
区块链安全公司 BlockSec 发布了一份技术分析报告,分析了针对两个去中心化金融协议的攻击,这些攻击造成了超过 1700 万美元的损失。.
去中心化交易所聚合商 SwapNet 在 Ethereum、Arbitrum、Base 和 Binance 智能链上遭受了超过 1340 万美元的损失,而管理集中流动性头寸的 Aperture Finance 在同时发生但无关的dent中估计损失了 367 万美元。.
BlockSec在其对 X 的分析摘要中指出: “由于输入验证不足,受害者合同trac了任意调用能力,允许攻击者滥用现有的代币批准并调用 transferFrom 来窃取资产。”
该安全公司表示:“这些事件dent我们,合同设计的灵活性trac与严格的调用限制进行仔细平衡,尤其是在外部审查有限的闭源系统中。”
在 SwapNet 案例中,漏洞来自函数 0x87395540(),该函数对关键输入缺乏适当的验证。.
攻击者通过将预期的路由器或池地址替换为 USDC 等令牌地址,诱骗受害者trac将令牌视为有效的执行目标。.
这导致攻击者控制的调用数据执行低级调用,使受害者trac能够执行允许攻击者窃取所有已批准资产的调用。.
该漏洞影响了DeFiMatcha Meta,这些用户禁用了平台的“一次性批准”设置,并直接向SwapNet合同授予了无限trac。
单笔损失最大的是一位用户,损失金额约为1334 万美元。总共有 20 位用户受到影响。攻击始于 Base 链的第 41289829 个区块,导致 SwapNet 在检测到初始漏洞 45 分钟后暂停了trac。此后不久,SwapNet 也暂停了其他链上的合约trac然而,在此期间,又有 13 位用户在三条链上受到影响。
代表用户管理 Uniswap V3 流动性头寸的 Aperture Finance 也受到了其函数 0x67b34120() 中同类漏洞的侵害。.
当调用此函数时,内部函数 0x1d33() 使用用户提供的调用数据执行底层调用,而不对调用目标或函数选择器强制执行严格的约束。.
这使得攻击者能够构建恶意调用数据,窃取 ERC-20 代币以及 Uniswap V3 认可的 NFT。.
此次攻击的目标是那些已授权使用“即时流动性管理”功能的用户。.
在一次典型的 Ethereum攻击中,攻击者创建了一个trac,仅用 100 wei 的 ETH 就调用了存在漏洞的函数。在将原生代币封装成 WETH 后,恶意调用了 WBTC.transferFrom() 函数,攻击者通过指定自己的交换输出值,绕过余额检查,从而窃取已获批准的代币。.
此次dent促使这两个协议重新评估其安全策略。首先,这两个协议都要求用户使用cash等工具撤销授权。.
Matcha Meta 表示,已禁用允许用户关闭一次性审批功能的开关。同时,该公司已将 SwapNet 从其平台移除,直至另行通知。该公司还表示:“我们绝不会为了追求自定义功能而牺牲安全性。”
Aperture Finance公司表示,已禁用所有受影响的Web应用程序功能。关于追回工作,该公司表示:“我们正与顶尖的取证安全公司密切合作,并与执法部门协调trac资金”,同时补充说,公司也在建立渠道,协商资金返还事宜。
想让你的项目出现在加密货币领域的顶尖人才面前吗?欢迎在我们的下一份行业报告中进行专题报道,让数据与影响力相遇。