您现在的位置是:首页 币资讯币资讯
Euler Finance遭闪电贷攻击 损失1.97亿美金 漏洞分析附PoC
风清月明 2024-07-05 03:07:51 币资讯 已有人查阅
导读Euler Finance遭闪电贷攻击 损失1.97亿美金 漏洞分析附PoC
根据Numen链上监控显示,Mar-13-2023 08:56:35 AM UTC,Euler Finance 项目因为Etoken中的donateToReserves函数缺少流动性检查而遭到闪电贷攻击。黑客通过不同币种多次调用完成获利,本次攻击共计损失1.97亿美元,金额巨大,涉及6种代币。当前,资金还存留在黑客的账户中。
黑客地址:https://etherscan.io/address/0xb66cd966670d962c227b3eaba30a872dbfb995db
黑客合约:https://etherscan.io/address/0x036cec1a199234fc02f72d29e596a09440825f1c
攻击交易(其中一笔): https://etherscan.io/tx/0xc310a0affe2169d1f6feec1c63dbc7f7c62a887fa48795d327d4d2da2d6b111d
详细分析1.黑客先从Aave闪电贷借了3000W个Dai后部署了两个合约,一个是借贷合约,一个是清算合约。
2.调用deposit函数将借来的Dai其中的20 M个质押到 Euler Protocol合约中获取了19.5M个eDAI。
3.Euler Protocol可以调用mint函数借出10倍存款,此时黑客从中借出了195.6M个eDAI 和200M个dDAI。
4.调用repay函数,用闪电贷剩余的10M个DAI偿还债务并且销毁了10M个dDAI,然后继续调用min函数借出195.6M个eDAI 和200M个dDAI。
5.调用 donateToReserves函数捐赠10倍的偿还资金,发送了100M的eDAI,并调用 liquidate函数去清算,得到310M的dDAI和250M的eDAI。
6.调用withdraw函数获取了38.9M的Dai并且去归还了借的闪电贷30M。从中获利8.87M个Dai。
漏洞成因先看一下donateToReserves函数,用户能够被清算是在这一步发生的。
与下图的mint函数对比我们发现,donateToReserves函数少了一个关键步骤checkLiquidity。
然后跟进看 checkLiquidity的实现。我们发现了callInternalModule函数,它会调用RiskManager对用户进行检查保证Etoken>Dtoken。
在每次操作的时候需要对用户的流动性进行检查,调用checkLiquidity完成,而donateToReserves这个函数没有执行此操作,导致用户可以通过该协议的某些函数先使自己处于被清算的状态,然后在完成清算。
攻击复现我们成功复现了此次攻击,详细PoC可查看链接:https://github.com/numencyber/SmartContractHack_PoC/tree/main/EulerfinanceHack
总结Numen实验室提醒项目方,合约在上线前要做好安全审计,保证合约安全性,对于借贷类项目需要特别关注资金偿还,流动性检测,债务清算等问题。Numen实验室专注于为WEB3保驾护航。
原文链接: Euler Finance遭闪电贷攻击,损失1.97亿美金!漏洞分析附PoC
文章来源于binance交易所。
binance安卓下载:立即前往binanceIOS下载:立即前往
| 欧意交易所最新推荐 | ||
| OK交易所下载 | USDT钱包下载 | 比特币平台下载 |
| 挖比特币方法 | 买稳定币教程 | 钱包注册指南 |
本文标签: 交易所
很赞哦! ()
相关文章
随机图文
2025年binance币安下载指南:新手用户注册及APP下载安装教程
binance币安作为全球知名的加密货币交易平台,为数字资产管理和提供便捷之一,许多中国大
binance币安x是哪个国家的?解析背景、发展与使用指南
当投资者和加密货币爱好者提及“binance”时,一个最基础也最内核的问题便是:“binance究
虚拟货币交易所哪间好?2025加密货币交易所评价
虚拟货币、加密货币没有特定国家或地区发行,可以全世界通用不需要换汇,另外,它不用付手
币安空投赚币是什么?跟简单赚币有什么区别?币安空投赚币图文教学
币安 空投赚币是币安 交易所推出的不定期好康活动,你只需投入USDT、BTC 等指定币种,就能