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 significativo, resultando em perdas de aproximadamente 197 milhões de dólares. Este ataque envolveu 6 tipos diferentes de tokens, sendo um dos maiores eventos de segurança no espaço DeFi recentemente.
Análise do processo de ataque
O atacante primeiro obteve um empréstimo flash de 30 milhões de DAI de uma plataforma de empréstimos, e depois implantou dois contratos-chave: um para operações de empréstimo e outro para liquidação.
Os principais passos do ataque são os seguintes:
Coloque 20 milhões de DAI em staking no Protocolo Euler e receba 19,5 milhões de eDAI.
Utilizando a funcionalidade de alavancagem de 10x do Euler Protocol, emprestar 195,6 milhões de eDAI e 200 milhões de dDAI.
Usar os restantes 10 milhões de DAI para pagar parte da dívida e destruir o dDAI correspondente.
Novamente emprestar a mesma quantidade de eDAI e dDAI.
Doar 100 milhões de eDAI através da função donateToReserves, em seguida, acionar a liquidação e obter 310 milhões de dDAI e 250 milhões de eDAI.
Por fim, foram retirados 38,9 milhões de DAI, devolvendo o principal do Empréstimos Flash de 30 milhões de DAI, com um lucro líquido de cerca de 8,87 milhões de DAI.
Causa da vulnerabilidade
O problema central deste ataque reside na ausência de verificações de liquidez necessárias na função donateToReserves do Euler Finance. Em comparação com outras funções-chave (como mint), donateToReserves não chama a função checkLiquidity para validar a situação dos ativos do usuário.
Normalmente, a checkLiquidity chamará o módulo RiskManager para garantir que a quantidade de eToken do usuário seja sempre maior do que a quantidade de dToken. No entanto, devido à função donateToReserves ter pulado esta etapa, o atacante conseguiu manipular sua própria conta para entrar em um estado que poderia ser liquidado, permitindo assim a realização do ataque.
Sugestões de Segurança
Para projetos DeFi, especialmente plataformas que envolvem funcionalidades de empréstimo, é necessário ter atenção especial aos seguintes pontos:
Certifique-se de que todas as funções-chave incluam as verificações de segurança necessárias, especialmente a validação de liquidez.
Realizar uma auditoria de segurança abrangente antes do lançamento do contrato, com foco em aspectos centrais como reembolso de fundos, deteção de liquidez e liquidação de dívidas.
Realizar revisões de código e varreduras de vulnerabilidades regularmente, para identificar e corrigir rapidamente riscos potenciais.
Estabelecer um mecanismo de gestão de riscos sólido e definir limites de empréstimo e limiares de liquidação razoáveis.
Considere a introdução de medidas de segurança adicionais, como assinaturas múltiplas ou bloqueios de tempo, para evitar a rápida perda de grandes quantias de dinheiro.
Este incidente destaca novamente a importância da segurança em DeFi. As equipes de projeto devem continuar a reforçar a consciência de segurança e adotar medidas de proteção em múltiplos níveis para garantir a segurança dos ativos dos usuários. Ao mesmo tempo, os usuários que participam de projetos DeFi também devem manter-se alertas e entender os riscos potenciais.
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.
9 Curtidas
Recompensa
9
6
Repostar
Compartilhar
Comentário
0/400
DAOdreamer
· 07-26 01:35
Manter a segurança em primeiro lugar, a auditoria é realmente muito importante.
Ver originalResponder0
StakeHouseDirector
· 07-25 22:05
Mais um projeto foi levado embora. Escapuliu, escapuliu.
Ver originalResponder0
GasWaster
· 07-23 02:23
O hacker malicioso apareceu novamente.
Ver originalResponder0
MemecoinResearcher
· 07-23 02:19
analisando o sentimento... e já se foi
Ver originalResponder0
ForkThisDAO
· 07-23 02:14
Mais um que foi lançado sem passar pela verificação de segurança.
Euler Finance sofreu um ataque de empréstimo flash de 197 milhões de dólares. Segurança das Finanças Descentralizadas volta a acender um alerta.
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 significativo, resultando em perdas de aproximadamente 197 milhões de dólares. Este ataque envolveu 6 tipos diferentes de tokens, sendo um dos maiores eventos de segurança no espaço DeFi recentemente.
Análise do processo de ataque
O atacante primeiro obteve um empréstimo flash de 30 milhões de DAI de uma plataforma de empréstimos, e depois implantou dois contratos-chave: um para operações de empréstimo e outro para liquidação.
Os principais passos do ataque são os seguintes:
Coloque 20 milhões de DAI em staking no Protocolo Euler e receba 19,5 milhões de eDAI.
Utilizando a funcionalidade de alavancagem de 10x do Euler Protocol, emprestar 195,6 milhões de eDAI e 200 milhões de dDAI.
Usar os restantes 10 milhões de DAI para pagar parte da dívida e destruir o dDAI correspondente.
Novamente emprestar a mesma quantidade de eDAI e dDAI.
Doar 100 milhões de eDAI através da função donateToReserves, em seguida, acionar a liquidação e obter 310 milhões de dDAI e 250 milhões de eDAI.
Por fim, foram retirados 38,9 milhões de DAI, devolvendo o principal do Empréstimos Flash de 30 milhões de DAI, com um lucro líquido de cerca de 8,87 milhões de DAI.
Causa da vulnerabilidade
O problema central deste ataque reside na ausência de verificações de liquidez necessárias na função donateToReserves do Euler Finance. Em comparação com outras funções-chave (como mint), donateToReserves não chama a função checkLiquidity para validar a situação dos ativos do usuário.
Normalmente, a checkLiquidity chamará o módulo RiskManager para garantir que a quantidade de eToken do usuário seja sempre maior do que a quantidade de dToken. No entanto, devido à função donateToReserves ter pulado esta etapa, o atacante conseguiu manipular sua própria conta para entrar em um estado que poderia ser liquidado, permitindo assim a realização do ataque.
Sugestões de Segurança
Para projetos DeFi, especialmente plataformas que envolvem funcionalidades de empréstimo, é necessário ter atenção especial aos seguintes pontos:
Certifique-se de que todas as funções-chave incluam as verificações de segurança necessárias, especialmente a validação de liquidez.
Realizar uma auditoria de segurança abrangente antes do lançamento do contrato, com foco em aspectos centrais como reembolso de fundos, deteção de liquidez e liquidação de dívidas.
Realizar revisões de código e varreduras de vulnerabilidades regularmente, para identificar e corrigir rapidamente riscos potenciais.
Estabelecer um mecanismo de gestão de riscos sólido e definir limites de empréstimo e limiares de liquidação razoáveis.
Considere a introdução de medidas de segurança adicionais, como assinaturas múltiplas ou bloqueios de tempo, para evitar a rápida perda de grandes quantias de dinheiro.
Este incidente destaca novamente a importância da segurança em DeFi. As equipes de projeto devem continuar a reforçar a consciência de segurança e adotar medidas de proteção em múltiplos níveis para garantir a segurança dos ativos dos usuários. Ao mesmo tempo, os usuários que participam de projetos DeFi também devem manter-se alertas e entender os riscos potenciais.