Otro hackeo que he revisado recientemente es el de Vicuna Finance de marzo de este año. Perdieron $700K debido a la manipulación del oráculo de tokens LP en la cadena Sonic. El ataque explotó un defecto fundamental en la fijación de precios que podría haberse evitado con una simple afirmación. Los tokens LP se valoraron utilizando una fórmula básica de suma (precio_token1 * cantidad_token1 + precio_token0 * cantidad_token0) en lugar de un precio justo que tenga en cuenta la fórmula del producto constante del pool. Secuencia del ataque: - Un gran intercambio de token0 a token1 infló artificialmente el precio del oráculo de tokens LP - Depositar tokens LP sobrevalorados como colateral - Pedir prestados activos máximos contra el valor colateral inflado - Intercambiar de nuevo el precio LP deflacionado, dejando al protocolo con deuda mala La manipulación de precios es un patrón que vemos una y otra vez, y es un patrón contra el que las afirmaciones protegen bien. En este ejemplo, estamos experimentando con un nuevo código de trampa que permitirá la inspección de llamadas en la pila de llamadas, lo cual es ideal para detectar manipulaciones de precios intra tx. Verificamos que una llamada de "intercambio" no puede resultar en que el precio se desvíe más del 5% de la línea base en ningún momento durante la ejecución de la transacción. Es una forma simple, pero poderosa, de protegerse contra, por ejemplo, ataques de préstamos relámpago.