¡ThorChain se hizo el loco y no pagó a quienes destaparon sus fallas secretas!

¡ThorChain se hizo el loco y no pagó a quienes destaparon sus fallas secretas!

La empresa de seguridad V12 Security se aventó el tiro y encontró a finales de abril un error bien grave en el protocolo de intercambios THORChain. Resulta que un solo operador de nodo validador podía chingarle y robar dinero de las cajas de liquidez del sistema. Aunque este problema no fue el que causó el robo millonario de 10 millones de dólares que le hicieron en mayo, sí fue un aviso de que algo andaba mal semanas antes.

THORChain parchó la bronca en silencio, sin avisar a nadie, y para colmo le dijeron a V12 que su programa para recompensar a quienes ubicaran bugs, el famoso bug bounty, ya no estaba activo, nomás para que se hiciera polvo, según explicó la banda de V12 el 1 de junio.

El investigador ZachXBT, que también había sonado la alarma tras el hackeo de mayo, se lanzó con todo contra THORChain: “Después de tantos exploits, uno pensaría que se tomarían en serio la seguridad, pero no, THORChain sigue bajando el nivel”.

Por cierto, la red de THORChain lleva dos semanas parada tras el golpe de mayo, que fue por otro fallo diferente al que reportó V12 Security. Este se dio en el sistema GG20 TSS, que es como el mecanismo secreto que usan los nodos para firmar transacciones en grupo.

El 27 de mayo, THORChain avisó que la versión de software para volver a abrir (la v3.19.0) necesita pasar pruebas, pero no dijeron cuándo va a estar lista.


¿Cómo era el fallo y qué riesgo había para los usuarios?

THORChain funciona con diferentes criptos, desde bitcoin hasta ether, que la raza deposita para hacer cambios (swaps). Pero antes de hacer el intercambio, el sistema espera que la transacción original tenga cierto número de confirmaciones, para asegurarse de que el dinero no se haya ido en vano.

El error que encontraron dejaron que se brincara esa espera. Los validadores firman digitalmente que vieron la transacción, pero sólo cubren lo básico, como cuánto y a quién, pero no revisan si la transacción ya tenía las confirmaciones necesarias. Eso se podía cambiar sin bronca.


¿Y cómo se hacía el fraude?

En THORChain, los validadores se turnan para armar bloques y poner las transacciones. El ladrón sólo necesitaba esperar su turno y tomar la info firmada por otros nodos que aún no tenía suficientes confirmaciones. Cambiaba el dato para hacerla pasar como si ya estuviera lista y la metía en el bloque.

La validación no cachaba ese cambio porque no revisaba ese detalle, y las firmas honestas seguían siendo válidas porque no cubrían ese campo modificado.

Así, THORChain liberaba la lana antes de tiempo al atacante, y este podía revertir después la transacción original, quedándose con ambas partes del intercambio. Mala onda, ¿no?

V12 Security armó una demostración en un ambiente controlado con cuatro validadores y probaron cómo una transacción de bitcoin con una sola confirmación, cuando se necesitaban diez, se procesaba como si fuera legit. En esa simulación, el pool perdió montón de RUNE, la moneda de THORChain.

Lo peor es que sólo se necesitaba controlar un nodo, ni siquiera las claves de otros validadores o posiciones especiales.


Pésima onda con los reportes y sin pago

La gente de QED Audit le avisó a THORChain desde enero que había fallos bien gacho, uno que podía robar más de 40 millones y otro que dejaba vaciar los bonos de los validadores. Arreglaron el desmadre antes de lanzar la versión 3.15.0 en enero, pero nunca les pagaron nada por avisar.

QED dijo que no van a andar con rollos de divulgación abierta porque creen que informar responsablemente no debería mezclarse con broncas por lana. Eso sí, dieron detalles técnicos para que todos sepan.

THORChain jamás soltó ni un comunicado sobre estos problemas ni sobre cerrar su programa de recompensas. El 27 de mayo dijeron que cerraron parte del código para que su equipo interno, THORSec, hiciera una auditoría sin que nadie se chismeara cómo iban con las reparaciones.

Después de que le pegaron el golpe de 10 millones en mayo, prometen abrir otra vez la red “segura y estable”, pero sin fecha ni nada claro en el horizonte. Aquí estaremos a ver si cumplen o sólo nos aventaron humo.

Artículos relacionados

Respuestas