Rompiendo Cadena

3 trucos que una auditoría no pudo encontrar

Después de piratear docenas de proyectos criptográficos como whitehats, entendemos que una auditoría de contrato inteligente no es suficiente para garantizar que un proyecto esté protegido. permítanos mostrarle algunos ejemplos de hacks que una auditoría clásica no podría haber encontrado.

El truco BadgerDAO

BadgerDAO es un DAO centrado en llevar Bitcoin al mundo web3 de las finanzas descentralizadas (DeFi), basado en contratos inteligentes de Ethereum. El 2 de diciembre de 2021, más de $ 120 millones en criptomonedas fue robado en cuestión de minutos. ¿Como es posible?

Durante noviembre, los piratas informáticos pudieron obtener acceso al sitio web de la aplicación Badger mediante el uso de una clave API comprometida que se creó sin el conocimiento o la autorización de los ingenieros de Badger para inyectar periódicamente un código javascript malicioso que afectó a un subconjunto de sus clientes. Este código generó aprobaciones de transacciones deshonestas que, si los usuarios las aprobaban, permitirían a los piratas informáticos extraer fondos de sus propias billeteras en lugar de las controladas por BadgerDAO en una fecha futura. Han esperado tranquilamente a que un gran pez caiga en la trampa. 

El 1 de diciembre de 2021, un usuario con un token ERC50 valorado en 20 millones de dólares aprobó el acceso del atacante a sus fondos. Los atacantes respondieron rápidamente retirando todos los fondos de esta víctima por un valor de 50 millones de dólares y luego drenando las cuentas accesibles de todas las demás víctimas acumuladas durante la operación del atacante, por una ganancia total de 120 millones de dólares.

Entonces, el truco se basó en un problema de diseño visual de billetera criptográfica para que los usuarios aprobaran la transacción maliciosa. Pero mucho antes de eso, es posible que el ataque se haya producido debido al uso de una clave de API comprometida, aunque el contrato inteligente probablemente era perfecto.

El truco del protocolo de la fortaleza

Fortress Protocol es un protocolo de préstamos DeFi que opera en Binance Smart Chain. En la mañana del 9 de mayo, le robaron su fondo debido a un ataque malicioso.

Las débiles fortificaciones que rodean el oráculo del proyecto y el proceso de gobierno permitieron a los piratas informáticos invasores pasar una propuesta maliciosa y manipular el precio de la garantía. Comenzaron comprando 400 000 FTS (el token de gobernanza de Fortress Protocol), el 4% del suministro total por 11,4 ETH. Luego, crearon un contrato de propuesta malicioso y usaron su FTS para votar por su propuesta (el 4 % de los votos positivos es una condición para que la propuesta se apruebe con éxito). El contrato modificó la tasa de apalancamiento de los tokens FTS de 0 a 0.7. Esto permite a los piratas informáticos utilizar el 70 % del valor de los tokens FTS apalancados para prestar activos en el protocolo.

En Fortress Protocol, el precio de cada token se adquiere a través de diferentes oráculos. Los oráculos son entidades que conectan cadenas de bloques a sistemas externos, lo que permite que los contratos inteligentes se ejecuten en función de las entradas y salidas del mundo real. Entre ellos está FTS, donde el precio se obtiene del Umbrella Oracle. Desafortunadamente, hubo una vulnerabilidad en la función de envío () del oráculo y los piratas informáticos pudieron manipular la máquina del oráculo para establecer un precio muy alto para FTS para que pudiera prestar todos los tokens. Todos estos tokens se convirtieron en alrededor de 3 millones de USDT.

Fortress Protocol fue auditado tanto por Hash0x como por EtherAuthority, ninguno de los cuales detectó ninguna vulnerabilidad de Oracle en el código. La razón es simple, estaba fuera de su alcance porque la vulnerabilidad estaba en el contrato de otro protocolo.

Los trucos de Blizz Finance y Venus Protocol

Hablando de las vulnerabilidades de los oráculos, aquí tenemos una enorme que le ha costado mucho a dos plataformas de préstamos: Blizz Finance y Venus Protocol.

Mientras todo el ecosistema de Terra colapsaba, el fallido plan de recuperación de UST hizo caer el precio de LUNA a fracciones de centavo. Sin embargo, Chainlink, un oráculo de buena reputación que ambos protocolos utilizaron como fuente de precios para valorar la garantía, contenía un precio mínimo para LUNA codificado en $ 0.10. Como el precio cayó por debajo de esto, cualquiera pudo comprar grandes cantidades de LUNA al precio de mercado y usarlo como garantía (valorada en $0.10) para pedir prestados fondos de las plataformas.

Los daños son enormes: $8,5M para Blizz Finance (todos los fondos del protocolo) y $13.5M para Venus Protocol (sobre $1B).

Este es un buen ejemplo de que ningún protocolo es infalible, ni siquiera los más importantes. La caída de LUNA por debajo de $ 0.10 puede haber sido impensable en el momento en que Chainlink configuró el feed, pero deberían haber actualizado los parámetros de su oráculo cuando quedó claro que LUNA no se recuperaría. Los protocolos deben contar con medidas para estos eventos imprevistos, como sus propios interruptores automáticos para pausar los contratos en tales condiciones.

Ir al contenido