IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 区块链 -> 创宇区块链 | Rikkei Finance 遭黑客攻击,损失已有百万美元 -> 正文阅读

[区块链]创宇区块链 | Rikkei Finance 遭黑客攻击,损失已有百万美元

前言

北京时间 2022 年 4 月 15 日,知道创宇区块链安全实验室?监测到 DeFi 协议 Rikkei Finance 遭到黑客攻击,被盗资金中已有 2600 枚 BNB(约合 108.5 万美元)被转入 Tornado Cash。

分析

攻击事件如下图所示:

基础信息

攻击合约:

0xe6df12a9f33605f2271d2a2ddc92e509e54e6b5f

0x9ae92cb9a3ca241d76641d73b57c78f1bcf0b209

攻击者地址:

0x803e0930357ba577dc414b552402f71656c093ab

恶意预言机地址:

0xa36f6f78b2170a29359c74cefcb8751e452116f9

0x99423d4dfce26c7228238aa17982fd7719fb6d7f

攻击 tx:

0x93a9b022df260f1953420cd3e18789e7d1e095459e36fe2eb534918ed1687492 0x4e06760884fd7bfdc076e25258ccef9b043401bc95f5aa1b8f4ff2780fa45d44

被攻击预言机地址:

0xd55f01b4b51b7f48912cd8ca3cdd8070a1a9dba5

流程

攻击者的攻击流程如下:

1.攻击者调用 external 可见性的 setOracleData() 函数将预言机设置为自己的恶意预言机。

2.由于恶意预言机替换了原来的预言机,导致预言机输出的 rTokens 价格可以被攻击任意操控。攻击者向 RBinance 合约发送 0.0001 BNB 获得 4995533044307110.024 rBNB。

3.由于兑换了大量的 rBNB,所以攻击者借出 346199.781 USDC。

4.攻击者将借出的 346199.781 USDC 兑换成 776.298 WBNB。

5.攻击者重复第三步和第四步操作分别借出 3.033 BTCB、52275.873 DAI、297082.798 BSC-USD、299822.459 BUSD 并兑换成相应的 WBNB。

6.将兑换的共 2571.201 BNB 转移到攻击者账户上。

7.最后攻击者再次调用 setOracleData() 还原预言机状态。

另外一次攻击的手法相同,只是先将 BNB 兑换成 BUSD 再转去 RBinance 获得 rBUSD。

细节

问题点就在于 Cointroller 中的 SimplePriceOracle.sol (https://bscscan.com/address/0xd55f01b4b51b7f48912cd8ca3cdd8070a1a9dba5#code) 合约,其 setOracleData 的可见性为 external,可以被外部调用。

?

修改预言机前的正常价格为 416247538680000000000。

将 rToken 0x1578 的预言机修改为恶意预言机 0xa36f。

设置恶意预言机后将 rToken 价格提升到 416881147930000000000000000000000。

后续处理

攻击者将盗取的 BNB 分批次转入 Tornado Cash 中。

Rikkei Finance 官方称将全额补偿漏洞利用攻击中受影响的所有用户。

总结

由于合约没有对 setOracleData 函数的可见性进行限制,导致了攻击者可以任意修改预言机地址,从而获取了从合约中代币,所以我们在写合约时一定要严格限制函数的可见性。

  区块链 最新文章
盘点具备盈利潜力的几大加密板块,以及潜在
阅读笔记|让区块空间成为商品,打造Web3云
区块链1.0-比特币的数据结构
Team Finance被黑分析|黑客自建Token“瞒天
区块链≠绿色?波卡或成 Web3“生态环保”标
期货从入门到高深之手动交易系列D1课
以太坊基础---区块验证
进入以太坊合并的五个数字
经典同态加密算法Paillier解读 - 原理、实现
IPFS/Filecoin学习知识科普(四)
上一篇文章      下一篇文章      查看所有文章
加:2022-04-24 09:31:09  更:2022-04-24 09:31:11 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/25 20:53:26-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码