-
La vulnerabilidad fue notificada a MakerDAO hace un mes y corregida el pasado primero de octubre.
-
MakerDAO premiรณ al desarrollador que reportรณ la falla con USD 50.000.
MakerDAO, la organizaciรณn descentralizada que corre en Ethereum, divulgรณ una vulnerabilidad extremadamente peligrosa, que hubiese permitido a un atacante robar todos los fondos colaterales asociados a su criptomoneda anclada DAI, en una sola transacciรณn.
La vulnerabilidad, si hubiese sido explotada, hubiese resultado en una pรฉrdida completa de los fondos de todos los usuarios del sistema DAI Multi-Collateral, aรบn por implementarse, lo que probablemente hubiese llevado al ecosistema de MakerDAO a su peor crisis.
ยซEl costo de realizar el ataque era casi cero; justo la denominaciรณn mรญnima por cada tipo de gema robada, mรกs gasยป, escribiรณ el investigador que descubriรณ la vulnerabilidad, usuario lucash-dev en HackerOne. Este desarrollador notificรณ sobre la vulnerabilidad a MakerDAO el pasado 26 de septiembre.
El contrato inteligente de MakerDAO: muy poco control de acceso
Como se aprecia en el reporte publicado en HackerOne el primero de octubre, despuรฉs de corregida la falla, el ataque era posible debido a una completa falta de control de acceso en un contrato inteligente de MakerDAO. Especรญficamente, el contrato que permite que el sistema subaste los fondos colaterales a cambio de la criptomoneda DAI cuando los prรฉstamos son liquidados.
Una falta de validaciรณn en el mรฉtodo flip.kick permite a un atacante crear una subasta con un falso valor de puja- Como el contrato ‘end’, o de liquidaciรณn, cree en ese valor, puede ser explotado para emitir cualquier cantidad de DAI de manera gratuita durante la liquidaciรณn. Esos fondos en DAI pueden ser inmediatamente usados para obtener todos los fondos colaterales almacenados en el contrato ‘end’.
Usuario lucash_dev en HackerOne.
Las fases de liquidaciรณn existen debido a que DAI es un activo ยซsobre-colateralizadoยป, lo que significa que todo el circulante de DAI estรก respaldado por un exceso de tokens colaterales almacenados en la bloclchain de Ethereum.
En la documentation de MakerDAO se explica que los prรฉstamos en DAI pueden ser liquidados si se detecta que son inseguros. Estas medidas se establecieron para asegurar que hubiese suficientes fondos colaterales en el sistema para garantizar el valor de todos los tokens DAI, que tienen un valor nominal de un dรณlar estadounidense.
Estos fondos colaterales es el que los hackers hubiesen podido robar, lo que hubiese provocado el colapso completo de DAI, una vez que el sistema MCD estuviese implementado.
De acuerdo con MakerScan, hay en la actualidad 40.673,89 ETH ( USD 7,2 millones) bloqueados sรณlo en un prรฉstamo de MakerDAO, y USD 270 millones en ETH en total, almacenados en MakerDAO, asรญ que el riesgo potencial de la vulnerabilidad detectada y ya corregida, eran ciertamente muy altos.
Como se mencionรณ antes, hace una semana MakerDAO anunciรณ que habรญa parcheado el cรณdigo y otorgรณ al desarrollador USD 50.000 por sus esfuerzos.
$50,000 bounty given to user lucash-dev for critical vulnerability discovered in @MakerDAO ‘s new Multi-Collateral DAI (MCD) contract.
A fix was proposed and approved already.https://t.co/12JYnyBK8r
โ Philippe Castonguay (@PhABCD) October 1, 2019
La recompensa pudiese parecer de gran magnitud, pero palidece ante la gran pila de criptomonedas ETH que estaban esperando ser robadas en cualquier momento, antes de que se conociera la vulnerabilidad.
Actualizaciรณn 1:49 p.m. UTC, 3 de ocubre. Este artรญculo fue actualizado para clarificar que los fondos colaterales en riesgo eran aquellos relacionados con el sistema de DAI Multi-colateral, que no estรก actualmente en la red principal de Ethereum. Los fondos colaterales que respaldan a DAI, tambiรฉn fueron corregidos. Presentamos disculpas por estos errores.
Versiรณn traducida del artรญculo de David Canellis, publicado en The Next Web.