前言

据推文音讯,6 月 10 日,BSC 链上的 EvoDeFi 项目遭到闪电贷进犯,知道创宇区块链安全实验室第一时间盯梢本次事情并剖析。

剖析

进犯者:
0x8a0a1eb0bae23e4e95608e3aad7fa25b0d907c6c
进犯合约:
0x1cb6d29c52fd993103eadd0c01209ba000e92459
进犯 tx:
0x7c3b7f082a5c92b03a878ff5d7c7e645ce3bcd37901808b936b318c4f3cc3880、

BSC链的EvoDeFi遭闪电贷攻击事件分析

子合约 1:
0x5eD40eC8Bd35134f273EC8cEaE1170B783FfD8c9
子合约 2:
0xC3CA2B0dA8faE38b343eC3DcDBec79255C19F397
子合约 3:
0x79B105423e72E8ae9f4B7972f61fb1126C49a034
子合约 4:
0x00A8b07a2f8087BD611299396d4C693C385c5c12
子合约 5:
0x7C5dD8Ec1edd40Fd6c670fc552A4D48bb8BE2d62
子合约 6:
0x78e480357852a2610951437e764702b8188b36d2
MasterChef:
0xF1F8E3ff67E386165e05b2B795097E95aaC899F0

进犯流程

  • 经过 Pancake 闪电贷借出 273,360.811 GEN

  • 向子合约转账一切 GEN ,调用子合约 0x6ead30df 方法

  • 调用 MasterChef 的 deposit 函数,质押一切 GEN

  • 调用 MasterChef 的 depositNFT 函数,质押 GenNFT

  • 调用 MasterChef 的 updatePower 函数更新,因为 updatePower 函数设计缺点,未更新 rewardDebt

  • 调用 MasterChef 的 withdraw 函数,赎回质押的一切 GEN,因为上一步的更新缺点导致奖赏增发

  • 经过子合约 transfer 函数将获利的一切 GEN 转回进犯合约 0x1cb6

  • 经过 6 个子合约重复上述 2-7 步骤,最后合计获利 455,576.855 GEN

BSC链的EvoDeFi遭闪电贷攻击事件分析

总结

因为 MasterChef 合约中的函数的更新逻辑存在设计缺点,未更新奖赏需求扣除的部分,然后导致被进犯者套利。BSC 链上频频爆发进犯事情,合约安全需求得到足够重视。

视野开拓

1609年(万历三十七年),世界上第一个证券交易所在阿姆斯特丹诞生。 而同期的中国,却是另一番因缘际会,中央集权与王权的趋势正在走向巅峰。“普天之下,莫非王土;率土之滨,莫非王臣”——没有产权,更无从谈及产权保护,-《金钱永不眠》

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注