El 8 de diciembre, un bot de arbitraje vació el pool común LFNTY-USDC del exchange descentralizado Lifinity. Según el canal de Discord de Lifinity, una respuesta inesperada a una operación fallida causó la pérdida de USD 699,090.
Un miembro de Lifinity conocido como Durden explicó que un bot intentó una operación de arbitraje siguiendo la ruta USDC > xLFNTY > LFNTY > USDC, tratando de beneficiarse de las discrepancias de precios entre diferentes pares de comercio.
Here's how the events transpired in the @Lifinity_io Discord when the 700k arb happened
— Shardo (@DrashoWho) December 8, 2023
I noticed something wrong with LFNTY's price and alerted zoro, one of the devs on the platform.
At first glance, it appeared that the protocol had gotten hacked pic.twitter.com/ebXfK9pDW3
El bot inició una orden de mercado Immediate-or-Cancel (IOC) en Serum v3, un tipo de orden que debe ejecutarse inmediatamente al precio de mercado actual si se ejecuta. Las órdenes que no pueden ejecutarse inmediatamente se cancelan.
"Pero en lugar de arrojar un error, como hacen la mayoría de los programas, devolvía 0 importe de salida. Nuestros pools procesaron la cantidad 0 de entrada y también devolvieron 0 de salida", señaló Durden, antes de explicar que esto llevó al programa a actualizar el precio de la última transacción a 0, haciendo que el siguiente precio de salida también fuera 0. "Como se trata de una curva CP, el precio real no será 0, pero el pool ofreció un precio extremadamente bajo, lo que provocó el retiro justo después".
Lifinity v1 es un creador de mercado automatizado (AMM), lo que significa que utiliza algoritmos para crear liquidez en pares de comercio. Según Durden, se basa en un creador de mercado de producto constante (CPMM), un tipo específico de modelo AMM, para mantener un equilibrio entre dos cantidades de tokens en un pool de liquidez.
Otros exchanges descentralizados, como Unisawp y Bancor, también utilizan este modelo. Lifinity v1 no soporta una curva estándar de producto constante (CP) utilizada en los CPMM tradicionales, pero puede replicar su función. Una de las soluciones utilizadas para replicarla era invocar una función de "último precio" al siguiente precio de salida. Sin embargo, como el error devolvía un precio 0, el bot pudo aprovechar la discrepancia y tomar los fondos.
Cointelegraph se puso en contacto con el equipo de Lifinity, pero no recibió una respuesta inmediata. En X (antiguo Twitter), un miembro de la comunidad señaló que el incidente no era consecuencia de un ataque.
Al parecer, el equipo de Lifinity está trabajando para reintroducir liquidez en el pool mientras revisa el código del protocolo e intenta recuperar los fondos. Ya no se aceptan comercios que den lugar a importes 0.
Aclaración: La información y/u opiniones emitidas en este artículo no representan necesariamente los puntos de vista o la línea editorial de Cointelegraph. La información aquí expuesta no debe ser tomada como consejo financiero o recomendación de inversión. Toda inversión y movimiento comercial implican riesgos y es responsabilidad de cada persona hacer su debida investigación antes de tomar una decisión de inversión.