安全实验室监测到以太坊上的DeFi协议IndexedFinance遭遇闪电贷袭击,损失超1600万美元。知道创宇区块链安全实验室第一时间跟踪本次事件并分析。攻击过程简述
分析攻击交易:
0x44aad3b853866468161735496a5d9cc961ce5aa872924c5d78673076b1cd95aa
首先使用闪电贷通过Uniswap和ShushiSwap获取启动资金
2.通过借贷的AAVE/COMP/CRV/MKR/SNX代币兑换矿池DEFI5中的UNI代币(合约规定不允许转账超过矿池一半的代币存量以及兑换超过三分之一的代币存量,所以黑客进行了多次兑换)
MakerDAO投票决定将GUSD保留在DAI稳定币的储备中,债务上限不变:1月20日消息,MakerDAO旨在限制DAI对Gemini的敞口的两项民意调查投票均已结束。其中,一项将GUSD保险库的tout(将DAI换回抵押资产收取的百分比费用)设置为零的提案的支持率为73.66%,这意味者用户可以免费将DAI换回GUSD。
而在另一项将调整GUSD PSM债务上限的提案中,50.85%的选票支持维持5亿枚DAI的债务上限,债务上限减少至0 Dai和1亿枚Dai的投票支持率分别为49.15%和0%,这意味着GUSD将按照之前的5亿枚债务上限保留在DAI稳定币的储备中。[2023/1/20 11:22:30]
3.通过将UNI代币用于添加流动性铸造DEFI5LP代币
数据:5600万USDT从Kraken转移到Bitfinex:金色财经报道,据Whale Alert数据显示,56,000,000 USDT(56,066,019美元)从Kraken转移到Bitfinex。[2023/1/15 11:13:22]
4.向DEFI5矿池添加SUSHI代币
5.燃烧DEFI5LP代币获得AAVE/COMP/CRV/MKR/SNX/SUSHI代币
6.通过将SUSHI代币用于添加流动性铸造DEFI5LP代币
BitMEX现货交易额已超过1000万美元:金色财经报道,数据显示,BitMEX Spot Exchange现货交易交易额已超过1000万美元。
此前消息,BitMEX 宣布推出面向零售和机构交易者推出现货交易业务和服务平台BitMEX Spot Exchange,现阶段支持七个加密货币交易对支持七对加密货币,包括比特币 (XBT)/ USDT、以太坊 (ETH) )/ USDT、Chainlink (LINK) )/ USDT、Uniswap (UNI) )/ USDT、Polygon (MATIC) )/ USDT、Axie Infinity (AXS) )/ USDT 和 ApeCoin (APE) )/ USDT。(美通社)[2022/5/19 3:27:34]
7.燃烧DEFI5LP代币获得AAVE/COMP/CRV/MKR/SNX/SUSHI代币
8.归还闪电贷并将获利转移
漏洞成因分析
通过攻击简述获取有效信息
1.黑客有意控制矿池中UNI代币总量
2.黑客向矿池中添加了新代币SHSHI
3.黑客通过铸造、燃烧LP代币获利
通过源码分析漏洞成因
1.检查源码发现函数extrapolatePoolValueFromToken被用于寻找矿池中第一个初始化且具有权重的代币,据官方解释该函数作用于以该代币描述整个矿池的价值——即如果矿池中有10个UNI,权重为10%,那么该矿池总价值为100UNI。
由此黑客控制矿池中UNI代币总量得到解释,该行为是为了控制矿池总价值。
2.检查源码发现函数setMinimumBalance和函数gulp可以添加新代币并获得极大的权重。?由此黑客向矿池添加新代币SUSHI得到解释,该行为是为了获得可控且具有极大权重的代币。
综合分析
合约设计中矿池的总价值被矿池中第一个初始化且具有权重的代币用来描述,该代币总量可被攻击者控制
合约中可添加新代币,新代币可占据极大权重,添加新代币方式可被攻击者控制
合约中的资产可通过铸造、燃烧LP代币控制,铸造LP代币方式可被攻击者控制
综述该漏洞成因就是用一种代币来描述整个矿池的价值,官方也给出了修改方案:取消该模式替换为用矿池中所有代币余额的组合值来描述。
总结
此次攻击属于对矿池价值的单一描述,很容易被他人操控,开发人员应避免此类事件。
知道创宇区块链安全实验室?提醒各项目方,合约安全作为直接保障资金的防线需要得到最高的重视,合约审计、风控措施、应急计划等都有必要切实落实。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。