利用二元期权结算逻辑中的市场 ID 碰撞漏洞,注入式攻击被盗 4.9 万 美元
内射一个专注于去中心化金融的 Layer 1 区块链协议,在 8 月 31 日遭到攻击,其二元期权结算系统中的一个严重漏洞导致约 490 万美元被盗。
攻击者系统性地滥用无需许可的市场创建机制,在19小时内启动了299个即时二元期权市场,每个市场都通过一个自行控制的预言机进行管理,该预言机被故意配置为永不提供报价。预言机代码经过精心构造,可触发无报价退款机制,到期时间和结算时间戳仅相隔几秒。
链上分析显示,该漏洞利用了攻击者在其自身子账户间进行的自撮合交易。攻击者存入抵押品,以操纵的价格建立多空头寸,并利用退款机制,在每个交易周期内提取大约两倍于存入金额的资金。
在有记录的一系列操作中,约 105,000 USDC 产生了超过 204,000 USDC 的提现。这些资金随后通过 CCTP 桥接到以太坊,在 Uniswap 上兑换成 ETH,并集中到地址 0x5a18…69ea 中。截至发稿时,该地址中仍有约 1,980 ETH(约合 4.88 万美元)未被转移。
Injective 链暂停了约 3 小时 42 分钟,从 UTC 时间 16:10 的区块 181,027,006 到 UTC 时间 19:52 的区块 181,027,007。与 Cronos 在最近一次事件后回滚交易不同,Injective 链在断层处仅推进了一个区块,保留了所有已执行的交易。最后一次攻击尝试失败仅仅是因为其结算时间戳在区块生成速度严重减慢的情况下过期,在验证者介入之前,区块生成速度已降至大约 38 分钟的间隔。
技术缺陷和透明度批评
根本原因在于 Injective 核心逻辑中的市场标识符冲突。该协议通过将 oracleType、ticker、quoteDenom、oracleSymbol 和 oracleProvider 连接起来生成 market_id,而没有使用分隔符或长度前缀。这种哈希方案使得攻击者能够创建一个以 INJ 计价的保险基金,该基金的标识符与以 USDC 计价的二元期权市场的标识符冲突。
当结算进入无价格退款流程时,系统试图涵盖人为制造的USDC。 defi引用代码时使用了所附 INJ 基金的原始整数余额。由于代码将最低 INJ 余额视为足以弥补美元计价的资金缺口,因此绕过了剩余头寸之间必要的减值,并允许全额提取人为虚增的余额。
该事件再次引发了人们对 Injective 从 GitHub 上移除其核心链存储库的决定的关注,此前该公司曾辩称此举是为了减少攻击面。
批评人士认为,此次漏洞利用暴露了“隐蔽式安全”的根本局限性:攻击者仅依赖公开的SDK文档、版本高达1.17.2的旧版编译二进制文件以及Frontrunner测试网,就成功地逆向工程发现了该漏洞。与此同时,独立审计人员和白帽研究人员却被剥夺了主动识别该漏洞所需的源代码级访问权限。
沟通失误加剧了技术故障。在系统宕机期间,Injective 的官方社交媒体渠道发布了推广新产品的营销内容,既没有提及此次事件,也没有安抚用户。这种做法与 MANTRA 和 Cronos 等协议形成了鲜明对比,后者都公开披露了近期发生的宕机事件。
攻击者从一个未经验证的智能钱包收到了一条链上赏金消息,但Injective尚未证实官方参与此事,且发送者的身份仍然不明。截至发稿时,该协议尚未就此次漏洞利用、其对用户的影响或计划的补救措施发表任何公开声明。
免责声明:文章中的所有内容仅代表作者的观点,与本平台无关。用户不应以本文作为投资决策的参考。
你也可能喜欢
AI能源爆发与数据上链:加密资产如何重定价
日元贬值何时反转?摩根大通:155-165或成震荡区间,四大信号可能触发日元大涨
巴克莱警告:极端天气,可能推高一系列大宗商品的价格 FCX

9 月加息概率升至 66%,加密等无息资产承压
