Pular para o conteúdo
Registro de incidente · · 2 min de leitura · 285 palavras ·Descoberto ·Divulgado Resolvido

Ataque via doação na Euler Finance, março de 2023: o que aconteceu e o que verificar

A ausência de uma verificação de saúde em uma função de doação permitiu que um atacante forçasse a própria liquidação com lucro, levando cerca de US$ 197 milhões. Quase tudo foi devolvido.

Compartilhar
Esquema do incidente da Euler Finance mostrando a etapa de lógica de negócio como o ponto de falha.
Schematic of the Euler Finance incident showing the business logic stage as the failure point.

Visão geral

ENTIDADE AFETADA
Euler Finance
BLOCKCHAIN(S)
Ethereum
PERDA RELATADA
aprox. US$ 197 milhões (praticamente tudo devolvido)(Euler Labs, 13 mar 2023)
RESPOSTA OFICIAL
www.euler.finance

A verificação ausente

A Euler permitia que usuários doassem parte do seu saldo às reservas do protocolo. A maioria das funções que alteram estado em um protocolo de empréstimo termina confirmando que a conta continua solvente — a verificação de saúde. Esta não fazia isso, porque doar às reservas não parece, à primeira vista, uma operação capaz de deixar sua posição insalubre.

Podia. Um atacante tomou um empréstimo relâmpago, depositou, tomou emprestado e então doou o suficiente para empurrar deliberadamente a própria posição abaixo do limiar de liquidação. Em seguida, liquidou a si mesmo. Como o desconto de liquidação era calculado a partir da posição agora deteriorada, autoliquidar-se era lucrativo, e o empréstimo relâmpago foi quitado com o produto da operação.

As auditorias e o formato daquilo que é revisado

A Euler havia sido auditada várias vezes. Vale dizer isso de forma direta, sem rodeios, porque “auditado” é rotineiramente oferecido aos usuários como garantia de segurança e este incidente mostra exatamente o que ele não é. Os revisores examinam aquilo que reconhecem como portador de risco. Uma função de doação se lê como uma renúncia — o usuário está reduzindo voluntariamente o próprio saldo — e o enquadramento adversarial em que isso é o primeiro lance de um ataque é fácil de deixar passar.

O que quem lê pode tirar disso

O risco de um protocolo não é bem resumido por uma contagem de auditorias. As perguntas mais úteis são se os invariantes são aplicados de maneira uniforme em todo caminho que altera estado, se o protocolo é coberto por um programa de recompensas por falhas ativo e com valor relevante, e se há monitoramento capaz de captar um padrão anômalo de liquidação em andamento.

Linha do tempo

Somente de acréscimo. As correções são adicionadas como entrada datada própria; as entradas anteriores nunca são reescritas.

  1. O ataque é executado em vários mercados da Euler numa sequência de transações financiadas por empréstimos relâmpago. A Euler confirma o incidente. Euler Labs
  2. O atacante começa a devolver os fundos; ao final, praticamente todos os ativos são devolvidos. Euler Labs

O que verificar

A Euler Labs publicou uma análise pós-incidente técnica, com link abaixo, identificando a função específica e a verificação ausente.

A Conisec não hospeda nem linka ferramentas de recuperação, de revogação ou de “verificação”. Depois de um incidente público, atacantes rotineiramente semeiam exatamente esses links usando o nome de publicações que cobrem o caso. Use o canal oficial do próprio projeto afetado, linkado acima, e nada além disso.

Fontes

  1. Euler Labs, Euler Exploit Post-Mortem (13 mar 2023)

Não é aconselhamento. Este é um resumo de fatos publicados, não orientação jurídica, tributária ou de segurança. Confira nas fontes primárias linkadas acima.

Última verificação por Conisec Staff.

Continue explorando