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 小米 华为 单反 装机 图拉丁
 
   -> 区块链 -> Definer 预言机攻击事件分析 -> 正文阅读

[区块链]Definer 预言机攻击事件分析

前言

北京时间 12 月 13 日,知道创宇区块链安全实验室 关注到针对 Definer 预言机的攻击事件。

作为第三方区块链安全机构,受 Definer、Cherryswap 和 OEC 组成的调查小组邀请参与本次攻击事件的技术调查工作。实验室第一时间启动应急,跟踪本次事件进行分析并出具调查报告。

分析

tx:
https://www.oklink.com/en/oec/tx/0x67134b2687945404b7697873a553a8318117dc56004ddaa02d2a6ac85e502e4a?tab=4

在这里插入图片描述

攻击者信息

攻击 tx:0x67134b2687945404b7697873a553a8318117dc56004ddaa02d2a6ac85e502e4a

攻击合约:
0x05806559f7f7732f2d3e71bca2eb12eab1938ceb

被攻击池信息

USDT 池:0xc1b02e52e9512519edf99671931772e452fb4399

OKB 池:0xd63b340F6e9CCcF0c997c83C8d036fa53B113546

BTCK 池:0x33a32f0ad4aa704e28c93ed8ffa61d50d51622a7

ETHK 池:0x75dcd2536a5f414b8f90bb7f2f3c015a26dc8c79

攻击流程

合约方面调用流程

1、攻击合约 0x058065 调用 CherrySwap 的 Flash Swap 功能进行闪电贷(Swap 函数实现的正常功能),贷出了 CHE/OKB 池子中几乎全部的 CHE。此时池子仅剩极少量 CHE

2、抵押给 Definer 借款来的 1000 个 CHE,Definer 预言机计算价格依赖CherrySwap 池中两种代币的余额比例,导致 Definer 预言机计算 1000 个CHE 价格失准,1000 个 CHE 的价值被认为极大值。

在这里插入图片描述

3、攻击者借出 USDT 池子约 462,318 个 USDT

4、攻击者借出 OKB 池子约 37,172 个 OKB

5、攻击者借出 BTCK 池子约 3 个 BTCK

6、攻击者借出 ETHK 池子约 8 个 ETHK

在这里插入图片描述

7、攻击者通过 CherrySwap 的 CHE/USDT 池子利用 10,000 个 USDT 换出 30,765 个 CHE(贷款利息&质押头寸)

8、归还 CherrySwap 闪电贷 1,575,093 个 CHE

在这里插入图片描述

漏洞细节

根据 Definer 各合约部署地址 (https://docs.definer.org/deployed-contracts/addresses),由于预言机(TokenBalancePair: CHE/WOKT)实现过程通过 CherrySwap 池子的两个 Token 在池子的余额来判断价格:

在这里插入图片描述

预言机实现过程中没有考虑到闪电贷贷出时余额大量减少的情况,导致了 Definer 项目方预言机计算失准,从而导致了该事件。

以 USDT 池子为例:
从具体 Transaction 中我们跟进到 SavingAccount 合约的逻辑合约 0xc1b02e52e9512519edf99671931772e452fb4399#priceFromAddress

在该函数中使用 AggregatorInterface(tokenInfo[tokenAddress].chainLinkOracle) 的预言机来询价

在这里插入图片描述

排查获取 AggregatorInterface 中具体调用地址发现,其映射变量位于 TokenRegistry 合约:

在这里插入图片描述

而 TokenRegistry 的合约部署地址根据官方的 deployed-contracts/addresses 可知位于 0x0E16Ada9C4Cf95d6722c65504555124A241DdA81

在这里插入图片描述

在该地址通过对 CHE 代币地址 0x8179d97eb6488860d816e3ecafe694a4153f216c 查询得到对应使用的预言机:

在这里插入图片描述

该地址即为存在漏洞的预言机地址:

在这里插入图片描述

总结

本次事件是由于 Definer 在 OEC 对于预言机的实现存在问题,使用了单一流动池在一个时间点的池内代币余额作为价格源从而导致了事故的发生,而以太坊的实现则使用了 ChainLink 的预言机不存在该问题。

  区块链 最新文章
盘点具备盈利潜力的几大加密板块,以及潜在
阅读笔记|让区块空间成为商品,打造Web3云
区块链1.0-比特币的数据结构
Team Finance被黑分析|黑客自建Token“瞒天
区块链≠绿色?波卡或成 Web3“生态环保”标
期货从入门到高深之手动交易系列D1课
以太坊基础---区块验证
进入以太坊合并的五个数字
经典同态加密算法Paillier解读 - 原理、实现
IPFS/Filecoin学习知识科普(四)
上一篇文章      下一篇文章      查看所有文章
加:2021-12-26 22:14:47  更:2021-12-26 22:15:54 
 
开发: 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/26 0:32:39-

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