Zabu Finance闪电贷安全事件分析
前言
9月12日,知道创宇区块链安全实验室 监测到 Avalanche 上的 DeFi 协议 Zabu Finance 项目遭受闪电贷攻击。实验室第一时间跟踪本次事件并分析。

涉及对象
攻击合约
攻击合约1:
0x0e65Fb2c02C72E9a2e32Cc42837df7E46219F400
攻击合约2:
0x5c9AD7b877F06e751Ee006A3F27546757BBE53Dd
漏洞合约
ZABUFarm:
0xf61b4f980a1f34b55bbf3b2ef28213efcc6248c4
SPORE:
0x6e7f5c0b9f4432716bdd0a77a3601291b9d9e985
漏洞成因分析
漏洞产生原因在于 Defi 协议与代币协议之间的不兼容,其不兼容主要是 zabuFarm 合约质押功能与 spore 合约转账功能出现冲突,下面从双方功能实现逻辑来分析冲突。
zabuFarm合约质押功能
zabuFarm 合约质押功能由函数 deposit 实现

简述 deposit 函数实现逻辑:
1.由传参_pid 获取对应矿池信息与用户信息
2.更新_pid 对应矿池信息,当用户账户不为 0 向用户发送质押已产生奖励
3.将传参_amount 数量的代币从函数调用者转移到该合约
4.更新用户添加的代币以及最新奖励状态
5.触发质押事件
spore合约转账功能
spore 合约转账功能由函数_transferStandard 实现(ps:_transferStandard 函数是 zabuFarm 合约质押功能转账时调用的函数)

简述_transferStandard 函数实现逻辑:
1.由传参 tAmount 通过_getValues 函数获取五个值,分别是 rAmount 实际转账数量, rTransferAmount 收费后转账数量, rFee 实际费用,tTransferAmount 初始转账数量,tFee 初始费用
2.对相应账户进行实际转账代币数量更新
3.通过_reflectFee 函数进行费用记录更新
由此我们可以发现 zabuFarm 合约质押功能与 spore 合约转账功能出现冲突的本质在于 deposit 函数仅是对用户传入转账金额_amount 做用户账户更新记录,而不是对_transferStandard 函数在收取费用后实际转账做用户账户更新记录,导致实际收款小于账户记录,俗称亏本买卖。
简述攻击过程
1.利用攻击合约1 0x0e65,将 WAVAX 代币通过 Pangolin 置换成 SPORE 代币,并质押到 ZABUFarm 合约中;
2.通过攻击合约2 0x5c9A 从 Pangolin 闪电贷借出 SPORE 代币,并利用 SPORE 代币不断在 ZABUFarm 合约进行质押-提现的操作,消耗原本属于ZABUFarm 合约的SPORE 代币,由于 ZABUFarm 合约是通过 SPORE 代币总量计算奖励,攻击合约1 0x0e65 会获得巨额 ZABU 代币奖励;
3.最后取出质押 SPORE 代币,归还闪电贷,抛售 ZABU 代币获利。
总结
此次攻击属于 defi 协议与代币协议之间不兼容导致的,迄今为止此类攻击事件已发生数次,知道创宇区块链安全实验室再次提醒,近期各链上频频爆发攻击事件,合约安全愈发需要得到迫切重视,合约审计、风控措施、应急计划等都有必要切实落实。
郑重声明:本文版权归原作者所有,转载文章仅为传播信息之目的,不构成任何投资建议,如有侵权行为,请第一时间联络我们修改或删除,多谢。
暴跌中币价相当坚挺,从HIP、Vaults以及Token模型的角度再谈Hyperliquid
自2014年门头沟事件起,中心化交易平台的腐败与市场操纵问题便始终困扰着Crypto的所有参与者。...
今日推荐 | 速览Berachain背后助推器Royco:TVL突破30亿美元,跃居Yield协议第二!
过去一年,DeFi生态简直是“开挂”状态,资金如洪水般涌入,机构疯狂布局,大家都在说:这波赚钱机会...
Uniswap V4 正式上线后 ,有哪些值得关注的创新项目?
编者按:文章介绍了 Uniswap V4 的创新性功能,重点阐述了 Hooks 的模块化特性,使开...
波场TRON行业周报:“就职典礼”利好出尽,TRX成WLFI战略储备之一
一.前瞻1. 宏观层面总结以及未来预测市场普遍预计,美联储将在1月30日的会议上决定维持当前的联邦...
来火币HTX过肥年:春节乐翻天,$60万红包抢不停,更多新春福利待领取
春节将至,火币HTX携手波场TRON生态推出“春节乐翻天,$60万红包抢不停”活动,用数字红包传递...