¿Qué es un Ataque Eclipse o Eclipse Attack?

El Ataque Eclipse o Eclipse Attack es otro de los ataques conocidos en el mundo de las criptomonedas. Este consiste en aislar y eclipsar la conexión de red de las víctimas al inundarlas con datos falsos sobre la red blockchain de la que forman parte.

Uno de los ataques que se pueden realizar contra las redes blockchain es el Eclipse Attack o Ataque Eclipse. Este es un tipo de ataque que busca aislar y atacar a un usuario específico que forma parte de la red. Todo con el objetivo de poder manipular los datos que recibe el objetivo desde la red. De esa forma, se puede realizar cualquier clase de actividad maliciosa contra la víctima.

Ciertamente las redes peer-to-peer (P2P) y la tecnología blockchain son muy seguras, pero la seguridad absoluta no existe. Es por ello que en este nuevo capítulo de Bit2Me Academy te explicaremos todo sobre este tipo de ataque, conociendo también los medios que existen para evitarlo y protegerte de él.

Anatomía de un Eclipse Attack o Ataque Eclipse

Como hemos mencionado al principio, un Eclipse Attack, o Ataque Eclipse, busca desconectar a la víctima del flujo de datos válidos de la red. Esto con el fin de que la víctima recibió datos manipulados por parte del atacante. Suena bastante aterrador desde un punto de vista de seguridad, y ciertamente lo es. Pero te preguntarás ¿Por qué es posible realizar un ataque de este tipo? ¿Se pueden evitar de alguna manera?

Pues bien, en primer lugar este tipo de ataques son posibles debido a la estructura y las limitaciones del protocolo de comunicación peer-to-peer que usa una cadena de bloques. Más específicamente se debe a la limitación en la cantidad de conexiones y selección segura de los nodos. Por ejemplo, en la red Bitcoin el límite de conexiones de salida (las que puedes establecer con otros nodos remotos) es de 8 conexiones. Esto significa que cada nodo de Bitcoin es capaz de mantener conexiones bidireccionales con 8 nodos a la vez. El ciclo se repite en cada nodo, porque este comportamiento es parte del protocolo descrito en Bitcoin Core.

Ahora bien, esto representa tanto una ventaja como una desventaja. Por un lado, la ventaja que presenta es que al ser pocas conexiones, se requiere poco poder de cómputo y de ancho de banda. Esto abre las puertas a que cualquier persona desde cualquier parte del mundo pueda tener un nodo de Bitcoin. Con ello se descentraliza la red y se agrega mayor seguridad.

Pero la limitación de conexiones también tiene una desventaja, y es que resulta relativamente sencillo secuestrar estas conexiones. El esfuerzo requerido para lograr esto varía dependiendo de las protecciones, el proceso de selección segura de nudos y el tamaño de la red. Pero básicamente lo único que se necesita es una red de bots a su control y detectar las direcciones IP del resto de nodos de la red. Así cuando estos nodos reinician su conexión a la red, los nodos maliciosos pueden intervenir la conexión y tomar el control de la víctima.

Consecuencias de este tipo de ataque

Las consecuencias de los Eclipse Attack o Ataque Eclipse son variadas y entre ellas podemos mencionar:

Explotar las conexiones para controlar la red

Una vez que un actor malicioso ha tomado cierto control de la red, nada le detiene para seguir aumentando dicho control. De hecho, con cada nuevo nodo bajo su control, aumentar su presencia en la red se vuelve cada vez más sencillo. Una vez que tiene el manejo de los nodos puede manipular a su antojo las confirmaciones de bloques e incluso sabotear las conexiones de la red y rastrearlas.

Al final, el atacante puede ganar incluso el poder para manipular el crecimiento de la red alterando las versiones del libro mayor de la blockchain a su antojo.

Realizar ingeniería de carrera de bloques

Este es un tipo de ataque altamente especializado que puede realizarse en redes que usan el Protocolo de Prueba de Trabajo (PoW). Este tipo de ataque fue señalado en 2015 por los investigadores Ethan Heilman, Alison Kendler, Aviv Zohar, y Sharon Goldberg, en su trabajo “Eclipse Attack on Bitcoin’s Peer-to-Peer Network”.

La explicación del ataque es que si dos mineros descubren un bloque simultáneamente; un atacante podría usar un ataque de eclipse para que los mineros eclipsados ​​​​desperdicien el esfuerzo minero en bloques huérfanos. Eso le daría al atacante la capacidad de minar sus propios bloques. Al final, el atacante se asegura de que su bloque sea procesado por la red bajo su control y reciba la recompensa.

Otra posibilidad es dividir el poder minero de la red. De esta forma, el atacante podría facilitar el lanzamiento de un ataque de 51% que le ayude a reescribir la cadena de bloques o libro mayor.

Finalmente también abre la posibilidad a los ataques de doble gasto de confirmación N. Esto significa que un atacante puede controlar a un cierto grupo de mineros y de allí informar que la transacción ha recibido una serie de confirmaciones. Este ataque permitiría por ejemplo que un comerciante resulte engañado al pensar que la transacción por un servicio ha sido confirmada por la red. Pero en realidad, ha sido víctima de un elaborado ataque eclipse.

Ataques a protocolos de segunda capa

Otra consecuencia de este tipo de ataques es el de realizar ataques a los protocolos de segunda capa. Es decir, hacer vulnerable a protocolos como Lightning Network, OmniLayer o RSK en Bitcoin. O Incluso a creaciones derivadas de contratos inteligentes como todas las que se ejecutan sobre Ethereum, EOS o TRON.

Esto sería posible porque un Eclipse Attack engañaría a su víctima para que vea un estado irreal de la red. Por ejemplo, un canal de pago de Lightning se mostraría como abierto para la víctima, mientras que el atacante ha cerrado el canal llevándose consigo los fondos. En el caso de los contratos inteligentes, los usuarios verían estados inconsistentes de la cadena de bloques.

Dar origen a nuevos y más peligrosos vectores de Ataques

El Ataque Eclipse es también el origen de un tipo de ataque más peligroso y de mayor alcance, el Ataque Erebus. Este ataque, es capaz de ejecutar un Ataque Eclipse a gran escala sobre la red, teniendo como resultado la división de la misma. Como resultado, quien realice un Ataque Erebus es capaz de partir de la red y manejarla a su antojo, pudiendo incluso hacer una Denegación de Servicios (DoS), realizar un Ataque del 51% o crear un hard fork de la blockchain.

El Ataque Erebus es un ataque descrito en 2019 por Muoi Tran, Inho Choi, Gi Jun Moon, Anh V.Vu y Min Suk Kang, de la Universidad Nacional de Singapur.

¿Cómo se pueden prevenir los Eclipse Attack o Ataques Eclipse en las redes blockchain?

Este ataque es conocido desde hace mucho tiempo, de hecho, se conoce desde la misma creación de las primeras redes peer-to-peer. Por ejemplo, el protocolo Kademlia era susceptible a este tipo de ataques. Sin embargo, este protocolo implementó una serie de medidas para evitarlos. Algunas de estas medidas se siguen implementando hoy en día con algunas mejoras. Entre etsas medidas podemos mencionar:

Sistema de identificacion de pares

Este sistema busca que los pares de la red tengan un ID único e irrepetible. Esto es una forma de crear un árbol de ID que permite saber quién es quién en la red. En blockchain esto es posible gracias al uso de la criptografía asimétrica. Sin embargo, esta medida es insuficiente puesto que es posible ejecutar varios nodos que usan una misma IP. Así por ejemplo, un atacante puede crear varios nodos controlarlos y seguir aplicando su ataque a la red.

De ahí que esta medida se complementa con una limitación de identidades por IP evitando así que se explote este vector.

Proceso de seleccion de pares

Otro punto importante para evitar ataques eclipse es tener un proceso confiable de selección de pares para la red. Por ejemplo en Ethereum este proceso usa un protocolo basado en Kademlia. Esto le permite a Ethereum que cada elemento sea asociado con una clave y se almacene solo en aquellos pares cuyo ID de nodo está “cerca” de su clave asociada. Esta “cercanía” se define como la distancia binaria de Hamming entre la clave y la ID del nodo.

De esta forma, la red se asegura de tener una serie de nodos bien identificados y relacionados con otros.

Controlar las conexiones entrantes y salientes

Otra medida de control aplicada en blockchain para controlar los Eclipse Attack es controlar las conexiones entrantes y salientes. Para ello se establecen límites de comunicación con los nodos de la red de forma que en caso de un ataque a un nodo éste no pueda afectar a buena parte de la red. Así se evita que el área de acción de un nodo sea muy grande y el atacante deba controlar varios nodos para realizar un ataque con éxito. Adicionalmente la medida se va fortaleciendo con la descentralización y ampliación de la red.

Estas tres protecciones en total son las más básicas que toda red blockchain aplica sobre sus protocolos. La finalidad de las mismas es clara: hacer altamente costoso un Eclipse Attack. La aplicación de todas estas mitigaciones conlleva que el atacante debe hacer un enorme esfuerzo por controlar la red y realizar su ataque. De hecho, mientras mayor sea la red a atacar más difícil es realizar este ataque. De allí que los promotores de una blockchain siempre pidan que se instalen nodos completos para fortalecer la red.

Eclipse Attack vs Sybil Attack, diferencias entre estos ataques

Ahora bien existe una cierta relación entre lo que es un Sybil Attack y un Eclipse Attack, que explicaremos a continuación.

Un Eclipse Attack o Ataque Eclipse tiene lugar cuando la mayoría (si no todos) de sus pares son maliciosos y básicamente evitan que esté bien conectado a la red para obtener información sobre las transacciones que tienen en el mismo lugar. Esto resulta útil cuando un atacante quiere manipular una transacción para hacerle creer que la misma se ha ejecutado con éxito, cuando realmente ha sido manipulado.

De esa forma, el atacante realizará un doble gasto y su víctima pensará que la transacción ha sido confirmada. Al final, cuando el ataque termina y la víctima contacta con nodos confiables, se da cuenta del ataque y que los fondos nunca fueron enviados. Mientras que un Sybil Attack o Ataque Sybil, por otro lado, es cuando un actor malintencionado intenta enviar spam a la red con nodos que controla intentando subvertir el sistema de reputación de la red.

Para resumir, un Ataque Eclipse está dirigido a una sola parte; mientras que un Ataque Sybil está dirigido a toda la red.

¿Cómo evitar ser víctimas de los Eclipse Attack o Ataque Eclipse?

La mejor manera de protegerse de este tipo de ataques es tener en cuenta una serie de recomendaciones. Entre estas podemos destacar:

  • Asegúrese de usar un sistema de pago y billeteras con buena reputación. De ser posible, trate de instalar un nodo propio y úselo para verificar sus transacciones. De esta forma no solo contribuirá a asegurar la red sino que creará una medida de seguridad para protegerse de este tipo de ataques.
  • Evite en cualquier caso aceptar pagos 0-conf o sin confirmaciones. Recuerde que en este estado, las transacciones pueden ser manipuladas de muchas maneras y el ataque eclipse es una de ellas.
  • Si tiene un nodo propio asegúrese de blindar el mismo. La forma más sencilla es limitar el número de conexiones entrantes, un firewall que evite estas conexiones es una buena forma de empezar.
  • Asimismo, también puede revisar de forma periódica las conexiones de su nodo o wallet y crear una lista de nodos confiables para que los uses en todo momento. Esto le evitará amargas sorpresas en caso de que su nodo este conectado a un nodo malicioso que libere este tipo de ataques hacia usted o cualquier otro usuario de la red.
  • Mantenga actualizados sus monederos y nodos. Los desarrolladores son conscientes de los ataques eclipse y siempre buscan manera de fortalecer los protocolos de conexión. Una actualización en este sentido puede proporcionarles una mejor defensa contra este tipo de ataques.

Con estas sencillas recomendaciones usted podrá estar mejor protegido frente a este tipo de ataques y cuidar así de su dinero y privacidad.

CriptoMundo

CriptoMundo.com es un medio digital independiente que difunde noticias y contenido sobre criptomonedas y tendencias emergentes de tecnologías financieras. Ofrece noticias, guías, artículos de opinión y gráficos en tiempo real.

Monedas

Bitcoin

Ethereum