麻吉大哥重金买入的项目却遭黑客攻击?Jimbos protocol 攻击事件分析

Jimbos protocol 的 JimboController 合约遭受黑客攻击,黑客获利约 750 万美元。

根据官网介绍,Jimbos Protocol 是部署在 Arbitrum 「反应集中流动性」的实验协议,Jimbos Protocol 推出的主要代币 $JIMBO 旨在不同情况下定期重新平衡其协议的流动性,以提高资金利用效率。

我们所熟知的麻吉大哥黄立成,就在前几天曾花费上百万美元购买此项目的代币,在攻击发生之后,其相关代币也一阵暴跌,不知道麻吉大哥现在有何感想。

Beosin 安全团队第一时间对事件进行了分析,现将分析结果分享如下。

事件相关信息

攻击交易

0x44a0f5650a038ab522087c02f734b80e6c748afb207995e757ed67ca037a5eda(其中一笔)

攻击者地址

0x102be4bccc2696c35fd5f5bfe54c1dfba416a741

攻击合约

0xd4002233b59f7edd726fc6f14303980841306973

被攻击合约

0x271944d9D8CA831F7c0dBCb20C4ee482376d6DE7


攻击流程

该攻击交易有多笔,我们用其中一笔进行分析。

1.攻击者首先闪电贷借出 10,000 WETH。

2.攻击者然后使用大量的 WETH 兑换 JIMBO 代币,使其拉高 JIMBO 价格。

3.接着攻击者向 JimboController 合约转移了 100 的 JIMBO 代币,目的是为了后面的添加流动性做准备(因为价格 JIMBO 价格拉高,添加流动性时就只需要很少数量的 JIMBO 代币)。

4.接着攻击者再调用 shift 函数,shift 函数会移除原有的流动性然后添加新的流动性。调用 shift 函数,会把该合约的资金拿去添加流动性,以至于 JimboController 合约的 WETH 会被全部添加流动性。

5.这时候由于在失衡状态添加流动性 ( 添加流动性时,会依靠当前的价格去作为依据,计算代币需要的数量,相当于使用合约接盘了 ),以至于攻击者可以获得更多的 WETH,攻击者最后把 JIMBO 兑换成 WETH 完成获利。

漏洞分析

本次攻击主要利用了 JimboController 合约中的漏洞,它允许任意人使用 shift 函数让合约执行移除和添加流动性操作,使其高位接盘。

 

资金追踪

截止发文时,被盗资金还未被攻击者转出,4048 枚 ETH 仍在攻击地址中:

(https://etherscan.io/address/0x5f3591e2921d5c9291f5b224e909ab978a22ba7e)

总结

针对本次事件,Beosin 安全团队建议:合约开发时,应避免合约被外部操控进行投资;项目上线前,建议选择专业的安全审计公司进行全面的安全审计,规避安全风险。

来源
免责声明:以上内容仅为作者观点,不代表Followin的任何立场,不构成与Followin相关的任何投资建议。
喜欢
收藏
评论