Euler Finance sufrió un ataque de flash loan de 197 millones de dólares, lo que vuelve a encender la alarma sobre la seguridad en Finanzas descentralizadas.
Euler Finance sufrió un ataque de flash loan con pérdidas de 197 millones de dólares
El 13 de marzo, el proyecto Euler Finance sufrió un ataque de flash loan debido a una vulnerabilidad en su contrato inteligente, causando pérdidas de hasta 197 millones de dólares. Este ataque involucró 6 tipos de tokens y es uno de los mayores incidentes de ataque DeFi en tiempos recientes.
Análisis del proceso de ataque
El atacante primero obtiene un préstamo relámpago de 30 millones de DAI de una plataforma de préstamos, luego despliega un contrato de préstamo y un contrato de liquidación. A continuación, apuesta 20 millones de DAI en Euler Protocol para obtener 19.5 millones de eDAI.
Utilizando un apalancamiento de 10 veces del Protocolo Euler, el atacante tomó prestados 195.6 millones de eDAI y 200 millones de dDAI. Luego, devolvió parte de la deuda con los 10 millones de DAI restantes y destruyó la cantidad correspondiente de dDAI, volviendo a pedir prestado la misma cantidad de eDAI y dDAI.
El paso clave es llamar a la función donateToReserves para donar 100 millones de eDAI, y luego liquidar a través de la función liquidate para obtener 310 millones de dDAI y 250 millones de eDAI. Finalmente, se extraen 38.9 millones de DAI, se devuelven 30 millones de Flash Loans, y la ganancia neta es de aproximadamente 8.87 millones de DAI.
Análisis de la causa de la vulnerabilidad
La vulnerabilidad existe en la función donateToReserves de Euler Finance. A diferencia de otras funciones como mint, donateToReserves carece de un paso crucial de checkLiquidity. Esto permite a los usuarios eludir la verificación de liquidez, crear condiciones de liquidación artificialmente y obtener beneficios de ello.
En condiciones normales, checkLiquidity llamará al módulo RiskManager para verificar si el eToken del usuario es mayor que el dToken, a fin de garantizar la salud de la cuenta. La falta de este paso permite a los atacantes manipular el estado de su propia cuenta y lograr liquidaciones indebidas.
Consejos de seguridad
Para este tipo de ataques, los proyectos DeFi deben centrarse en los siguientes aspectos:
Realizar una auditoría de seguridad completa antes del lanzamiento del contrato, prestando especial atención a aspectos clave como el reembolso de fondos, la detección de liquidez y la liquidación de deudas.
Agregar las verificaciones de seguridad necesarias en todas las funciones que puedan afectar el estado de los activos del usuario.
Realizar revisiones de código periódicamente para detectar y corregir posibles vulnerabilidades a tiempo.
Establecer un mecanismo de gestión de riesgos efectivo, establecer límites de préstamo razonables y umbrales de liquidación.
Considerar la introducción de mecanismos como la firma múltiple para aumentar la dificultad de los ataques.
Con el continuo desarrollo del ecosistema DeFi, los equipos de proyectos deben prestar más atención a la seguridad de los contratos inteligentes, adoptar medidas de protección integrales y minimizar al máximo los riesgos similares.
This page may contain third-party content, which is provided for information purposes only (not representations/warranties) and should not be considered as an endorsement of its views by Gate, nor as financial or professional advice. See Disclaimer for details.
19 me gusta
Recompensa
19
8
Compartir
Comentar
0/400
rekt_but_not_broke
· 07-07 15:13
Los agujeros han tomado a la gente por tonta y han alcanzado un nuevo máximo.
Ver originalesResponder0
Layer2Observer
· 07-07 04:02
Otra ronda de trampa por la vulnerabilidad de contratos. El código nunca engaña.
Ver originalesResponder0
GasFeeWhisperer
· 07-06 16:17
Los contratos inteligentes tampoco son inteligentes.
Ver originalesResponder0
ForeverBuyingDips
· 07-06 16:16
tomar a la gente por tonta tomar a la gente por tonta tomar a la gente por tonta Otra vez ha llegado la temporada de cosecha.
Ver originalesResponder0
ser_we_are_ngmi
· 07-06 16:16
Otra vez fue destruido por los Flash Loans.
Ver originalesResponder0
TradFiRefugee
· 07-06 16:12
Finanzas descentralizadas un día tres sustos
Ver originalesResponder0
TokenBeginner'sGuide
· 07-06 16:11
Pequeño recordatorio: la importancia de la seguridad de los contratos inteligentes se ha vuelto a verificar. Los datos muestran que el 85% de los proyectos no han realizado una auditoría completa antes de su lanzamiento.
Euler Finance sufrió un ataque de flash loan de 197 millones de dólares, lo que vuelve a encender la alarma sobre la seguridad en Finanzas descentralizadas.
Euler Finance sufrió un ataque de flash loan con pérdidas de 197 millones de dólares
El 13 de marzo, el proyecto Euler Finance sufrió un ataque de flash loan debido a una vulnerabilidad en su contrato inteligente, causando pérdidas de hasta 197 millones de dólares. Este ataque involucró 6 tipos de tokens y es uno de los mayores incidentes de ataque DeFi en tiempos recientes.
Análisis del proceso de ataque
El atacante primero obtiene un préstamo relámpago de 30 millones de DAI de una plataforma de préstamos, luego despliega un contrato de préstamo y un contrato de liquidación. A continuación, apuesta 20 millones de DAI en Euler Protocol para obtener 19.5 millones de eDAI.
Utilizando un apalancamiento de 10 veces del Protocolo Euler, el atacante tomó prestados 195.6 millones de eDAI y 200 millones de dDAI. Luego, devolvió parte de la deuda con los 10 millones de DAI restantes y destruyó la cantidad correspondiente de dDAI, volviendo a pedir prestado la misma cantidad de eDAI y dDAI.
El paso clave es llamar a la función donateToReserves para donar 100 millones de eDAI, y luego liquidar a través de la función liquidate para obtener 310 millones de dDAI y 250 millones de eDAI. Finalmente, se extraen 38.9 millones de DAI, se devuelven 30 millones de Flash Loans, y la ganancia neta es de aproximadamente 8.87 millones de DAI.
Análisis de la causa de la vulnerabilidad
La vulnerabilidad existe en la función donateToReserves de Euler Finance. A diferencia de otras funciones como mint, donateToReserves carece de un paso crucial de checkLiquidity. Esto permite a los usuarios eludir la verificación de liquidez, crear condiciones de liquidación artificialmente y obtener beneficios de ello.
En condiciones normales, checkLiquidity llamará al módulo RiskManager para verificar si el eToken del usuario es mayor que el dToken, a fin de garantizar la salud de la cuenta. La falta de este paso permite a los atacantes manipular el estado de su propia cuenta y lograr liquidaciones indebidas.
Consejos de seguridad
Para este tipo de ataques, los proyectos DeFi deben centrarse en los siguientes aspectos:
Realizar una auditoría de seguridad completa antes del lanzamiento del contrato, prestando especial atención a aspectos clave como el reembolso de fondos, la detección de liquidez y la liquidación de deudas.
Agregar las verificaciones de seguridad necesarias en todas las funciones que puedan afectar el estado de los activos del usuario.
Realizar revisiones de código periódicamente para detectar y corregir posibles vulnerabilidades a tiempo.
Establecer un mecanismo de gestión de riesgos efectivo, establecer límites de préstamo razonables y umbrales de liquidación.
Considerar la introducción de mecanismos como la firma múltiple para aumentar la dificultad de los ataques.
Con el continuo desarrollo del ecosistema DeFi, los equipos de proyectos deben prestar más atención a la seguridad de los contratos inteligentes, adoptar medidas de protección integrales y minimizar al máximo los riesgos similares.