Autor: Doris, @slowmistsecurityteam

 

fondo

El 10 de junio de 2024, según el sistema de monitoreo de seguridad SlowMist MistEye, UwU Lend, una plataforma que brinda servicios de préstamo de activos digitales en la cadena EVM, fue atacada, lo que resultó en una pérdida de aproximadamente 19,3 millones de dólares. El equipo de seguridad de SlowMist analizó el incidente y compartió los resultados de la siguiente manera:

(https://x.com/SlowMist_Equipo/status/1800181916857155761)

Información relacionada

Dirección del atacante:

0x841ddf093f5188989fa1524e7b893de64b421f47

Dirección de contrato vulnerable:

0x9bc6333081266e55d88942 e277 fc809b485698b9
Transacción de ataque:
0xca1bbf3b320662c89232006f1ec6624b56242850f07e0f1dadbe4f69ba0d6 ac3

0xb3f067618ce54bc26a960b660fc28f9ea0315e2e9a1a855ede508eb4017376

0x242a0fb4fde9de0dc2fd42e8db743cbc197fa2bf6a036ba0bba303df296408b

Atacar el núcleo

El punto central de este ataque es que el atacante puede manipular directamente el oráculo de precios realizando grandes intercambios en el pool de CurveFinance, afectando el precio del token sUSDE y utilizando el precio manipulado para evacuar otros activos del pool.

Proceso de ataque

1. Los préstamos flash toman prestado activos y reducen el precio del USDE: el atacante primero toma prestada una gran cantidad de activos a través de préstamos flash e intercambia algunos de los tokens USDE prestados por otros tokens en el grupo Curve que pueden afectar el precio de sUSDE.

2. Cree una gran cantidad de posiciones de préstamo: bajo la actual caída del precio de sUSDE, preste una gran cantidad de tokens sUSDE depositando otros tokens subyacentes.

3. Manipular el oráculo nuevamente para hacer subir el precio de sUSDE: al realizar una operación de intercambio inverso en el grupo de curvas anterior, el precio de sUSDE aumentó rápidamente.

4. Liquidación a gran escala de posiciones pasivas: dado que el precio de sUSDE aumentó rápidamente, los atacantes podrían liquidar grandes cantidades de posiciones previamente prestadas para obtener uWETH.

5. Deposite el sUSDE restante y preste otros tokens subyacentes en el contrato: el atacante nuevamente deposita el sUSDE actualmente de alto precio para prestar más tokens de activos subyacentes con fines de lucro.

No es difícil ver que el atacante obtuvo ganancias principalmente manipulando repetidamente el precio del sUSDE, pidiendo prestado una gran cantidad cuando el precio era bajo y liquidando y rehipotecando cuando el precio era alto. Damos seguimiento al contrato de Oracle sUSDePriceProviderBUniCatch que calcula el precio de sUSDE:

Se puede ver que el precio de s USDE se determina obteniendo primero los diferentes precios de 11 tokens USDE del grupo USDE y del grupo UNI V3 en CurveFinance, y luego clasificando y calculando la mediana en función de estos precios.

En la lógica de cálculo aquí, los precios de 5 USDE deben utilizar directamente la función get_p para obtener el precio al contado en tiempo real del grupo Curve. Esto permite al atacante afectar directamente el precio mediante el intercambio de grandes cantidades dentro de una transacción. de mediana.

Análisis de seguimiento de niebla

Según el análisis de la herramienta de seguimiento en cadena MistTrack, el atacante 0x841 ddf093 f5188989 fa1524 e7 b893 de64 b421 f47 obtuvo aproximadamente 19,3 millones de dólares en ganancias con este ataque, incluidas las monedas ETH, crvUSD, bLUSD, USDC y, posteriormente, ERC- Se cambiaron 20 tokens a ETH.

Al rastrear las tarifas de manejo de la dirección del atacante, se descubrió que los fondos iniciales en la dirección provenían de 0,98 ETH transferidos desde Tornado Cash. Posteriormente, la dirección también recibió 5 fondos de Tornado Cash.

Ampliando el mapa de transacciones, se encontró que el atacante transfirió 1292,98 ETH a la dirección 0x48 d7 c1 ​​​​dd4214 b41 eda3301 bca434348 f8 d1 c5 eb6. El saldo actual de la dirección es 1282,98 ETH; dirección 0x050 c7 e9 c62 bf991841 827 f37745 ddadb563 feb70, el saldo actual de esta dirección es 4,010 ETH.

MistTrack ha bloqueado la dirección correspondiente y seguirá monitoreando la transferencia de fondos robados.

Resumir

El núcleo de este ataque es que el atacante utiliza la falla de compatibilidad del oráculo de precios para obtener directamente el precio instantáneo al contado y el precio medio calculado para manipular el precio de sUSDE, realizando así préstamos y liquidaciones bajo la influencia de serias diferencias de precios para obtener ganancias inesperadas. El equipo de seguridad de SlowMist recomienda que el equipo del proyecto mejore las capacidades antimanipulación del oráculo de precios y diseñe un mecanismo de alimentación de precios del oráculo más seguro para evitar que incidentes similares vuelvan a ocurrir.