Saltar al contenido
Est. MMXXVIVol. VI · № 273RSS
Blockchain Breaches

Archivo de incidentes de seguridad en criptomonedas — hackeos, exploits, fallos de puentes y rug pulls, documentados con evidencia on-chain.

Expediente № 110Fallo de smart contract

Drenaje por migración en Team Finance

Team Finance perdió $15,8M en migración Uniswap v2-a-v3: tokens bloqueados movidos a par v3 sesgado y reembolsados como 'sobrante' por $2.700 en gas.

Fecha
Víctima
Team Finance
Cadena(s)
Estado
Parcialmente recuperado

El 27 de octubre de 2022, el protocolo de bloqueo de liquidez Team Finance — usado por cientos de proyectos de tokens de baja capitalización para demostrar credibilidad de "liquidez bloqueada" — fue explotado por $15,8 millones durante una migración de Uniswap v2 → v3. El atacante gastó $2.700 en gas para ejecutar el drenaje. $7 millones fueron devueltos tras negociación on-chain.

Qué ocurrió

El producto de Team Finance era un bloqueador de liquidez: los proyectos de tokens bloqueaban sus tokens proveedores de liquidez (LP) de Uniswap en contratos de Team Finance como compromiso público de que la liquidez subyacente no se podría rugear. El protocolo ofrecía un ayudante de migración que permitía a los proyectos mover su liquidez bloqueada de Uniswap v2 a v3 atómicamente.

El ayudante de migración tenía un fallo en su lógica de validación de precio. Al migrar tokens LP de v2 a v3, el ayudante:

  1. Retiraba los tokens LP v2 del contrato bloqueado de Team Finance.
  2. Volvía a depositar los activos subyacentes en un par v3, con el rango de precio y la proporción especificados por el llamante.
  3. Reembolsaba cualquier activo "sobrante" que no encajara en la posición v3 objetivo de vuelta al llamante.

La omisión fatal: el ayudante no validaba el rango de precio especificado por el llamante contra ningún invariante de seguridad de fondos. Un atacante que llamara a la migración podía:

  1. Especificar un rango de precio v3 tan sesgado que casi ninguno de los activos subyacentes se depositara realmente en el pool v3.
  2. Recibir la mayor parte de la liquidez bloqueada como "reembolso sobrante" del protocolo.
  3. Marcharse con la diferencia entre el valor bloqueado pre-migración y la posición v3 post-migración.

El atacante apuntó a cuatro pares de tokens bloqueados — CAW ($11,5M), Dejitaru Tsuka ($1,7M), Kondux ($0,7M), Feg ($1,9M) — totalizando ~$15,8M, con un gasto total de gas de aproximadamente $2.700.

Consecuencias

  • Team Finance pausó las migraciones inmediatamente y publicó un post-mortem.
  • El atacante se identificó como un "whitehat" en los memos de las transacciones y devolvió aproximadamente $7M de los fondos robados.
  • Los ~$9M restantes se mantuvieron; algunos fueron eventualmente blanqueados a través de Tornado Cash.
  • Team Finance rediseñó el ayudante de migración con validación adecuada del rango de precio.

Por qué importa

Team Finance es uno de los casos más limpios de cómo "auditado" no es equivalente a "seguro" — el contrato de migración había sido auditado, pero la auditoría no incluyó la comprobación específica del invariante económico que habría detectado este bug. La clase de vulnerabilidad (validación ausente en rangos de precio suministrados por el llamante) es estructuralmente idéntica a varios otros exploits DeFi donde las rutas de migración o admin omiten la validación que los flujos normales de usuario hacen cumplir.

La lección más profunda, particularmente relevante para productos de bloqueo de liquidez: la suposición de confianza es "la liquidez bloqueada no puede ser movida por el proyecto hasta el desbloqueo". Cualquier ruta de código que permita al proyecto mover liquidez bloqueada sin desbloquearla — incluyendo para migraciones, actualizaciones o "reembolsos sobrantes" — es una puerta trasera al modelo de confianza que todo el producto existe para hacer cumplir.

El coste de gas de $2.700 para drenar $15,8M es en sí una estadística llamativa — un recordatorio de que los exploits de contratos inteligentes son usualmente costes laborales, no costes de capital. Una vez identificada la vulnerabilidad, explotarla es esencialmente gratis.

Fuentes y evidencia on-chain

  1. [01]halborn.comhttps://www.halborn.com/blog/post/explained-the-team-finance-hack-october-2022
  2. [02]theblock.cohttps://www.theblock.co/post/180369/hacker-uses-2700-to-drain-15-8-million-from-team-finance
  3. [03]unchainedcrypto.comhttps://unchainedcrypto.com/team-finance-loses-15-8m-in-protocol-exploit/

Registros relacionados