Euler Finance sofreu um ataque de empréstimo flash de 200 milhões de dólares. A vulnerabilidade do contrato inteligente foi a causa.

Euler Finance sofreu ataque de empréstimo flash, com perdas de quase 200 milhões de dólares.

No dia 13 de março de 2023, o projeto Euler Finance sofreu um ataque de empréstimo flash devido a uma vulnerabilidade no contrato inteligente, resultando em uma perda de cerca de 197 milhões de dólares. O atacante explorou a vulnerabilidade na função donateToReserves do contrato, que não tinha verificação de liquidez, obtendo lucros enormes através de múltiplas operações.

Análise de Vulnerabilidades do Euler Finance: Como Sofrer um ataque de empréstimo flash, perda de 1.97 bilhões de dólares!

Análise do Processo de Ataque

  1. O atacante primeiro emprestou 30 milhões de DAI através de um Empréstimos Flash de uma plataforma de empréstimos e implantou dois contratos: contrato de empréstimo e contrato de liquidação.

  2. Pledge 20 milhões de DAI emprestados ao contrato do Euler Protocol, obtendo cerca de 19,5 milhões de eDAI.

  3. Usando a função de alavancagem de 10x do Euler Protocol, empreste 195,6 milhões de eDAI e 200 milhões de dDAI.

  4. Usar os restantes 10 milhões DAI para reembolsar parte da dívida e queimar a correspondente dDAI, em seguida, tomar emprestado novamente a mesma quantidade de eDAI e dDAI.

  5. Chame a função donateToReserves para doar 100 milhões de eDAI e, em seguida, liquide através da função liquidate, obtendo 310 milhões de dDAI e 250 milhões de eDAI.

  6. Por fim, retirar 38,9 milhões de DAI, devolver 30 milhões de DAI do Empréstimos Flash, lucros líquidos de cerca de 8,87 milhões de DAI.

Análise de Vulnerabilidade do Euler Finance: Como Sofrer um Ataque de Empréstimo Flash, Perda de 1.97 Bilhões de Dólares!

Análise de vulnerabilidades da Euler Finance: como sofrer um ataque de empréstimo flash, perda de 197 milhões de dólares!

Análise de vulnerabilidades do Euler Finance: como sofreu um ataque de empréstimo flash, perda de 197 milhões de dólares!

Análise de vulnerabilidades da Euler Finance: como sofrer um ataque de empréstimo flash, perda de 197 milhões de dólares!

Análise de vulnerabilidades da Euler Finance: como sofrer um ataque de empréstimo flash, perda de 197 milhões de dólares!

Análise de vulnerabilidade do Euler Finance: como sofrer um ataque de empréstimo flash, perda de 197 milhões de dólares!

Análise de Vulnerabilidade do Euler Finance: Como Sofreu um Ataque de Empréstimo Flash, Perda de 197 Milhões de Dólares!

Análise de vulnerabilidade do Euler Finance: como sofreu um ataque de empréstimo flash, perda de 197 milhões de dólares!

Análise de vulnerabilidades da Euler Finance: como sofrer um ataque de empréstimo flash, perda de 197 milhões de dólares!

Causa da vulnerabilidade

A principal razão para o sucesso do ataque foi a falta de uma verificação de liquidez necessária na função donateToReserves. Comparado a outras funções críticas (como mint), donateToReserves não chamou a função checkLiquidity para validar o estado de liquidez do usuário. Isso permitiu que os atacantes manipulassem suas próprias contas para entrar em um estado que poderia ser liquidado e lucrar com isso.

Normalmente, a função checkLiquidity chama o módulo RiskManager para garantir que a quantidade de Etoken do usuário seja maior que a quantidade de Dtoken, a fim de manter a saúde da conta. No entanto, a função donateToReserves pulou esta etapa crucial, criando uma oportunidade para um ataque.

Análise de vulnerabilidades da Euler Finance: como sofrer um ataque de empréstimo flash, perda de 197 milhões de dólares!

Lições e Sugestões

Este evento mais uma vez destaca a importância da auditoria de segurança de contratos inteligentes. Para projetos de empréstimo, é especialmente necessário prestar atenção aos seguintes aspectos:

  1. Integridade do mecanismo de reembolso de fundos
  2. Abrangência da detecção de liquidez
  3. Segurança do processo de liquidação de dívidas

Antes do lançamento do contrato, a equipe do projeto deve realizar uma auditoria de segurança abrangente e rigorosa, a fim de garantir a segurança e estabilidade do contrato. Além disso, a monitorização contínua da segurança e a correção oportuna de vulnerabilidades também são indispensáveis.

Com o rápido desenvolvimento das finanças descentralizadas, eventos de segurança semelhantes podem continuar a surgir. Os desenvolvedores e as equipes de projeto precisam manter-se alerta, aprendendo e melhorando constantemente, para construir um ecossistema de blockchain mais seguro e confiável.

EUL-1.09%
Ver original
Esta página pode conter conteúdo de terceiros, que é fornecido apenas para fins informativos (não para representações/garantias) e não deve ser considerada como um endosso de suas opiniões pela Gate nem como aconselhamento financeiro ou profissional. Consulte a Isenção de responsabilidade para obter detalhes.
  • Recompensa
  • 6
  • Repostar
  • Compartilhar
Comentário
0/400
ChainComedianvip
· 08-12 11:55
Mais um projeto bull que virou um desastre.
Ver originalResponder0
OfflineNewbievip
· 08-12 11:53
idiotas又被 fazer as pessoas de parvas啦~
Ver originalResponder0
SmartMoneyWalletvip
· 08-12 11:46
197 milhões de dólares? Esta técnica é muito primitiva, mas o volume de capital não é pequeno.
Ver originalResponder0
SolidityStrugglervip
· 08-12 11:46
Mais uma vez, o culpado é o contratos inteligentes.
Ver originalResponder0
MetaRecktvip
· 08-12 11:32
又双叒preso了
Ver originalResponder0
FadCatchervip
· 08-12 11:28
Outro projeto de ferro Puxar o tapete
Ver originalResponder0
  • Marcar
Faça trade de criptomoedas em qualquer lugar e a qualquer hora
qrCode
Escaneie o código para baixar o app da Gate
Comunidade
Português (Brasil)
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)