freeBuf
主站

分类

漏洞 工具 极客 Web安全 系统安全 网络安全 无线安全 设备/客户端安全 数据安全 安全管理 企业安全 工控安全

特色

头条 人物志 活动 视频 观点 招聘 报告 资讯 区块链安全 标准与合规 容器安全 公开课

点我创作

试试在FreeBuf发布您的第一篇文章 让安全圈留下您的足迹
我知道了

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

慢雾:Rikkei Finance 被黑复现分析
2022-04-21 19:11:54
所属地 福建省

2022 年 04 月 15 日,由于恶意攻击,Rikkei Finance 的五个资金池 (USDT, BTC, DAI, USDT, BUSD) 中近乎全部代币被盗。

慢雾

慢雾安全团队将复现分析结果分享如下:

相关信息

Rikkei Finance 是 BSC 上的一个 DeFi 借贷平台。

以下是本次攻击涉及的相关地址:

攻击者地址:

https://bscscan.com/address/0x803e0930357ba577dc414b552402f71656c093ab

攻击合约:

https://bscscan.com/address/0xe6df12a9f33605f2271d2a2ddc92e509e54e6b5f

攻击交易:

https://bscscan.com/tx/0x93a9b022df260f1953420cd3e18789e7d1e095459e36fe2eb534918ed1687492

攻击核心点

此次 Rikkei Finance 遭受攻击的根本原因是 setOracleDate 函数调用的权限控制缺失导致预言机价格被恶意操纵。

具体细节分析

1. 攻击者用 0.0001 BNB 兑换一些 rBNB 作为抵押物,rBNB 合约地址为

https://bscscan.com/address/0x157822aC5fa0Efe98daa4b0A55450f4a182C10cA

慢雾

2. 对 rBNB 设置恶意预言机,合约地址为

https://bscscan.com/address/0xd55f01b4b51b7f48912cd8ca3cdd8070a1a9dba5

慢雾

慢雾

部署的恶意预言机地址为

https://bscscan.com/address/0xA36F6F78B2170a29359C74cEFcB8751E452116f9,其反编译得到:

慢雾

可以看到,预言机返回价格被写成一个巨大的常数。

3. 分别对 rUSDC, rBTC, rDAI, rUSDT, rBUSD 合约进行借贷。由于上一步部署了恶意预言机,rBNB 被认为有高价值,因此能贷出池子中所有币。然后在 pancake 中进行 swap 换成 BNB,攻击者总获利约 2571 枚 BNB。

慢雾

慢雾

4. 攻击者将 BNB 打入 Tornado.Cash:

慢雾

总结

本次攻击事件是由于 Rikkei Finance 项目中的 SimplePriceOracle 合约文件中的 setOracleData 函数缺少鉴权,可以被任意调用。攻击者通过 setOracleData 函数将恶意 Oracle 合约加入到 SimplePriceOracle 中,在借贷时攻击者持有的少量抵押物,由于抵押物的价格是从恶意 Oracle 合约中获取,导致攻击者的抵押物被误认为具有很高价值,从而允许攻击者用少量的抵押物将 Rikkei Finance 池子中的 USDC, BTC, DAI, USDT, BUSD 全部借出。慢雾安全团队建议建议开发合约代码时注意函数的访问权限控制,例如使用 OpenZeppelin 提供的 Ownable.sol 合约。

# 黑客 # 漏洞分析
本文为 独立观点,未经授权禁止转载。
如需授权、对文章有疑问或需删除稿件,请联系 FreeBuf 客服小蜜蜂(微信:freebee1024)
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
相关推荐
  • 0 文章数
  • 0 关注者
文章目录