Por Angel Di Matteo   @shadowargel

De acuerdo con un informe publicado, el Blockchain de la moneda digital podía ser mucho más fácil de vulnerar mediante un ataque Eclipse que el de Bitcoin, por lo que se instó a los programadores principales a desarrollar soluciones para evitar que el funcionamiento de la red se vea comprometido. 

***

Los desarrolladores de Ethereum han corregido una importante brecha de seguridad, la cual permitía a cualquier persona con una conexión a Internet manipular el acceso de los usuarios al Blockchain de la moneda digital.

Los ataques de tipo “Eclipse” funcionan impidiendo que un usuario de la criptomoneda se conecte con otros pares en la red. En su lugar, a las personas que son víctimas de esta modalidad los atacantes ofrecen acceso a una versión manipulada del Blockchain de la moneda digital, donde los infractores pueden manipular las transacciones y manejar libremente los activos.

Esta modalidad de ataques suelen ser utilizados para engañar a personas para que paguen por un bien o servicio más de una vez, y así combinar el poder de procesamiento del objetivo para manipular algoritmos que establezcan un consenso que normalice la operación. Debido a que Ethereum admite “contratos inteligentes” que ejecutan transacciones de forma automática cuando ciertas condiciones están presentes en el Blockchain, los atacantes pueden modificar aspectos en estos acuerdos para que los mismos se ejecuten.

Al igual que la mayoría de las criptomonedas, Ethereum utiliza un mecanismo de igual a igual que compila la entrada de usuarios individuales en el Blockchain autorizado. En 2015 y nuevamente en 2016, equipos de investigación diferentes exploraron las debilidades del protocolo P2P para llevar a cabo ataques de tipo Eclipse. Ambos hechos fueron relativamente difíciles de lograr, ya que el de 2015 requirió hacer uso de una Botnet que controlaba miles de dispositivos, mientras que el de 2016 dependía del control de grandes cantidades de direcciones de internet a través de una técnica conocida como “Border Gateway Protocol Hijacking”. Estos actos fueron ejecutados por personas con mucho conocimiento en el área y con disposición de gran cantidad de recursos especializados.

En Ethereum es más sencillo

Muchos investigadores creían que los recursos necesarios para ejecutar un ataque Eclipse contra la red de Ethereum serían mucho más especializados que para lo visto en el Blockchain de Bitcoin. Sin embargo, algunos de los investigadores que participaron en los hechos registrados durante 2015 publicaron esta información en un artículo:

Demostramos que lo que muchos creían era falso. Realizamos nuevas pruebas de ataque Eclipse, las cuales ponen en evidencia que la red de Ethereum es mucho menos segura que la de Bitcoin. Para ello nuestros atacantes solo necesitan controlar dos máquinas, cada una con una sola dirección IP. Los ataques están fuera de la ruta: El atacante controla solo los endhost y no ocupa una posición privilegiada entre la víctima y el resto de la red, a diferencia del caso de Bitcoin en los que era necesario emplear cientos de maquinas.

Para la mayoría de los usuarios de Internet, no es trivial obtener cientos o miles de direcciones IP. Esta es la razón por la cual el atacante de Bitcoin operaba una Botnet completa o un proveedor de servicios de Internet, mientras que el atacante del año 2016 necesitaba acceso a un enrutador central BGP. En el caso de Ethereum, nuestros ataques pueden ser ejecutados con mucha facilidad incluso por un niño con una máquina y un guión muy específico”.

Los investigadores informaron estos hallazgos en el mes de enero a los desarrolladores de Ethereum, quienes hicieron cambios a Geth, la aplicación más popular que da soporte al protocolo de la moneda digital. Los usuarios que confían en Geth deben asegurarse de poseer la versión 1.8 o superior.

En un correo electrónico, el desarrollador de Ethereum, Felix Lange, expuso:

Hemos hecho todo lo posible para mitigar los ataques dentro de los límites del protocolo. El documento se refiere a los ataques de tipo Eclipse con bajos recursos. Hasta donde sabemos, el nivel de seguridad se ha elevado lo suficiente para que los ataques de este tipo no sean factibles sin recursos más sustanciales, esto gracias a los parches que se han implementado en Geth v1.8.0″.

Lange aseguró en el correo no creer que Parity, otra aplicación bastante popular en la red de Ethereum, fuese vulnerable a este tipo de ataques.

En el documento titulado “Low-Resource Eclipse Attacks on Ethereum’s Peer-to-Peer Network”, se describieron dos modalidades de ataques posibles. El más simple se basaba en la utilización de dos direcciones IP, que generaban gran cantidad de claves criptográficas en el protocolo de Ethereum utilizadas para designar nodos operativos. El atacante luego espera que uno de los objetivos reinicie su computador después que el hacker haya enviado varios paquetes maliciosos que causen un bloqueo del sistema. Cuando la persona afectada se incorpora nuevamente a la red de Ethereum, el atacante hace uso de los nodos para establecer las conexiones entrantes antes de que el objetivo pueda establecer las que salen.

La segunda técnica funciona creando una gran cantidad de nodos controlados por el atacante, enviando un paquete especial que contamina las bases de datos del objetivo con los nodos alterados. Cuando el computador del usuario se reinicia, todos los pares a los que se conecta estarán bajo el control del atacante. En ambos casos, una vez que el objetivo se encuentra totalmente aislado de los nodos legítimos, el atacante puede presentar una versión falsa del Blockchain de Ethereum, y en ausencia de otros nodos que cuestionen esta versión, el computador asumirá que el protocolo con el que está interactuando pertenece a la cadena de bloques oficial.

Momento de implementar soluciones

Los investigadores presentaron una tercera técnica que hace que los ataques Eclipse sean más fáciles de llevar a cabo. En pocas palabras, funciona haciendo un ajuste al reloj de la computadora objetivo programándolo 20 o más segundos antes que los otros nodos activos en la red de Ethereum.

Para evitar los llamados ataques de repetición (en los que un hacker reenvía un mensaje autenticado antiguo para intentar ejecutarlo más de una vez), el protocolo de Ethereum rechaza los mensajes que tienen más de 20 segundos de antigüedad. Al fijar el reloj del objetivo 20 segundos por delante, los atacantes pueden hacer que el mismo pierda contacto con todos los usuarios legítimos. Los hackers hacen uso de nodos maliciosos con el mismo tiempo del reloj para conectarse al computador afectado.

Los desarrolladores de Ethereum han puesto una contramedida para asegurarse que cada nodo siempre haga conexiones salientes con otros pares. Para el segundo ataque se limitó el número de conexiones salientes que un objetivo pueda hacer (pasando de 24 partes de la dirección IP a 10). Estos cambios han sido diseñados para que sea mucho más difícil aislar por completo a un usuario de otros legítimos. Cuando incluso un solo nodo presenta a los usuarios una versión diferente del Blockchain, se le notificara a este mismo sobre el error para impedir que el ataque tenga éxito.

De momento, los desarrolladores de Ethereum no han implementado una solución para los ataques basados en la modificación de las horas de los nodos. Dado que generalmente requiere que un atacante manipule el tráfico sobre la conexión a internet del objetivo o explote las vulnerabilidades que no son de Ethereum en la computadora del objetivo, es probable que los programadores de la moneda digital perciban esta posibilidad como una amenaza menor en comparación a los ataques previamente mencionados.

Investigadores de la Universidad de Boston y de la Universidad de Pittsburgh advirtieron a los usuarios que deben protegerse contra este tipo de amenazas:

Dada la creciente importancia de Ethereum para el ecosistema Blockchain a nivel global, creemos que es imperativo que las contramedidas sean implementadas tan pronto como sea posible. Es necesario que los operadores de nodos actualicen a Geth v1.8″.

Fuente: Arstechnica.com

Versión de Angel Di Matteo para DiarioBitcoin

?

ADVERTENCIA: Este es un artículo de carácter informativo. DiarioBitcoin es un medio de comunicación, no promociona, respalda ni recomienda ninguna inversión en particular. Vale señalar que las inversiones en criptoactivos no están reguladas en algunos países. Pueden no ser apropiadas para inversores minoristas, pues se podría perder el monto total invertido. Consulte las leyes de su país antes de invertir.