1.前言
北京时间3月15日晚,知道创宇区块链安全实验室监测到Gnosis链上的借贷类协议HundredFinance与Agave均遭遇了闪电贷袭击,包括AAVE的分支Agave和Compound的分支HundredFinance。协议损失超1100万美元。目前项目方已暂停其数百个市场。
知道创宇区块链安全实验室第一时间跟踪本次事件并分析。
Hunt Town联创:币安Bicasso产品窃取我们在BNB Chain黑客松上的创意:3月2日消息,针对币安推出可将创意转化为NFT的AI产品Bicasso,Web3构建者公会项目Hunt Town联合创始人project7及其团队成员ggoma发推文称,我从来没有想过币安会复制我在BNB Chain黑客松上提供的服务。币安窃取我们项目的故事,我们在曾在BNB Chain黑客松上获得了第一名。
根据project7去年12月发布的推文,Hunt Town在2022年12月17日至19日举行的BNB Chain Innovation Hackathon 中获得了第一名。其还在同日的推文中表示,我在想一些新的东西可以与Dixel Club和Mint Club结合,但我认为将OpenAI应用到NFT工具中会非常有趣,所以我连夜制作的Chatcasso项目,只需输入文字,AI就会生成一幅画。这是一个可以绘制图像、发布收藏甚至创建铸币界面的工具。此条推文附有其在该黑客松活动中的讲解视频。[2023/3/2 12:38:38]
2.分析
多链NFT游戏Blockchain Monster Hunt宣布KCC上线测试网:12月12日消息,多链NFT游戏Blockchain Monster Hunt(BCMH)发推称,新链KCC已上线测试网。据介绍,BCMH是一个完全在区块链上运行的多链游戏,玩家可以在多个链上玩游戏,并鼓励它们之间进行交互。游戏最初在以太坊、BSC和Polygon上运行,团队将在后续版本中逐步扩展到其他EVM以及非EVM链。现在在测试网中使用的是BCMH官方研发的Ambros EVM链。[2021/12/12 7:34:03]
2.1攻击者相关信息
百金融被攻击tx:
0x534b84f657883ddc1b66a314e8b392feb35024afdec61dfe8e7c510cfac1a098
攻击合约:0xdbf225e3d626ec31f502d435b0f72d82b08e1bdd
攻击地址:0xd041ad9aae5cf96b21c3ffcb303a0cb80779e358
企业云办公软件公司Phunware再次以497.5万美元购入100枚比特币:12月9日消息,企业云办公软件公司Phunware宣布以约497.5万美元的现金再次购买了100枚比特币,平均每比特币价格约为49,750美元。
截至2021年12月9日,Phunware总共持有约630个比特币,这些比特币的总购买价格约为3680万美元,平均购买价格约为每枚比特币58513美元。(globenewswire)[2021/12/9 7:28:51]
攻击后跨链匿名化:https://etherscan.io/txs?a=0xd041ad9aae5cf96b21c3ffcb303a0cb80779e358
龙舌兰被攻击tx:
0xa262141abcf7c127b88b4042aee8bf601f4f3372c9471dbd75cb54e76524f18e
攻击合约:0xF98169301B06e906AF7f9b719204AA10D1F160d6
攻击地址:0x0a16a85be44627c10cee75db06b169c7bc76de2c
大数据公司Phunware以大约2380万美元购买了额外的398枚比特币:11月22日消息,市场消息,大数据公司Phunware以大约2380万美元购买了额外的398枚比特币,平均价格约为59917美元/枚。[2021/11/23 7:05:18]
攻击后跨链匿名化:https://etherscan.io/txs?a=0x0a16a85be44627c10cee75db06b169c7bc76de2c
2.2攻击流程
由于百金融与龙舌兰攻击流程与手法类似,因此我们使用百金融进行分析。
百金融攻击调用流程
1、攻击者利用合约在三个池子中利用闪电贷借出WXDAI和USDC
CyberVein 受邀出席第四届ChainSights峰会并宣布“Token Hunt”品牌活动:据官方消息称 9月5日,CyberVein 中国区联合发起人Jerry受邀出席第四届《ChainSights全球区块链与数字金融峰会》,宣布开启CVT全国范围内的“Token Hunt”活动。在会上,Jerry表示:“以后只要是CVT的市场活动,都会给每个支持CVT技术和热爱CVT的粉丝准备大礼包,以此回赠市场。”
据了解,9月CVT还将开展第三站全国品牌行、出席金色财经主办的《共为创业者大会》和《2020厦门国际投资贸易洽谈会》。同时线上AMA和空投等活动也将在本月陆续发布,间接影响用户十万人次。
据OKEx交易所数据显示,CVT当前价格为0.115 usdt/cvt,市值在全球排名前60名。[2020/9/5]
2、在WETH池子质押借出的部分USDC
3、利用重入利用一笔质押,超额借出池子中资金
4、重复质押-重入借出步骤,将其他两个池子资产超额借出
5、归还闪电贷
6、获利转移
2.3漏洞细节
导致本次问题的根本原因是由于在Gnosis链上的官方桥接代币xDAI合约中实现了一个对于to地址的回调
合约实现地址:
https://blockscout.com/xdai/mainnet/address/0xf8D1677c8a0c961938bf2f9aDc3F3CFDA759A9d9/contracts
该回调将直接导致重入漏洞的产生,同时由于在HundredFinance团队fork的Compound版本中没有严格遵循检查-生效-交互,进而导致了总借贷量更新晚于重入实现。最终攻击者得以超额借贷。
类似的,对于Agave项目方,攻击者利用liquidateCall函数内部调用会调用xDAI的callAfterTransfer方法进行回调,最终导致攻击者能再次进行借贷。
在百金融攻击中攻击者重入的调用路径如下:
在Agave攻击中攻击者回调路径如下:
3.总结
此次遭受攻击的两个借贷项目由于错误的引入了存在重入的token,同时项目方的fork的代码没有采用检查-生效-交互模式导致了问题的发生。
我们强调:对于一个优秀的项目的引用必须建立在足够的理解和严谨的开发上,尤其是存在差异化的部分,切忌顾此失彼最终因为一个小的差错导致项目全部的损失。
近期,各类合约漏洞安全事件频发,合约审计、风控措施、应急计划等都有必要切实落实。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。