Euler Finance遭闪电贷攻击 损失1.97亿美元

robot
摘要生成中

Euler Finance遭受闪电贷攻击,损失近2亿美元

近期,一起重大的闪电贷攻击事件震惊了加密货币界。根据链上监控数据显示,2023年3月13日,Euler Finance项目因其智能合约中的一个漏洞而遭到黑客攻击,造成约1.97亿美元的巨额损失。

Euler Finance漏洞分析:如何遭闪电贷攻击,损失1.97亿美金!

攻击者利用了Euler Finance合约中donateToReserves函数缺少流动性检查这一漏洞。通过多次调用不同币种的相关功能,黑客成功从该项目中获取了大量资金。此次攻击涉及6种代币,目前这些被盗资金仍然存留在攻击者的账户中。

攻击过程大致如下:

  1. 黑客首先从Aave平台借入3000万DAI进行闪电贷。

  2. 随后部署了两个合约:一个用于借贷操作,另一个用于清算操作。

  3. 将借来的2000万DAI存入Euler Protocol合约,获得约1950万eDAI。

  4. 利用Euler Protocol的10倍杠杆功能,借出大量eDAI和dDAI。

  5. 通过巧妙操作,多次重复借贷和还款过程。

  6. 最终调用存在漏洞的donateToReserves函数,捐赠10倍于偿还资金的金额。

  7. 触发清算机制,获取大量dDAI和eDAI。

  8. 最后提取近3900万DAI,归还闪电贷后净赚约887万DAI。

Euler Finance漏洞分析:如何遭闪电贷攻击,损失1.97亿美金!

Euler Finance漏洞分析:如何遭闪电贷攻击,损失1.97亿美金!

Euler Finance漏洞分析:如何遭闪电贷攻击,损失1.97亿美金!

Euler Finance漏洞分析:如何遭闪电贷攻击,损失1.97亿美金!

Euler Finance漏洞分析:如何遭闪电贷攻击,损失1.97亿美金!

Euler Finance漏洞分析:如何遭闪电贷攻击,损失1.97亿美金!

Euler Finance漏洞分析:如何遭闪电贷攻击,损失1.97亿美金!

Euler Finance漏洞分析:如何遭闪电贷攻击,损失1.97亿美金!

通过分析合约代码,研究人员发现问题出在donateToReserves函数上。与其他关键函数相比,该函数缺少了checkLiquidity步骤,这导致用户可以绕过流动性检查,人为制造可被清算的状态。正常情况下,checkLiquidity函数会调用RiskManager模块,确保用户的Etoken始终大于Dtoken,以维护系统安全。

Euler Finance漏洞分析:如何遭闪电贷攻击,损失1.97亿美金!

这起事件再次凸显了智能合约安全审计的重要性。对于借贷类项目来说,尤其要注意资金偿还、流动性检测和债务清算等关键环节的安全性。项目方在上线前务必进行全面的安全审计,以防范类似风险。

作为加密货币生态系统中的一员,我们应当从这次事件中吸取教训。它提醒我们,在快速发展的区块链世界里,安全永远是第一要务。开发者需要更加谨慎地设计和实现智能合约,投资者也应该更加警惕潜在的安全隐患。只有不断提高整个行业的安全意识和技术水平,才能建立一个更加稳健、可信赖的去中心化金融体系。

Euler Finance漏洞分析:如何遭闪电贷攻击,损失1.97亿美金!

EUL-2.44%
此页面可能包含第三方内容,仅供参考(非陈述/保证),不应被视为 Gate 认可其观点表述,也不得被视为财务或专业建议。详见声明
  • 赞赏
  • 7
  • 转发
  • 分享
评论
0/400
夜不撸毛vip
· 07-16 06:36
又来割韭菜了~
回复0
LiquidityWhisperervip
· 07-15 19:06
怎么天天被搞
回复0
币圈心理医生vip
· 07-14 19:31
解开这个创伤……老实说,这是智能合约分离焦虑的经典案例
查看原文回复0
Permabull Petevip
· 07-13 10:37
又躺平一个DeFi
回复0
永续多头人vip
· 07-13 10:31
抄底就现在 从不空仓 最终幸存者就是我
回复0
反向指标哥vip
· 07-13 10:26
项目方下手真快...
回复0
ForkTonguevip
· 07-13 10:24
又见智能合约出事了
回复0
交易,随时随地
qrCode
扫码下载 Gate APP
社群列表
简体中文
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)