Cointime

扫码下载App
iOS & Android

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保驾护航。 

Numen 官网

https://numencyber.com/

GitHub

https://github.com/NumenCyber

Twitter

https://twitter.com/@numencyber

Medium

https://medium.com/@numencyberlabs

LinkedIn

https://www.linkedin.com/company/numencyber/

评论

所有评论

推荐阅读

  • Trend Research 再次从币安提取 7960 枚 ETH,今日共购入 17899 枚 ETH

    据链上分析师余烬监测,Trend Research 刚才继续从币安提回 7960 枚 ETH(2474 万美元),今天一共购买了 17899 枚 ETH(5558 万美元)。现在他们一共持有 64.46 万枚 ETH(20 亿美元),成本均价 3182 美元。

  • 贝莱德旗下PFF ETF持有价值3.8亿美元的Strategy优先股

    比特币财库公司Strategy旗下永续优先股Stretch (STRC) 已成为贝莱德iShares优先股和收益证券ETF(PPF ETF)的第四大持仓,配置额为2.1亿美元,该ETF还持有多只其他Strategy优先股,总价值约合3.8亿美元,包括: 1、配置 9750 万美元、权重为 0.69% 的Strife (STRF); 2、配置 9000 万美元、权重为 0.64% 的MSTR普通股; 3、配置 7300 万美元、权重为 0.51% 的Stride (STRD)。

  • 贝森特谈美联储:特朗普可能最快下周做出美联储主席人选决定

    贝森特谈美联储:特朗普可能最快下周做出美联储主席人选决定。贝森特:鲍威尔领导下的几位美联储官员存在道德问题。美联储因不合时宜的资产购买而损失了数十亿美元。

  • 葡萄牙监管机构勒令 Polymarket 停止在该国运营

    葡萄牙博彩监管机构 SRIJ 已勒令基于区块链的预测市场 Polymarket 在 48 小时内停止在该国的运营,此前该平台上针对总统选举结果的投注额超过 1.03 亿欧元(约 1.2 亿美元)。监管机构指出,Polymarket 未持有葡萄牙博彩牌照,且该国法律禁止对政治等现实事件结果进行投注,仅允许体育、赌场游戏和赛马投注。目前 Polymarket 在葡萄牙仍可访问,但该国监管机构或很快要求互联网服务提供商对其进行屏蔽。

  • 倒计时5天!Cointime战略合作非小号海南峰会,共绘全球化“价值地图”

    距离备受瞩目的“非小号带你飞·飞向纳斯达克”年度行业峰会正式启幕,仅剩最后5天。作为本次峰会的战略合作媒体,Cointime将与主办方非小号(Feixiaohao.ai)紧密协作,以其全球化的媒体网络,为峰会提供覆盖全球的多语言报道。

  • BTC跌破92000美元

    行情显示,BTC跌破92000美元,现报91964.8美元,24小时跌幅达到0.81%,行情波动较大,请做好风险控制。

  • YZi Labs宣布对链上交易终端Genius进行投资

    据官方博客,YZi Labs宣布已投资链上专业交易终端Genius,旨在加速构建一个私密、高速的链上交易平台。此项投资旨在支持能够提供中心化交易所级别的速度、流动性和私密性,同时保持用户完全自有资产的基础设施。

  • 美国不会拒绝稳定币:稳定币 2026 前瞻

    生息机制,在链上生息稳定币跑过三轮之后,仍然是现实金融业有待追赶的热点,我们生活在巨大的差距里,币圈跑得快,TradFi 规模大。

  • 美联储主席争夺战突发变局:哈塞特暗示出局,沃什胜率飙升

    白宫经济顾问哈塞特公开表示,特朗普可能更倾向于让他留任现职,这意味着他很可能退出下一任美联储主席的角逐。预测市场数据显示,前美联储理事沃什的支持率已飙升至 60%,哈塞特则跌至 16%。

  • a16z:万物 Palantir 化背后,一场注定失败的模仿秀

    a16z 合伙人 Marc Andrusko 泼了盆冷水:绝大多数公司只是在复制皮毛,最终会沦为披着 SaaS 外衣的咨询公司。这篇文章拆解了 Palantir 模式真正可复制的部分,以及哪些只是美丽的幻觉。