全球数字财富领导者

SharkTeam:Jimbos protoco闪电贷攻击原理分析

2023-05-29 13:31:16
金色财经
金色财经
关注
0
0
获赞
粉丝
喜欢 0 0收藏举报
— 分享 —
摘要:北京时间2023年5月28日,Jimbos protocol遭受闪电贷攻击,攻击者已获利约750万美元。

北京时间2023年5月28日,Jimbos protocol遭受闪电贷攻击,攻击者已获利约750万美元。

SharkTeam对此事件第一时间进行了技术分析,并总结了安全防范手段,希望后续项目可以引以为戒,共筑区块链行业的安全防线。

攻击者地址:

0x102be4bccc2696c35fd5f5bfe54c1dfba416a741

攻击合约:

0xd4002233b59f7edd726fc6f14303980841306973

被攻击合约:

0x271944d9D8CA831F7c0dBCb20C4ee482376d6DE7

攻击交易:

0x44a0f5650a038ab522087c02f734b80e6c748afb207995e757ed67ca037a5eda

攻击流程:

1.     攻击者(0x102be4bc)通过闪电贷借取10000 枚ETH。

image.png

2.     随后用ETH在交易池中兑换了大量的Jimbo。

image.png

3.     攻击者(0x102be4bc)向被攻击合约(0x271944d9)转移了100枚JIMBO代币

image.png

4.     调用被攻击合约(0x271944d9)的shift函数。

image.png

5.     循环几次上面的操作:

image.png

image.png

6.     最后将Jimbo兑换为ETH并归还闪电贷,获利离场

image.png

漏洞分析:

本次攻击利用了JimboController(0x271944d9)合约中的漏洞,其中的shift函数会让合约执行移除流动性和添加流动性的操作,在添加流动性时JimboController(0x271944d9)合约会发送所有的weth来添加流动性。

攻击者(0x102be4bc)在第二步中使用大量weth换出了流动池中大量的Jimbo币,使池子当中Jimbo的价格很高,这时再调用JimboController(0x271944d9)合约中的shift函数来进行添加流动性的操作,会发送合约中所有的weth到流动池中(包含了合约中原有的weth),这时池子中的weth数量增多但Jimbo的价格仍然很高,攻击者(0x102be4bc)将自己第二步中换出的Jimbo币重新兑换成weth,就可以把池子本身的weth和JimboController(0x271944d9)合约发送的weth一起换出。

image.png

事件总结:

本次事件发生原因是由于JimboController(0x271944d9)合约的shift函数中存在漏洞,任何人都可以调用这个函数来使合约为池子添加流动性,并且会发送出合约中所有的weth来添加流动性,无论价格怎么进行操控后都可以用合约来进行接盘。

针对本次攻击事件,我们在开发过程中应遵循以下注意事项:

1. 在开发关于流动性添加和移除函数时,要更加严谨的注意被价格操控的风险。

2. 项目上线前,需要联系第三方专业的审计团队进行智能合约审计。

    来源:金色财经

    敬告读者:本文为转载发布,不代表本网站赞同其观点和对其真实性负责。FX168财经仅提供信息发布平台,文章或有细微删改。
    go