前?
2022年2月8日,知道创宇区块链安全实验室监测到以太坊上的DeFi协议superfluid遭遇黑客攻击,损失超1300万美元。实验室第一时间跟踪本次事件并分析。
攻击涉及基础信息
Superfluid:0xEBbe9a6688be25d058C9469Ee4807E5eF192897f
OP Labs推出超级链水龙头Superchain Faucet:8月3日消息,OP Labs推出超级链水龙头Superchain Faucet,允许利用链上声誉数据每天在测试网资金中获得高达 1 ETH 的资金。[2023/8/3 16:14:59]
攻击交易hash:0x396b6ee91216cf6e7c89f0c6044dfc97e84647f5007a658ca899040471ab4d67
黑客地址:0x1574F7F4C9d3aCa2EbcE918e5d19d18aE853c090
跨链预言机解决方案SupraOracles与DeFi项目YFDAI FINANCE达成合作:据官方消息,跨链预言机解决方案SupraOracles宣布与DeFi项目YFDAI FINANCE达成合作。
据介绍,YFDAI FINANCE将传统银行与去中心化网络连接起来,提供借贷、保险等服务。其使命是推动金融民主化,推动新一代金融产品的广泛应用。SafeSwap是YFDAI的DEX。
SupraOracles将为YFDAI提供预言机工具包。[2022/7/16 2:16:54]
攻击合约地址:0x32D47ba0aFfC9569298d4598f7Bf8348Ce8DA6D4
唯链基金会和Supply@Me合作开发“Web3”库存货币化系统:金色财经报道,唯链基金会宣布与Supply@Me合作开发“Web3”库存货币化系统,该系统利用区块链、稳定币和NFT技术帮助信誉良好的企业从库存中提高价值,并为企业提供全新经济服务。(雅虎财经)[2022/6/29 1:39:15]
漏洞分析
漏洞核心
此次漏洞核心在于函数callAgreement,该函数主要作用在于提供一个名为"ctx"的数据结构,“ctx”被用于协议间的通信共享。而此次事件的攻击者就是对”ctx“数据进行了伪造,达到合约的目的。
漏洞利用
为什么假数据会被采用以及攻击者是如何构造假“ctx”数据的?
从交易中可以看到攻击者是直接在callData结尾处传入了假“ctx”,同时真“ctx”数据也被构建出来了的,只是程序在处理数据时会将callData数据与“ctx”打包成一个对象,当协议对该对象进行解码时,ABI解码器仅会处理位于前面的数据而忽略掉后面的数据。
而构建一个假“ctx”数据也并不复杂,由于“ctx”结构末尾为全零所以仅需要仿照“ctx”结构将其直接添加在userData中,以下是官方示例如何构建一个假“ctx”:
总结
本次攻击事件在于协议数据处理时无条件信任来源数据,应当对用户数据与官方构造数据进行标识区分。近期,各类合约漏洞安全事件频发,合约审计、风控措施、应急计划等都有必要切实落实。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。