Unos 70 millones de euros (más de la mitad del total) han desaparecido de la plataforma basada en la criptomoneda Ethereum debido a fallos en el código que no fueron revisados a tiempo
El dinero está volviéndose cada vez más fácil de controlar a través de softwares y de internet. Un espectacular ciberataque contra un fondo de inversión que había colocado más de 130 millones de dólares (unos 115 millones de euros) en activos bajo el control de un software demuestra las enormes deficiencias de esta práctica.
La Organización Autónoma Descentralizada (DAO) fue desarrollada para operar con un sistema asociado a una moneda digital llamada Ethereum, y se había convertido en el mayor proyecto de crowdfunding de la historia. El software de DAO fue diseñado para repartir la financiación entre los proyectos en función de los votos de la gente que los ha financiado. La iniciativa fue señalada como ejemplo de las increíbles cosas nuevas que posibilita Ethereum, que nació inspirada en Bitcoin pero con la intención de permitir que el software controle el dinero.
El pasado viernes, alguien empezó a explotar un fallo del diseño de Ethereum para extraer más de 3,6 millones de Ethers de DAO. Esta cantidad está valorada en alrededor de 70 millones de euros, de acuerdo al valor de la moneda en el momento posterior al ataque (desde entonces, su precio ha sufrido una importante caída).
Crédito: Ethereum Foundation.
DAO había sido reconocida no sólo por su sorprendente escala, sino también por representar un ejemplo del tipo de cosas que Ethereum fue diseñada para habilitar. En concreto, nuevas formas de finanzas basadas en software capaz de controlar la moneda digital. De repente, Ethereum y la idea de entregarle el control del dinero a un complejo software ya no parece tan inteligente.
Todo software conlleva errores. Y a veces el dinero es robado mediante medios digitales de las instituciones financieras convencionales, por ejemplo durante los recientes ataques al sistema SWIFT para las transferencias internacionales.
Pero cuando el software es habilitado para controlar los fondos directamente, como fue diseñado Ethereum, la seguridad se vuelve más crítica.
Desafortunadamente, los diseñadores de Ethereum y DAO no parecen haberse apoyado demasiado en las técnicas estándar que los programadores e informáticos han desarrollado para contener los riesgos de los fallos de seguridad. El código de DAO no fue acompañado por ninguna documentación que explicara el diseño de sus varios componentes, por ejemplo. Eso podría haber permitido que alguien hubiera identificado y arreglado con anterioridad el fallo del que se aprovechó el ataque a DAO, tal vez incluso antes de llegar a lanzarse.
Y el diseño y la implementación del lenguaje de programación de Ethereum carece de prestaciones estándares de los marcos empleados para programar sistemas críticos, según el examen del ciberataque realizado por el profesor adjunto de la Universidad de Cornell (EEUU), Emin Gün Sirer. "Parece que hace falta que se lo replanteen totalmente", escribió.
Existían muchas advertencias de que el diseño de Ethereum incluía problemas de seguridad antes del ataque del viernes pasado. El fallo aprovechado por el ciberataque fue señalado hacia principios de mes por el emprendedor de Bitcoin Peter Vessenes, que ya había advertido que cualquier software desarrollado en Ethereum sería "una golosina para hackers".
Un trabajo publicado en 2014 por unos investigadores de la Universidad de Maryland (EEUU), que había pedido a los alumnos diseñar cosas con Ethereum, concluyó que "varios detalles sutiles de la implementación de Ethereum hacen que la programación inteligente sea propensa a errores".
Y en mayo, Sirer y otras dos personas muy activas en la comunidad de criptomonedas, incluido un investigador que participa en el proyecto Ethereum, hicieron un llamamiento para que DAO quedara congelada hasta que se resolvieran los fallos de seguridad de sus mecanismos de votación.
Tras el ataque sufrido, el valor de Ether ha caído en picado. Es imposible arreglar el defecto con una actualización de software, pero se están intentando impedir futuros ataques con trucos como saturar el sistema de Ethereum de procesamiento de transacciones hasta bloquearlo.
Una solución real para los problemas de Ethereum llevará mucho tiempo, y tal vez un rediseño exhaustivo de gran parte de su tecnología. También llevará un tiempo que se curen los daños psicológicos del ataque. De hacerlo correctamente, un software capaz de controlar el dinero podría abrir muchas nuevas oportunidades de negocio y ampliar los servicios financieros para la gente que actualmente no los recibe. Pero constatar las consecuencias de los fallos de seguridad de tales programas de software podría disuadir las inversiones necesarias para poder realizar esa idea.