En los últimos meses, diversas criptomonedas han sufrido una serie de ataques que han comprometido el bienestar de sus comunidades y el funcionamiento de sus respectivas redes. Ataques de retención de bloques, ataques del 51% y hackeos han sido algunos de las principales estrategias que han puesto en jaque la seguridad de estas blockchains. En este artículo le mostraremos los casos más resaltantes en lo que va de año.
Ataques del 51% y de retención de bloques
Un ataque del 51% proviene de la habilidad de controlar en poder de procesamiento de una red para alterar el historial de las transacciones o evitar que las mismas se confirmen. En el caso de redes como Bitcoin, la alteración se logra mediante la obtención, por parte del atacante, de la mayor cantidad de poder de procesamiento durante la ejecución de la Prueba de Trabajo, que es el mecanismo mediante el cual se completa el registro de las operaciones que se realizan en la red y que está diseñado para distribuir de manera aleatoria entre todos los participantes el procedimiento que actualiza el historial de la red cada cierto tiempo. En este tipo de blockchains, se privilegia el registro que cuente con la mayor cantidad de bloques al considerarse el más actual. Con este tipo de agresiones puede comprometerse el proceso de actualización y registro de la red.
Estos ataques suponen la concentración de más de la mitad del poder de procesamiento para poder validar las cadenas de bloques que cuenten con las transacciones que el atacante desee, generalmente destinadas a realizar importantes movimientos de retiro o depósito de criptomonedas. Concentrando la suficiente cantidad de poder de minado, un atacante podría manipular el estado de la red, pudiendo llegar a controlar el registro de transacciones en la cadena de bloques de una criptomoneda. Bajo este tipo de ataques el manejo de la blockchain es discrecional.
Por su parte, el ataque de retención de bloques implica que un atacante se asegura de concentrar un porcentaje de poder de procesamiento que sin llegar al 51% del total es suficiente para poder tomar control de la cadena por un lapso de tiempo, generando bloques de operaciones modificadas que se puedan insertar en la cadena original. El minero malicioso mina bloques con transacciones que quiere mantener pero no los propaga. Así, va llevando su cadena “secreta”, que será más larga que la actual de la red.
Luego de lograr su objetivo, bien sea depositar una cantidad de monedas o cambiarlas por otras, el minero propaga toda la cadena de bloques secretos que tenía y como es más larga que la actual, crea una suerte de bifurcación en la red que deja a los bloques anteriores huérfanos, invalidando las transacciones previas, sustituyendo el estado de la red por sus bloques manipulados.
Las criptomonedas que utilizan PoW para su consenso y requieren poco poder de procesamiento son especialmente vulnerables a estos ataques porque resulta difícil defender la cadena de bloques de atacantes que tengan una capacidad de procesamiento mayor, bien sea porque alquilaron el hardware necesario durante un tiempo determinado o porque forman parte de un pool de minería que posee la capacidad técnica de minar en distintas cadenas de bloque.
Monacoin y Electroneum: dos avisos
Algoritmos: Lyra2REv2 (VertCoin, Rupee, Straks) y CryptoNightV7 (Monero).
El pasado 21 de mayo la red de Monacoin sufrió un ataque de retención en el que un atacante consiguió minar varios bloques consecutivos sin comunicarlos al resto de la cadena. De esta forma, su respaldo de la blockchain se consideró la correcta por tener mayor cantidad de bloques que la principal. Al conseguir esto, el minero pudo ejecutar transacciones y luego desechar su cadena, al volver a la cadena principal las monedas creadas serán invalidadas, pero el atacante seguirá con el producto de su compra. A través de este ataque, el perpetrador causó daños equivalentes a unos 90.000 dólares.
En el caso de Electroneum, los atacantes concentraron una cantidad significativa de poder de minado, aunque no pudieron obtener fondos. Los responsables de la red están trabajando desde finales de mayo en una actualización de su blockchain, por lo que el ataque fue neutralizado, además de notificar a los operadores de pools de minería sobre la posibilidad de que hubiese algún tipo de alteración en la cadena.
Bitcoin Gold y el ataque que no fue
Algoritmo: Equihash (Zcash, Bitcoin Private, ZenCash, Zclassic son algunas monedas que usan este algoritmo)
El pasado 21 de mayo, el proyecto Bitcoin Gold sufrió un ataque de 51%, aunque no se determinó si el atacante obtuvo dicho porcentaje de poder de procesamiento, cuyo principal objetivo era aprovechar los sistemas automáticos de las casas de cambio que trabajan con este criptoactivo, según palabras del equipo de Bitcoin Gold. «Una casa de cambio podría aceptar grandes depósitos automáticamente, permitir a los usuarios intercambiarlos a otra moneda rápidamente y después retirar los fondos automáticamente. Por esto es que están enfocándose en las casas de cambio», explicó el desarrollador de Gold, Ed Iskra.
En este tipo de ataques el procedimiento consiste en ejecutar una transacción, contar con la aprobación rápida de la casa de cambio para hacer el intercambio a otra moneda y posteriormente revertir la transacción realizada al principio, aprovechando el dominio de cómputo y registro en la red.
No obstante, si bien no se confirmó el efecto del ataque, y el suceso no obtuvo los réditos esperados, algunas casa de cambio como Bittrex incluso cancelaron sus operaciones con BTG a fin de evitar ver comprometida la seguridad de sus fondos.
Verge o caer tres veces con la misma roca
Algoritmo: Myr-Groestl, scrypt, lyra2re, X17 y Blake2s.
El 24 de mayo Verge sufrió un importante ataque del 51%, según las declaraciones del equipo detrás del proyecto. Aunque no se divulgaron datos más precisos, se presume que, pese a que ha sido denominado de esta manera, se haya tratado de un ataque de retención de bloques, que resultó en la generción de 35 millones de XVG, con un valor de 1.4 millones de dólares para el momento del suceso. El atacante logró tomar posesión de un porcentaje importante del poder de procesamiento de la red, vulnerando los algoritmos lyra2re y scrypt.
El atacante aprovechó dos características de esta blockchain: el uso de cinco algoritmos diferentes y el protocolo de ajuste de dificultad por algoritmo. Así, creó bloques con una marca temporal falsa para engañar al protocolo y reducir drásticamente el nivel de dificultad de minado de la sección que utiliza el algoritmo scrypt, por lo que pudo generar 35 millones de criptomonedas en horas. Sin embargo, el caso de Verge es particular, esta misma falla ya había sido aprovechada a inicios de abril.
Recordemos que en ese momento el hacker minó cientos de bloques con marcas de tiempo falsas, con sólo segundos de diferencia entre ellos, todos aprovechando el algoritmo scrypt. En este ataque se produjeron unos 250.000 XVG, y el equipo de Verge decidió aplicar un hardfork para solucionar el problema, y retrotraer la cadena a bloques anteriores al ataque.
Hace pocos días se reportó un nuevo ataque de retención de bloques. En foros como Bitcointalk se ha señalado que las modificaciones hechas para corregir los errores anteriores no han sido suficientes, y el aumento de la dificultad no ha mitigado el potencial ataque de retención de bloques.
Lol $xvg. Verge is suffering it’s 3rd attack in like a month. Remember when the virgens were mad at me for fudding their shitcoin? Good times. https://t.co/h65I15igp0
— Crypto Beak (@crypto_beak) 29 de mayo de 2018
Varios usuarios reportaron que debido a la falla, sus carteras no habían recibido sus tokens o los bloques de sus operaciones habrían quedado huérfanos. Incluso algunos se mofaron del proyecto, dado que las carencias de seguridad de su código y la inconveniencia de trabajar con cinco algoritmos diferentes han sido señalados como puntos débiles de esta moneda.
ZenCash: 550.000 dólares y 38 bloques reversados
Algoritmo: Equihash
El equipo de desarrollo de ZenCash publicó un comunicado informando que la red recibió un ataque del 51%, así descrito por el equipo desarrollador, a través del cual un agresor logró tomar control del registro de la cadena de bloques, reorganizando la data registrada para robar 550 mil dólares a través de transacciones que generaron doble gasto a los mineros. El ataque sucedió este domingo 3 de junio.
Miembros de un pool de minería que trabaja en esta red informaron al equipo de desarrollo, quienes implementaron medidas de mitigación como contactar a los responsables de casas de cambio que trabajan con ZEN e iniciar una investigación sobre las operaciones sospechosas. La investigación de los desarrolladores ayudó a hallar dos transacciones de doble gasto de 6.600 y 13.000 ZEN, equivalentes a unos 550 mil dólares.
¿Listas de precios?
Esta vez, los ataques del 51% cobran fuerza e incluso han habido los que aventuran sus propios cálculos sobre el valor de un ataque de esta naturaleza. En la red circula un listado de precios del costo que, en teoría, tendría un ataque de este tipo durante una hora, mediante la renta de poder de minado. Si se consideran factores como la adquisición de hardware y consumo eléctrico -aunque estos no son los único caminos para realizar un ataque de este tipo- las cifras ascienden considerablemente.
Según esta lista, basada en los precios de alquiler de equipo minero de NiceHash durante una hora de ataque del 51% contra la blockchain tendría un costo de 587.864 dólares. No obstante, NiceHash no posee verdaderamente la capacidad para minar una red de la magnitud de Bitcoin. BTC.com, Antpool y BTC.TOP tendrían que unir su poder de minado en la red de Bitcoin para poder realizar un ataque del 51% exitoso, un acuerdo que cuando menos luce poco probable.
Otras blockchains como Litecoin (con 62.401 dólares) o Ethereum Classic (con 13.599 dólares) dan la impresión de que el procedimiento es posible, aunque no podría asegurarse que por esas cifras algún grupo minero esté dispuesto a alquilar sus equipos de minería.
Dado que varias cadenas de bloque que requieren un poder de procesamiento elevado y comparten procedimientos de consenso utilizan los mismos algoritmos y hardware para realizar la confirmación de los bloques con transacciones, las cadenas de bloques que requieren menor poder de procesamiento son vulnerables a ataques de grupos o personas que decidan utilizar su ventaja técnica, -su mayor poder de procesamiento- para tomar control una determinada blockchain.
Según los creadores de la lista, el objetivo no es incentivar este tipo de ataques, sino que se abra una discusión, debido a que representan una fuerza erosiva y a su peligrosidad para el bienestar y desarrollo del ecosistema. La idea es que la comunidad de las criptomonedas discuta de manera cotidiana estos riesgos y evalúe las formas para mitigarlos.
Imagen destacada por Glebstock / stock.adobe.com