El ataque Erebus es un tipo de ataque capaz de afectar a la red de criptomonedas como Bitcoin y derivadas, logrando alterar el funcionamiento de la misma e incluso imposibilitando su funcionamiento normal.
Uno de los ataques menos conocidos del mundo de la criptomonedas es el recientemente conocido ataque Erebus. Este es un tipo de ataque de denegación de servicios distribuido o DDoS, que tiene la capacidad de tomar el control de toda una red de criptomoneda hasta el punto de volverla inutilizable. Ciertamente una grave amenaza para el funcionamiento de las criptomonedas, y que puede echar por tierra los esfuerzos por un mundo descentralizado. Afortunadamente, los desarrolladores de criptomonedas no solo están al tanto del ataque, sino que también han creado contramedidas para evitar tal desenlace.
Pero ¿Cómo es posible que el ataque Erebus pueda inhabilitar una red de criptomonedas? ¿Qué medidas se han tomado para evitar este problema? Pues bien, eso y más es lo que te explicaremos en este nuevo artículo de Bit2Me Academy.
Ataque Erebus, un peligroso enemigo para las redes de criptomonedas
El conocido ataque Erebus es en realidad un ataque distribuido de denegación de servicios (DDoS), es decir, es un ataque que busca cortar el correcto funcionamiento de una red haciendo que la misma sea inaccesible para sus usuarios. De esta manera, resulta imposible para cualquier usuario (o buena parte de estos) realizar transacciones de criptomonedas sobre la red atacada.
Para lograr esto, el ataque Erebus funciona en dos fases:
- Primero, crea un punto de intervención y control usando nodos maliciosos que tendrán como objetivo manipular las conexiones del resto de nodos de la red y dividir la red.
- Segundo, manipula la información que se transmite en la red para evitar que llegue a su destino, e incluso, que sea manipulada según lo requieran los atacantes.
Este tipo de ataques suponen un grave riesgo a la seguridad de las redes y usuarios de criptomonedas. El trabajo que llevó al descubrimiento de esta forma de ataque fue realizado por los investigadores Muoi Tran, Inho Choi, Gi Jun Moon, Anh V.Vu y Min Suk Kang, quienes desarrollaron la teoría y una prueba de concepto funcional en julio de 2019, en su trabajo “A Stealthier Partitioning Attack against Bitcoin Peer-to-Peer Network”.
Desde ese momento, los desarrolladores de criptomonedas comenzaron a tomar medidas para evitar este tipo de ataques. Y, como no podía ser de otra manera, los desarrolladores de Bitcoin fueron los primeros en tomar medidas para evitar este tipo de ataques a la red Bitcoin.
¿Cómo funciona el ataque Erebus?
Ahora bien, para entender cómo funciona el ataque Erebus, es necesario comprender primero cómo funciona una red de criptomonedas. En tal sentido, es bueno repasar que una red de criptomonedas, no es más que, un enjambre de ordenadores que ejecutan un software que les permite comunicarse unas con otras. Estos ordenadores envían y reciben información por medio de Internet usando un lenguaje o protocolo común, que les permite funcionar de forma conjunta. Así por ejemplo, un ordenador con el software de Bitcoin ubicado en España, puede enviar y recibir información a otros ordenadores ubicados en cualquier otra parte del mundo, y todo ello sin intermediarios y de forma descentralizada. Es lo que llamamos una red peer-to-peer o P2P.
Ahora bien, si bien la red de Bitcoin y otras criptomonedas, está organizada de forma altamente descentralizada, Internet, el puente de comunicación entre los nodos de esas redes, es otra historia. Internet es una red de millones de ordenadores, pero no está completamente descentralizada. En realidad, existen puntos que son tan vitales, que manipularlos haría que millones se queden sin servicio de Internet. Además, tu proveedor de Internet, también puede manipular tu conexión y evitar que, por ejemplo, puedas acceder a una determinada web o servicio.
Por ejemplo: Actualmente en España, el principal operador de telecomunicaciones Movistar, y el propio gobierno de España, censuran el acceso a webs constantemente, de igual forma que ocurre en China o en numerosos países donde los gobiernos quieren manipular la información o bloquear el acceso libre a la misma.
En este punto es claro que, Internet es un punto débil en el funcionamiento de la una red de criptomonedas. En especial, si hay alguien que pueda manipular dichas conexiones a bajo nivel, haciendo que la red de criptomonedas no funcione de forma correcta.
Pues bien, es precisamente esto lo que hace el ataque Erebus. Aprovechando la capacidad del protocolo de criptomonedas como Bitcoin para conectar los distintos nodos de la red, realiza un ataque de hombre en el medio (MITM) para manipular las conexiones de esos nodos conectados. Un ataque de hombre en el medio (MITM), sucede cuando alguien es capaz de interceptar una conexión entre dos máquinas para escuchar, e incluso manipular, toda la información compartida por esas dos máquinas durante la conexión. Así, básicamente quien realiza un MITM es un espía. Uno que es capaz de ver toda la información que compartimos con el resto.
Para realizar el ataque Erebus, se han de explotar dos puntos débiles:
- La partición de redes de Internet controlada por los AS (Autonomous System o Sistema Autónomo). Estos permiten a las empresas o gobiernos que los controlan, manipular el tráfico de sus redes y subredes según se desee.
- Una debilidad en la selección y variabilidad en las conexiones de los nodos con otros nodos de la red. Gracias a esto, quien controle un AS puede manipular las conexiones de los nodos para que estos se conecten a nodos manipulados dentro del rango de acción del AS malicioso.
Alcances y peligros del ataque
Como resultado de estas dos debilidades, el ataque Erebus es capaz de manipular las conexiones de los nodos víctimas y redirigirlas como lo desee. Esto por ejemplo haría posible los siguientes escenarios:
- Afectar las reglas de consenso de la criptomoneda. Esto es posible para el atacante ya que al manipular la comunicación de los nodos de la red y redirigirla a nodos manipulados con un conjunto de reglas de consenso distintas, estos pueden romper el consenso completo de la red, originando un hard fork. Así, el atacante puede aplicar sobre la red el conjunto de reglas de consenso que desee.
- Manipular el poder minero de la red. Gracias a que el atacante puede alterar las rutas de comunicación de la red, es posible que se adueñe de poder minero dividiendo la red. Los mineros dependen de los nodos de los pools para su trabajo, y si esos nodos son manipulados, el trabajo de los mineros puede dirigirse hacia donde el atacante desee. Así, con ese poder minero a su favor es posible realizar cualquier otro tipo de ataque usando esquemas de ataques como el del ataque de 51%.
- Puede afectar al protocolo de segunda capa e incluso sidechains que dependen de la red criptomoneda atacada. Así por ejemplo, un ataque Erebus sobre Bitcoin, podría afectar a Lightning Network, y todo esto debido a que si bien LN es una red distinta, su funcionamiento depende del funcionamiento de Bitcoin.
Como se ve, el alcance del ataque es extenso pero no queda solo allí. Además, un ataque Erebus cuenta con unas características que lo hacen aún más peligroso:
- El ataque es indetectable. El atacante puede iniciar el mismo días o semanas antes, y las consecuencias del mismo no se verán hasta el momento en ya se esté ejecutando una acción maliciosa fuera de los parámetros conocidos de la red.
- Puede ser llevado a cabo rápidamente. De hecho, cualquier proveedor de servicios calificado con Tier-1 o Tier-2 (grandes redes o conjunto de redes Internet) puede llevar a cabo el ataque sin mayores problemas. Según el estudio mencionado anteriormente, para una red Tier 2 sería posible llevar a cabo un ataque a gran escala en poco menos de seis semanas usando un solo ordenador, un periodo que se puede acortar usando grandes complejos de servidores como los de Amazon o Google.
- Contramedidas complejas de aplicar, lo que hace que solucionar el ataque sea complejo.
¿Cuánto sabes, criptonauta?
¿Este tipo de ataques demuestran que las criptomonedas son inseguras?¡FALSO!
Si bien el ataque Erebus es un ataque que realmente puede dejar fuera de juego a una red como la Bitcoin, en la practica realizarlo no es nada sencillo. De hecho, en la actualidad ya el proyecto ha tomado acciones que evitan que estos ataques tengan tanto impacto sobre la red. Además, la idea es mejorar aún más para evitar este tipo de acciones y otras que puedan surgir a futuro.
Redes de criptomonedas afectadas
Los investigadores detrás del descubrimiento de Erebus han comprobado su teoría usando como ejemplo la red de Bitcoin, lo que convierte a Bitcoin en su primera red de criptomoneda afectada por este tipo de ataques.
La razón es que el protocolo de comunicaciones P2P de Bitcoin es vulnerable a este tipo de ataques. Adicional, cualquier otra criptomoneda que use la base del protocolo de comunicaciones P2P de Bitcoin, también es vulnerable a este tipo de ataques. En tal sentido, otras redes de criptomonedas susceptibles a estos ataques son Bitcoin Cash, Litecoin, Dash (a nivel de nodos y mineros, no de Masternodes), Zcash, Qtum, Bitcoin Gold, o DigiByte, entre otras.
Sin embargo, un grupo de criptomonedas que usan protocolos Gossip o modificaciones del mismo para su funcionamiento, como Ethereum, no se ven afectadas por este tipo de ataques. Incluso, pueden detectar el ataque con cierta facilidad al detectar la manipulación de los nodos.
Soluciones al problema
Pese al peligro que representa el ataque Erebus, los desarrolladores de Bitcoin ya han puesto manos a la obra. De hecho, con el lanzamiento de Bitcoin Core 0.20.0, el software de Bitcoin viene con una contramedida pensada para hacer más difícil el ataque Erebus. Esta función se conoce como Asmap, cuyo objetivo es:
- Evitar que un sistema autónomo (AS) (una colección de prefijos de enrutamiento de Protocolo de Internet (IP)) conectados bajo el control de uno o más operadores de red (generalmente ISP o grandes empresas) pudiera manipular el enrutamiento de las conexiones de los nodos de forma que afectara el funcionamiento de la red.
- Prevenir que los atacantes pudieran usar el Border Gateway Protocol (BGP) para controlar el enrutamiento de paquetes entre diferentes sistemas autónomos para conectarlos. Con ello los atacantes podrían secuestrar de forma efectiva las conexiones de los nodos y usarlas para su propio beneficio.
Para defender a Bitcoin de este problema, el equipo de desarrollo de Bitcoin Core, decidió tomar algunas acciones adicionales entre las que tenemos:
- Aumentar la cantidad de conexiones de los nodos hasta las 125 conexiones diferentes. Por defecto, el nodo se conecta a 10 nodos con conexiones salientes, de las cuales; 8 son full-relay y 2 block-only relay.
- Las conexiones deben respetar un sistema de agrupamiento diseñado para diversificar las conexiones de los nodos. Esto evita que los nodos elijan las conexiones dentro de un mismo grupo de IP asignados por un mismo AS regional.
En conjunto, estas medidas hacen que el ataque Erebus sobre Bitcoin sea aún más difícil de realizar, pero no imposible.
Por otro lado, más allá de las acciones llevadas a cabo en Bitcoin, otros proyectos de criptomonedas derivados también han tomado las mismas acciones. Es el caso por ejemplo de Litecoin, un proyecto que comparte el mismo protocolo de red de Bitcoin, y donde han aplicado las mismas directrices para proteger la red. En todo caso, los desarrolladores de criptomonedas son conscientes de los riesgos, y por ello han tomado acciones para evitar que estos ataques puedan llevarse a cabo con facilidad. Después de todo, una de las principales banderas de las criptomonedas es la seguridad, y ese es un trabajo que nunca se detiene.