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

robot
Geração de resumo em curso

Euler Finance sofreu um 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 significativa de cerca de 197 milhões de dólares. O atacante explorou a falha na função donateToReserves do contrato, que não tinha verificação de liquidez, e executou o ataque através de múltiplas operações.

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

Análise do Processo de Ataque

Os principais passos do atacante são os seguintes:

  1. De uma plataforma de empréstimo, foi solicitado um empréstimo flash de 30 milhões DAI e foram implementados dois contratos: um para empréstimo e outro para liquidação.

  2. Coloque 20 milhões de DAI em garantia no contrato do Euler Protocol e obtenha 19,5 milhões de eDAI.

  3. Utilizando a funcionalidade de alavancagem de 10x do Euler Protocol, emprestar 195,6 milhões de eDAI e 200 milhões de dDAI.

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

  5. 通过donateToReserves函数捐赠1亿eDAI,然后调用liquidate函数进行清算,获得3.1亿dDAI和2.5亿eDAI。

  6. Por fim, foram retirados 38,9 milhões de DAI, devolvidos 30 milhões de Empréstimos Flash, com lucro líquido 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 197 milhões de dólares!

Análise de vulnerabilidades da Euler Finance: como sofreu 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 sofrer um ataque de empréstimo flash, perda de 1,97 bilhões de dólares!

Análise da 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 sofreu ataque de empréstimo flash, perda de 197 milhões de dólares!

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

Análise da vulnerabilidade do 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 sofrer um ataque de empréstimo flash, perda de 197 milhões de dólares!

Causa da Vulnerabilidade

O núcleo do ataque reside na falta de verificações de liquidez necessárias na função donateToReserves do contrato Euler Finance. Ao contrário de outras funções críticas (como mint), a função donateToReserves não chama checkLiquidity para validar a liquidez do usuário. Isso permite que um atacante, através de operações específicas, se coloque em um estado que pode ser liquidado, e então complete a liquidação para lucrar.

Em condições normais, a função checkLiquidity chamaria o módulo RiskManager, assegurando que o Etoken do usuário esteja sempre superior ao Dtoken, para manter a segurança do contrato. No entanto, a função donateToReserves pulou este passo importante, resultando em uma grave vulnerabilidade de segurança.

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

Lições e Recomendações

Este incidente destaca novamente a importância da auditoria de segurança de contratos inteligentes. Para projetos de empréstimo, é necessário prestar atenção especial aos seguintes aspectos-chave:

  1. A 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

A equipe do projeto deve realizar uma auditoria de segurança completa antes do lançamento, garantindo que cada função do contrato tenha passado por verificações de segurança rigorosas. Além disso, a monitorização contínua de segurança e um programa de recompensas por vulnerabilidades também são medidas eficazes para garantir a segurança a longo prazo do projeto.

Além disso, os desenvolvedores devem prestar atenção à consistência entre as funções, garantindo que as verificações de segurança críticas (como a verificação de liquidez) sejam corretamente implementadas em todas as funções relevantes. Isso não inclui apenas as funções principais, mas também deve abranger funções auxiliares, como doações.

Por fim, recomenda-se que as partes envolvidas no projeto e os desenvolvedores mantenham-se atentos a novas técnicas de ataque, atualizando regularmente as políticas de segurança para enfrentar as ameaças à segurança da blockchain em constante evolução.

EUL8.22%
Ver original
Esta página pode conter conteúdos de terceiros, que são fornecidos apenas para fins informativos (sem representações/garantias) e não devem ser considerados como uma aprovação dos seus pontos de vista pela Gate, nem como aconselhamento financeiro ou profissional. Consulte a Declaração de exoneração de responsabilidade para obter mais informações.
  • Recompensa
  • 7
  • Partilhar
Comentar
0/400
StableGeniusvip
· 9h atrás
bem bem bem... como previsto, outro protocolo aprende sobre rigor matemático da maneira difícil. empiricamente falando, isso era inevitável.
Ver originalResponder0
SelfCustodyBrovip
· 9h atrás
Deita-te e come o melão~
Ver originalResponder0
PoetryOnChainvip
· 9h atrás
Outro contrato crocante condenado
Ver originalResponder0
MevHuntervip
· 9h atrás
Outro vendedor de contratos puxou o tapete.
Ver originalResponder0
SorryRugPulledvip
· 9h atrás
Um contrato sem auditoria técnica não é também uma forma de dar dinheiro.
Ver originalResponder0
0xInsomniavip
· 9h atrás
Mais uma vez, vulnerabilidades em contratos inteligentes
Ver originalResponder0
GasFeeNightmarevip
· 9h atrás
Acordado a noite toda a ver gás, quase fui à falência... dez transações, sete falharam e ainda tenho que pagar o imposto de inteligência aos mineiros.
Ver originalResponder0
Negocie cripto em qualquer lugar e a qualquer hora
qrCode
Digitalizar para transferir a aplicação Gate
Novidades
Português (Portugal)
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)