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