Spoofing de cuenta tick en Crema Finance
Una cuenta tick falsa esquivó el owner check de Crema y cosechó comisiones ficticias vía CLMM, drenando $9,6M en Solana. $8M devueltos en acuerdo white-hat.
- Fecha
- Víctima
- Crema Finance
- Cadena(s)
- Estado
- Parcialmente recuperado
El 2 de julio de 2022, el protocolo de liquidez concentrada de Solana Crema Finance fue drenado de aproximadamente 9,6 millones de dólares a través de una inyección de cuenta tick falsa. Aproximadamente $8M se devolvieron al protocolo como acuerdo white-hat; el atacante se quedó con $1,6M como "recompensa".
Qué ocurrió
El CLMM (Concentrated Liquidity Market Maker) de Crema era el análogo de Solana a Uniswap v3 — los proveedores de liquidez depositaban en ticks de precio específicos, y el protocolo rastreaba qué ticks estaban activos y cuántos ingresos por comisiones había acumulado cada uno.
Los programas de Solana comprueban la propiedad de cada cuenta que les pasan — las cuentas tienen un campo owner, y un programa rechazará cualquier cuenta cuyo propietario no sea el esperado. La comprobación de cuenta tick de Crema verificaba el campo owner pero no verificaba que la cuenta tick que se pasaba fuera realmente uno de los ticks legítimos del pool.
El ataque:
- Creó una cuenta tick falsa propiedad del programa de Crema pero conteniendo estado elegido por el atacante.
- Escribió la dirección de un tick legítimo inicializado en un campo de la cuenta falsa para saltarse comprobaciones de cordura aguas abajo.
- Tomó un préstamo flash de Solend y lo usó para depositar liquidez en el pool de Crema a través de la ruta que referenciaba el tick falso.
- Fabricó los datos de acumulación de comisiones en el tick falso para reclamar una porción mucho mayor de las comisiones del pool de la que cualquier LP real podría haber ganado legítimamente.
- Retiró las comisiones ficticias — alrededor de $9,6M en activos mixtos — y devolvió el préstamo flash.
Consecuencias
- Crema pausó todas las operaciones de pool y comenzó negociación on-chain con el atacante.
- Tras aproximadamente una semana de negociación, el atacante devolvió $8M a cambio de una recompensa de 45.455 SOL (~$1,6M).
- El SDNY de EE. UU. posteriormente imputó a un profesional de ciberseguridad — Shakeeb Ahmed, entonces empleado en una firma tecnológica internacional sin nombrar — por el exploit. Se declaró culpable en 2023.
Por qué importa
Crema es uno de los tres incidentes fundacionales de DeFi en Solana a mediados de 2022 (junto con Cashio y Nirvana Finance) que martillaron la importancia de la validación completa de cuentas en programas de Solana. La mitigación estándar — cada cuenta pasada a un programa debe comprobarse tanto por owner como por identidad exacta (a menudo vía derivación PDA) — ya estaba documentada en las propias guías de desarrolladores de Solana, pero el coste de saltársela se pagó, caso tras caso, en fondos reales de clientes.
El acuerdo de Crema también es un ejemplo claro del desenlace white-hat-por-presión: el atacante mantenía los fondos públicamente, on-chain, en wallets identificables; el equipo negoció con plena visibilidad; el acuerdo eventual compró la continuidad del protocolo a un coste de $1,6M. El mismo desenlace ocurre solo cuando la identidad del atacante es no identificable o los fondos ya se han mezclado más allá de la trazabilidad — usualmente una de esas es cierta, pero no siempre.
Fuentes y evidencia on-chain
- [01]halborn.comhttps://www.halborn.com/blog/post/explained-the-crema-finance-hack-july-2022
- [02]coindesk.comhttps://www.coindesk.com/tech/2022/07/07/crema-finance-attacker-returns-almost-8m-keeps-17m-bounty
- [03]ackee.xyzhttps://ackee.xyz/blog/2022-solana-hacks-explained-crema-finance/