根据 NUMEN 链上监控显示,May-28-2023 12:24:52 AM +UTC, Arbitrum 链上 JimboController 遭到攻击,损失4,090枚 ETH,价值约750万美元。

目前攻击者已将所有 ETH 跨链至 Ethereum。

资金转移地址:

0x5f3591e2921d5c9291f5b224e909ab978a22ba7e

事件分析

攻击者地址:

0x102be4bccc2696c35fd5f5bfe54c1dfba416a741

攻击合约:

0xd4002233b59f7edd726fc6f14303980841306973

被攻击合约:

0x271944d9D8CA831F7c0dBCb20C4ee482376d6DE7

攻击交易:

0x44a0f5650a038ab522087c02f734b80e6c748afb207995e757ed67ca037a5eda

攻击流程

1.攻击者通过闪电贷借取10,000枚 ETH 作为初始资金。

2.随后将 ETH 在[ETH-JIMBO]交易对兑换获取大量 JIMBO,并拉高了 JIMBO 的价格。

3.攻击者向 JimboController 合约转移了100枚 JIMBO 代币。

4.调用 JimboController.shift() 重新更新交易对池子数量。

5.之后将获取到的 JIMBO 兑换为 ETH 并归还闪电贷,获利离场。

漏洞分析

本次攻击利用了 JimboController 合约中的漏洞,它允许任意人使用 shift() 函数让合约执行移除和添加流动性操作,shift() 函数会把该合约的资金拿去添加流动性,以至于 JimboController 合约的 WETH 会被全部添加流动性。

这时候由于池子中 WETH 和 JIMBO 的价格并不平衡,在添加流动性时会根据当前价格计算所需代币数量,导致攻击者可以获得更多的 WETH。

END

Numen 官网

GitHub

Twitter

Medium

LinkedIn

微信里点“发现”,扫一下二维码便可将本篇文章分享至朋友圈