Sección 7 · Lección 7.7
Ataques de flash loan y manipulación de protocolos
Un flash loan (préstamo relámpago) es un invento único de DeFi, imposible en las finanzas ordinarias: puedes pedir prestados millones de dólares sin garantía, siempre que los devuelvas dentro de la misma transacción. El instrumento se ideó para el arbitraje honesto, pero se ha convertido en la «palanca» favorita de los hackers: con él se vacían protocolos de decenas y cientos de millones. Para un analista AML es importante entender la mecánica, porque en el grafo un ataque así no se parece en nada al blanqueo clásico, y los dos no deben confundirse.
Qué es un flash loan
Un préstamo ordinario requiere garantía y tiempo. Un flash loan funciona sobre la propiedad de la atomicidad de la transacción en la blockchain: todo lo que sucede dentro de una única transacción o se ejecuta por completo o no se ejecuta en absoluto. El protocolo te presta la cantidad que quieras con una sola condición: devolver la suma (más una comisión) antes del final de esa misma transacción. Si la deuda no se salda al final de la transacción, toda la transacción se revierte como si nunca hubiera ocurrido, y el prestamista no arriesga nada.
La clave para entenderlo. Un flash loan no es «dinero en tu cuenta durante una semana». Es un préstamo que dura una fracción de segundo, que vive dentro de una única operación. Entre «prestado» y «devuelto» cabe toda una secuencia de acciones, y es en ese hueco donde se inserta el ataque.
1. Pedir $50M
→
2. Manipular
→
3. Vaciar el protocolo
→
4. Devolver $50M
→
5. Quedarse el beneficio
Todo en una transacción. El capital prestado es una palanca temporal; el botín real es el paso 3.
La mecánica del ataque: manipulación del precio del oráculo
El tipo más común de ataque con flash loan es la manipulación del oráculo de precios. Muchos protocolos DeFi (préstamos, derivados) conocen el precio de un activo no a partir de una fuente independiente, sino de un pool de liquidez en un exchange descentralizado. Si el pool es poco profundo, un enorme flash loan puede «empujar» temporalmente el precio en ese pool, y el protocolo creerá el precio falso.
- El préstamo. El hacker toma un flash loan de, digamos, $50M en una stablecoin.
- Empujar el precio. Vuelca ese dinero en un pool poco profundo del token X, disparando (o hundiendo) bruscamente su precio en ese pool concreto.
- Engañar al protocolo víctima. El protocolo de préstamos mira el precio de ese pool, ve un valor inflado de la garantía del hacker y le permite pedir/retirar mucho más de lo que debería.
- Extracción. El hacker retira fondos reales del protocolo por encima de la norma: esto es el robo.
- Devolver el préstamo. Devuelve los $50M al prestamista, restaurando el precio en el pool. Todo en una transacción.
- Beneficio. La diferencia entre lo que se vació y lo que se devolvió se queda con el hacker: a veces decenas de millones.
Hay otras variantes también: manipular el mecanismo de cálculo de recompensas, bugs de reentrancy, sustituir la tasa en el mint/burn de un token. Pero el principio general es uno: un flash loan proporciona capital temporal para engañar la lógica del protocolo, no para «pedir prestado y no devolver nunca».
Cómo se ve en el grafo de transacciones
Para un analista AML, lo más importante es aprender a reconocer la huella del ataque. Es muy característica y radicalmente distinta de los flujos de dinero del blanqueo.
- Una única transacción gigantescaDocenas de llamadas internas dentro de una sola transacción: préstamo, swaps, retiro, devolución, todo en un mismo hash. No una cadena de transferencias a lo largo del tiempo, sino una «explosión» en un solo bloque.
- Préstamo = devoluciónEl importe del préstamo viene del protocolo prestamista y le vuelve en la misma transacción. Es capital «ocioso»: no es el botín.
- Un desequilibrio anómalo del protocoloSale del pool/protocolo víctima más de lo que debería; las reservas caen bruscamente en un solo bloque.
- El botín real es el remanente limpioTras devolverse el préstamo, queda un beneficio en la dirección del atacante. Es con este con lo que empieza el verdadero blanqueo: normalmente a través de un puente y un mezclador.
Ataque (1 tx)
flash loan + manipulación
→
Botín
beneficio neto del hacker
→
Blanqueo
puente → mezclador → exchanges
En qué se diferencia el ataque del blanqueo
Este es el punto clave de la lección. Un analista principiante puede ver «pasaron $50M por la dirección» y registrarlo como blanqueo, y equivocarse.
- Un ataque de flash loan es un método de robo (delito subyacente)El momento en que el dinero se obtiene. Esto no es blanqueo sino el delito en sí, el que genera los fondos sucios.
- El blanqueo es lo que ocurre despuésEl hacker mueve el botín a través de puentes cross-chain, mezcladores (Sección 3), peel chains (Lección 7.1) para romper el vínculo. Eso es blanqueo.
- Capital prestado ≠ dinero sucioEl préstamo de $50M no es «sucio»: volvió al prestamista. Intentar rastrearlo como blanqueo es un error metodológico. Solo el beneficio neto es sucio.
- Escala temporalEl ataque es una fracción de segundo en un solo bloque. El blanqueo son horas, días y semanas de cadenas. Por los tiempos se separan con facilidad.
Una conclusión práctica para el rastreo. Habiendo visto un ataque de flash loan, no persigas el «cuerpo» del préstamo: es ficticio y volvió a su sitio. Determina la ganancia neta en la dirección del atacante tras la transacción: esa es la suma que se blanquea. Luego rastréala: adónde fue, por qué puente, a qué mezclador. La exposición desde una dirección así conlleva la categoría theft/hack con peso máximo.
Por qué esto está en la sección de tipologías. Un flash loan no va sobre el blanqueo en sentido puro, sino sobre la fuente de la suciedad. Al entender de dónde vinieron los fondos, clasificas correctamente el riesgo: una dirección que recibió aunque sea una parte de ese botín conlleva exposición «robada», y cualquier exchange con KYC actuará sobre ella en el depósito.
Las conclusiones principales
- Un flash loan es un préstamo sin garantía, que vive dentro de una única transacción; si no lo devuelves, la transacción se revierte.
- El ataque usa el préstamo como palanca, casi siempre para manipular el precio de un oráculo extraído de un pool poco profundo.
- En el grafo es una «explosión» en un solo hash: préstamo = devolución, mientras que el botín real es el remanente limpio en la dirección del hacker.
- El ataque en sí es un robo (la fuente de la suciedad), no un blanqueo; el blanqueo viene después, a través de puentes y mezcladores.
- Rastrea no el cuerpo del préstamo (es ficticio) sino el beneficio neto del atacante, con la categoría theft/hack.
Este material tiene fines educativos.