Una de las mayores preocupaciones que se presentan en la era tecnológica en que vivimos, es la utilización malintencionada de los bots o inteligencias artificiales.
En consecuencia, al contrario de lo que pensaríamos, las redes blockchain (entornos seguros) también se pueden ver afectadas ya sea por fallas bizantinas, ataques DDoS (ataque de denegación de servicio), entre otros.
Hoy conversaremos sobre un ataque en particular que puede amenazar la seguridad de cualquier sistema y que es una preocupación constante en el ecosistema cripto.
Como no podría ser de otra forma, comencemos por saber qué son los ataques de Sybil (Sybil Attack).
¿Qué es un ataque de Sybil?
Un ataque Sybil es un ataque que amenaza la seguridad de un sistema, puesto que es un actor malicioso que intenta controlar por completo una red, utilizando múltiples identidades falsas, nodos o pcs.
Este tipo de ataques suelen presentarse en redes p2p (peer to peer), es decir, que trabajan a través de una serie de nodos o computadoras que funcionan iguales entre sí.
Una forma en la que podría ejemplificar estos ataques, es con las votaciones presidenciales.
Ejemplo
Imaginemos que tenemos dos candidatos y uno de ellos, tiene mayor popularidad y se espera que gane.
Sin embargo, varias de las personas que tienen acceso a las papeletas electorales, toma los datos de los votantes, se deshace de estos votos e introduce nuevas papeletas con votos para el candidato menos popular.
De esta manera, en este proceso se están falsificando votos y, por tanto, las identidades de los votantes para tener una administración completa del sistema de votación.
En un escenario común, podríamos llegar a identificar a las personas que supervisan la votación o que infringieron las normas cibernéticas.
No obstante, en un universo descentralizado donde prima el anonimato, es realmente difícil concluir que las identidades provienen de una sola persona.
Como dato curioso, el nombre “Sybil” proviene del libro de 1973 “Sybil” de la periodista Flora Theta Schreiber.
Este libro estudia el caso de Shirley Ardell Manson, cuyo pseudónimo es Sybil Dorsett, una mujer diagnosticada con trastorno de identidad disociativa (TID), anteriormente llamado “trastorno de la personalidad múltiple”.
En 2002, Brian Zil, un informático de Microsoft, sugirió el nombre para un trabajo de John R. Douceur, un investigador de este tema de Microsoft.
¿Cómo funciona un ataque Sybil?
Como lo mencionábamos, una red peer to peer trabaja por medio de nodos. Cada nodo tiene una función dentro del sistema.
Un ataque de Sybil exitoso en una cadena de bloques es aquel en que se crean suficientes identidades o nodos para influir sobre los otros.
Incluso se puede obtener el dominio completo si las identidades falsas logran superar la votación de los nodos honestos en la red, tal y como en el ejemplo del candidato presidencial poco reconocido.
Una vez que logre la contaminación del sistema por el gran número de identidades, puede:
- Alterar rutas.
- Modificar contenido almacenado.
- Negar la creación de bloques, lo que impide el registro y funcionamiento de las transacciones.
Si logra llegar a una gran escala donde puedan controlar la mayor parte de la red, puede producirse un ataque del 51%. En él, se pueden cambiar el orden de las transacciones, duplicar el gasto o revertir las operaciones.
¿Cómo puede prevenirse?
Hay cinco formas esenciales para disminuir el riesgo de que se presenten este tipo de ataques:
1. Otorgar diferentes poderes a diferentes miembros
Una solución pueden ser los sistemas de reputación, en los cuales se tiene diferentes niveles de poder de acuerdo con la confiabilidad que tenga esa persona dentro de la red.
2. Generar costos para crear una identidad
Puede pedirse una suma de dinero con el fin de que cada persona pueda crearse una identidad.
De esta manera, será más complicado para el atacante cubrir los costos para ejecutar su ataque.
3. Limitar el número de identidades por nodo
Una manera eficaz es no permitir que se puedan operar múltiples identidades falsas al mismo tiempo desde la misma IP o dispositivo.
4. Validar las identidades antes de unirse a la red
Existen dos maneras de hacerlo:
La directa, en la que una entidad ya establecida está encarga de verificar al nuevo integrante de la red.
Por otro lado, la indirecta, la cual funciona como un sistema de confianza en el que la entidad ya establecida verifica a unos miembros.
Después, quienes pueden verificar a los nuevos miembros que se unan después de ellos y así sucesivamente. Este modo parte de la premisa de que los nuevos usuarios sean honestos.
5. Aplicar un conjunto de reglas para la generación de nuevos bloques
Los algoritmos de consenso de diferentes proyectos como Bitcoin, emplean “reglas” para eludir estos ataques.
Una de ellas, puede ser que cada nodo tenga la potencia computacional necesaria para crear un nuevo bloque.
Por consiguiente, se dificultará la creación de diversas identidades sin que provengan del mismo pc, sobre todo teniendo en cuenta algoritmos como Proof of Work.
Así mismo, mediante las recompensas aseguran que los mineros mantengan su minería de manera honesta.
En este blog también hemos hablado de Proof of Humanity, una novedosa solución avalada por Vitalik Buterin para prevenir ataques Sybil. POH crea el primer registro descentralizado de humanos para hacer frente a esta problemática.
¡Felicidades por llegar hasta el final!
Si quieres saber más sobre estas temáticas puedes dar clic a los artículos relacionados que se encuentran debajo.
¡Hasta la próxima!
GIPHY App Key not set. Please check settings