Saltar al contenido
Registro de incidente · · 2 min de lectura · 299 palabras ·Descubierto ·Divulgado Resuelto

Ataque por donación en Euler Finance, marzo de 2023: qué ocurrió y qué comprobar

La falta de una comprobación de salud en una función de donación permitió a un atacante forzar su propia liquidación con beneficio y llevarse unos 197 millones de dólares. Casi todo se devolvió.

Compartir
Esquema del incidente de Euler Finance que muestra la etapa de lógica de negocio como punto de fallo.
Schematic of the Euler Finance incident showing the business logic stage as the failure point.

De un vistazo

ENTIDAD AFECTADA
Euler Finance
CADENA(S)
Ethereum
PÉRDIDA DECLARADA
aprox. 197 millones de dólares estadounidenses (devueltos prácticamente en su totalidad)(Euler Labs, 13 Mar 2023)
RESPUESTA OFICIAL
www.euler.finance

La comprobación que faltaba

Euler permitía a los usuarios donar parte de su saldo a las reservas del protocolo. La mayoría de las funciones que cambian el estado en un protocolo de préstamo terminan confirmando que la cuenta sigue siendo solvente: la comprobación de salud. Esta no lo hacía, porque donar a las reservas no parece a primera vista una operación capaz de dejarte en mala posición.

Sí podía. Un atacante tomó un préstamo relámpago, depositó, tomó prestado y después donó lo suficiente para empujar deliberadamente su propia posición por debajo del umbral de liquidación. A continuación se liquidó a sí mismo. Como el descuento de liquidación se calculaba a partir de la posición ya deteriorada, autoliquidarse resultaba rentable, y el préstamo relámpago se devolvió con lo obtenido.

Las auditorías y la forma de lo que se revisa

Euler había sido auditada varias veces. Conviene decirlo con claridad en lugar de pasar por encima, porque «auditado» se ofrece habitualmente a los usuarios como garantía de seguridad y este incidente muestra exactamente lo que no es. Los revisores examinan aquello que reconocen como portador de riesgo. Una función de donación se lee como un regalo —el usuario reduce voluntariamente su propio saldo— y el encuadre adversario en el que eso es el primer movimiento de un ataque es fácil de pasar por alto.

Qué puede llevarse de aquí quien lo lea

El riesgo de un protocolo no se resume bien con un recuento de auditorías. Las preguntas más útiles son si los invariantes se aplican de manera uniforme en todos los caminos que cambian el estado, si el protocolo está cubierto por un programa de recompensas por errores activo y con una dotación significativa, y si existe una supervisión capaz de detectar un patrón de liquidación anómalo mientras está ocurriendo.

Cronología

Solo se añade. Las correcciones se incorporan como su propia entrada fechada; las entradas anteriores nunca se reescriben.

  1. El ataque se ejecuta en varios mercados de Euler mediante una secuencia de transacciones financiadas con préstamos relámpago. Euler confirma el incidente. Euler Labs
  2. El atacante empieza a devolver fondos; finalmente se devuelven prácticamente todos los activos. Euler Labs

Qué comprobar

Euler Labs publicó un análisis posterior técnico, enlazado más abajo, que identifica la función concreta y la comprobación que faltaba.

Conisec no aloja ni enlaza herramientas de recuperación, revocación o «comprobación». Tras un incidente público, los atacantes siembran habitualmente ese tipo de enlaces usando los nombres de las publicaciones que cubren la noticia. Usa el canal oficial del propio proyecto afectado, enlazado más arriba, y nada más.

Fuentes

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

No es asesoramiento. Esto es un resumen de hechos publicados, no asesoramiento jurídico, fiscal ni de seguridad. Verifícalo con las fuentes primarias enlazadas más arriba.

Última verificación por Conisec Staff.

Sigue explorando