La supercomputación lleva mucho tiempo con nosotros. Hace unos meses, saltó la noticia de que varios superordenadores del mundo habían sido atacados por un grupo de ciberdelincuentes. Inmediatamente se encendieron todas las alarmas.
Supercomputación
La supercomputación tuvo su origen en la década de los 60. La idea consistía en disponer de un sistema que permitiera la ejecución paralela de tareas, primero utilizando un único procesador y posteriormente añadiendo más procesadores que compartieran una misma unidad de memoria. Bajo este modelo, los ordenadores podrían ejecutar programas complejos y reducir los tiempos de cálculo que tenían asociados. Visto de forma simplificada, se trataba de pasar de un concepto secuencial de ejecución de instrucciones a una paralelización de tareas que permitiría adelantar parte del trabajo computacional a realizar.
Megaflops, Gigaflops, Teraflops…
Actualmente el concepto de supercomputación permanece prácticamente invariable, es decir, basado en la agregación de miles de núcleos de procesamiento que trabajan en paralelo y comparten una memoria común. Y, por supuesto, con elementos de comunicaciones de altas prestaciones para poder intercambiar información.
Se trata de un tipo de computación que ha experimentado un crecimiento exponencial en los últimos años gracias a las mejoras conseguidas en el diseño de CPUs.
A modo de ejemplo, una simple consola de videojuegos actualmente puede hacer operaciones aritméticas (operaciones en coma flotante, como se conoce en el sector) casi mil veces más rápido de lo que lo hacía el mayor supercomputador de 1985.
Los 500
A día de hoy, existen miles de sistemas que prestan servicios de supercomputación. El mercado en 2019 alcanzó los 35,8 billones de dólares y es de esperar que mantenga su crecimiento anual del 7% durante los próximos cinco años.
De la lista de los 500 supercomputadores más importantes del mundo solo dos están en España. Bajo el nombre de MareNostrum, y creados por IBM, se localizan en Barcelona y constituyen el centro de proceso de datos más importante de nuestro país.
Con su ingente capacidad de trabajo, los superordenadores se han convertido en un recurso imprescindible, por ejemplo, para la investigación biomédica —a través del uso de simulaciones para avanzar en el diagnóstico de enfermedades—, para el diseño de componentes en sectores de la industria o para los servicios proporcionados desde la nube.
La amenaza
Hace unos meses se descubrió una secuencia de ciberataques a varios supercomputadores en Europa. Se llegó incluso a sospechar que el ataque podría haber llegado a España.
Centros de Alemania, Gran Bretaña y Suiza sufrieron algún tipo de eventualidad en sus protocolos de seguridad. Sistemas como ARCHER en Edimburgo, Hawk en Stuttgart, JURECA en Jülich, Taurus en Dresde o el CSCS en Suiza fueron parte de los ordenadores afectados.
Los ataques coincidieron con un momento en el que se estaba haciendo un uso extensivo de su capacidad computacional para trabajos relacionados con el Covid-19.
Anatomía de los ataques: Linux como referencia
La Fundación europea EGI, encargada de proporcionar los servicios de supercomputación para centros de investigación e innovación, publicó entonces un informe donde se analizaron dos de esos incidentes.
Algunos expertos del sector consiguieron identificar el malware y elaborar patrones de referencia —a través de técnicas de ingeniería inversa con herramientas empleadas por la NSA como Ghidra. Este análisis certificó la hipótesis del uso de los superordenadores para obtener criptomonedas. La principal conclusión fue que los delincuentes accedieron los supercomputadores a través de “credenciales de usuarios ssh comprometidas”.
Con las claves de acceso, los ciberdelincuentes instalaron un rootkit llamado Diamorphine. A partir de él fue sencillo abrir una línea de comandos en Linux (“/bin/shell”) con los máximos privilegios que después borraría cualquier traza de su ejecución. Porque sí, la mayor parte de los supercomputadores están basados en sistemas Linux. Algo impensable hace algunos años.
Dos décadas atrás, solo una de las 500 principales “superestructuras” de computación empleaba Linux como sistema operativo. Sin embargo, actualmente no existe ni una de ellas que no lo utilice.
¿Podemos hablar de super-ciberseguridad?
Llegados a este punto, algunos se preguntarán: ¿cómo se consigue proteger una supercomputadora o una red de supercomputadoras?
Básicamente las medidas son muy similares a las de cualquier otro servicio. La supercomputación basada en clusters de ordenadores no dejan de estar constituida por elementos en red y, por tanto, susceptibles de ataques tanto internos como externos.
En estos sistemas el uso de modelos de clustering robustos resulta indispensable. También la utilización periódica de escáneres de red (procesos, tráfico o puertos) o utilidades para identificar parches o actualizaciones necesarias para reducir el número de vulnerabilidades. Y, por supuesto, herramientas de gestión de identidad, autenticación, autorización y auditoria.
Realmente no podemos decir que exista el concepto de super-ciberseguridad dirigido a este tipo de ordenadores. Sus amenazas vienen a ser las mismas que las de cualquier otro equipo. Evidentemente un ataque a un sistema de supercomputación puede tener implicaciones serías. Sus capacidades pueden ser utilizadas para realizar ataques de DDoS, ejecutar algoritmos para descifrar información o crear repositorios de herramientas para otros ataques. Pero no son muy diferentes a las de otros grandes sistemas.
Quizás lo que sí varíe sea el nivel de riesgos y hasta dónde puedan ser asumidos. Por eso, cuando hablemos de cómo protegerlos no deberíamos dejarnos tentar por términos como super-ciberseguridad sino simplemente utilizar la palabra ciberseguridad, sin más prefijos.