1.前言

北京时间 2022 年 3 月 15 日,知道创宇区块链安全实验室监测到 Deus Finance 遭到黑客攻击,损失约 300 万美元。知道创宇区块链安全实验室 第一时间跟踪本次事件并分析。

2.基础信息
攻击者地址:0x1ed5112b32486840071b7cdd2584ded2c66198dd

攻击合约:0xb8f5c9e18abbb21dfa4329586ee74f1e2b685009

DeiLenderSolidex 合约:0xeC1Fc57249CEa005fC16b2980470504806fcA20d

Oracle合约:0x5CEB2b0308a7f21CcC0915DB29fa5095bEAdb48D

交易哈希:0xe374495036fac18aa5b1a497a17e70f256c4d3d416dd1408c026f3f5c70a3a9c

3.漏洞分析
此次事件,漏洞关键在于协议通过 StableV1 AMM - USDC/DEI 交易对在获取价格时被攻击者操控,导致普通用户资产被清算,最终获利。

DeiLenderSolidex 合约的清算函数 liquidate()中,会通过 isSolvent()函数来判断用户是否应该被清算,而 isSolvent()调用 Oracle.getPrice()来问价判断抵押物的价格,因而产生了漏洞


由函数getPrice()可知,代币价格算法:((DEI的余额)+(USDC的余额x1012))x1018 /(代币总量)

DEI的代币价格是通过DEI和USDC在池子中的余额进行判断的的,因此攻击者利用闪电贷发起此次攻击,控制了DEI代币的价格。


4.攻击流程
攻击者从 SPIRIT-LP_USDC_DEI 中闪电贷借出约 970 万 DEI 代币,之后再次使用闪电贷从 sAMM-USDC/DEI 中获取了 2477 万 DEI 代币用于操纵价格预言机

随后清算价格操纵后的破产用户

之后偿还闪电贷到 sAMM-USDC/DEI 中

烧毁流动性代币获取 521 万 USDC 和 524 万 DEI

使用 521 万 USDC 换取 517 万 DEI

归还从 SPIRIT-LP_USDC_DEI 中借的 970 万 DEI

最后攻击者将获取的 DEI 全部换成 USDC,总获利约 300 万美元。

5.总结
本次攻击事件核心是由于价格预言机对代币价格的实现存在问题,使得能够人为的通过池子中代币的余额来对代币价格进行控制,导致了此次事件的发生,建议官方在使用预言机时能够严格控制价格的逻辑实现。

近期,各类合约漏洞安全事件频发,合约审计、风控措施、应急计划等都有必要切实落实。

知道创宇区块链安全实验室|Deus Finance预言机攻击事件分析相关推荐

  1. 知道创宇区块链安全实验室 | OneRing Finance 闪电贷攻击事件分析

    前言 北京时间 2022 年 3 月 22 日,知道创宇区块链安全实验室 监测到 Fantom 生态稳定币收益优化器 OneRing Finance 遭到闪电贷攻击,黑客窃取逾 145万 美元. 分析 ...

  2. 知道创宇区块链安全实验室|危险的授权转账-- Li.Finance 攻击事件始末

    一.前言 北京时间3月20日晚,知道创宇区块链安全实验室 监测到以太坊上分布式跨链协议 Li.Finance 受到了攻击,攻击者执行了37次call注入获取了多个钱包中约60万美元的资产(204个ET ...

  3. 知道创宇区块链安全实验室|Build Finance 惨遭攻击,恶意治理攻击难防御?

    0x01:前言 风投 DAO 组织 Build Finance 在社交媒体发文表示,该项目遭遇恶意治理攻击,攻击者恶意铸造了110万枚BUILD并抛售套利.知道创宇区块链安全实验室第一时间对本次事件深 ...

  4. 知道创宇区块链安全实验室|二月安全事件总结与回顾

    前言 新春二月,知道创宇区块链安全实验室 拓宽了对区块链安全信息收集总结的信息广度,将专注于典型安全事件的视角,拔升到了对整个区块链安全资讯的审视. 以下是知道创宇区块链安全实验室对二月各类型安全资讯 ...

  5. 知道创宇区块链安全实验室|Hundred 与 Agave 闪电贷攻击事件分析

    1.前言 北京时间 3 月 15 日晚,知道创宇区块链安全实验室 监测到 Gnosis 链上的借贷类协议 Hundred Finance 与 Agave 均遭遇了闪电贷袭击,包括 AAVE 的分支 A ...

  6. 知道创宇区块链安全实验室|UmbNetwork 攻击事件分析

    一.前言 北京时间 2022 年 3 月 21 日,知道创宇区块链安全实验室 监测到 BSC 链和以太坊上的 UmbNetwork 奖励池遭到黑客攻击,损失约 70 万美元.实验室第一时间对本次事件进 ...

  7. 知道创宇区块链安全实验室|Ronin 安全事件分析

    前言 Ronin 是新加坡游戏工作室 Sky Mavis 开发的,是为支持游戏 Axie Infinity 而构建的以太坊侧链,使得用户能够自由地将资产转移到其他链上. 北京时间2022年3月29日, ...

  8. 知道创宇区块链安全实验室|Meter.io 攻击事件分析

    前言 北京时间2022年2月5日晚,Meter.io 跨链协议遭到攻击,损失约 430 万美元.知道创宇区块链安全实验室 第一时间跟踪本次事件并分析. 分析 基础信息 tx(Moonriver):0x ...

  9. 创宇区块链|Rari Capital 遭受重入攻击,损失超 8000 万美元

    前言 北京时间 2022 年 4 月 30 日,知道创宇区块链安全实验室 监测到以太坊上 feiprotocol 和 RariCapital 协议中的多个池子遭到重入攻击,导致损失超 8000 万美元 ...

  10. mysql 事件_区块链研究实验室 | 使用MySQL存储以太坊事件

    在本文中,我将演示一种缓存以太坊事件的简单方法.我只想说,通常我们将事务用于链下操作,例如跟踪令牌的传输或检索特定事务的筛选列表,就像一个SQL查询一样. 假设我们想要创建一个跟踪令牌传输的网站,Et ...

最新文章

  1. php mysql备份代码_PHP备份/还原MySQL数据库的代码
  2. 集锦分享 | 200篇原创笔记,帮助你快速入门Python与机器学习
  3. php取得客户端信息类
  4. new与malloc的区别,以及内存分配浅析
  5. 如何将RTC中基于AI的音频算法有效的产品化
  6. window.addeventlistener 不能调用方法_Java入门第十四课:如何定义”方法“
  7. ARM Linux.2.6.34内核移植
  8. 01.Elasticsearch安装
  9. Android学习小Demo(13)Android中关于ContentObserver的使用
  10. OpenCV:solvePnP参数介绍
  11. 银行业务队列简单模拟Java程序设计_PTA 数据结构 银行业务队列简单模拟
  12. PyQt5最全27 绘图之drawLine绘制不同类型的直线
  13. 如何用计算机算cos角度,如何将cosα值换算成角度
  14. Spring动态代理的两种区别
  15. 龙芯2F处理器PMON的编译、加载
  16. 国内首台商用人形双足机器人发展史
  17. 二级分销系统开发源码可以用多久?
  18. excel 设置表头表尾
  19. 100条养生、养心秘笈,值得一看
  20. 实战:战狼2票房数据分析——(2)票房数据构造及保存

热门文章

  1. Java包装类相关知识点
  2. 图神经网络解释性问题综述
  3. Fastlane(一):用法
  4. 泪目了,一位轮椅上的清华博士师兄
  5. SCOI2018滚粗记
  6. 欧几里得算法(求解最大公约数的优质方法)以及原理拓展
  7. java stringbuilder_Java stringBuilder的使用方法及实例解析
  8. 网页编程设计常用的各类标签
  9. Unity中常用的游戏存档/读档技术
  10. 沟通表达的实用技巧和练习方法