Subscribe Us

Header Ads

El análisis definitivo de Stuxnet (En español) probablemente el virus mas peligroso de la historia

Alguna vez en mi anterior blog (Perucrack) hace ya varios años hablé sobre lo que fue Stuxnet, en pocas palabras Stuxnet es probablemente el virus mas inteligente de la historia que llego a afectar plantas industriales en Iran ocasionando perdidas millonarias e iniciando un debate de lo que ahora conocemos como Ciberguerra. 



Hace ya un bien tiempo me tope con un documento publicado por Bruce Schenider, investigador y criptografo norteamericano, en el que hace un análisis muy a detalle de como actuó este virus en su momento. Me tome el fin de semana para escribir este articulo para resumir lo que explica en sus casi 40 paginas.

El documento comienza con un resumen ejecutivo de lo que trata esta investigación nos habla de como funciona este malware y sus vectores de ataque. En una segunda sección explica sobre algunos conceptos erróneos de lo que es Stuxnet, el objetivo principal que tuvo y aborda el cuestionamiento de la participación del estado en estos tipos de ataques. En la ultima sección nos cuenta un poco mas a profundidad la documentación que evidencia la investigación para entender mejor el ataque. 




Para entender este ataque no hace falta comprender solamente el código utilizado o saber si se aprovecho de un Zero-Day, hace falta comprender la parte física, entender cual fue el objetivo principal de este ataque, el diseño de la planta industrial y los parámetros de proceso de esta misma. Scheneider nos cuenta que para un ataque denominado Cyber-Físico existen 3 capas.

La Capa de TI se usa para propagar el Malware a esta capa la denominan Propagación, la segunda capa de control industrial de sistemas que se usa para manipular (No interrumpir) el control o funcionamiento de las maquinas industriales la denomina Manipulación, finalmente la capa física en donde se encuentra el daño real, daños a los sistemas eléctricos, válvulas de control, etc la denominan Daño o Explotación


Si bien las fuerzas ofensivas ya habrán comenzado a comprender y trabajar con esta metodología,las fuerzas defensivas no lo hicieron, adormeciéndose en la teoría de que Stuxnet fue diseñado específicamente para solo alcanzar un objetivo singular que es tan diferente de las instalaciones 
de infraestructura crítica comunes.


Explorando el vector de ataque

En esta primera parte nos explican que el Malware comprende dos diferentes rutinas de ataque, la primera, y la que es mas conocida, se basa en cambiar las velocidades de los rotores de centrifuga, mientras que la segunda altera la sobrepresión de estas



El año 2007 alguien envió una muestra de código a la plataforma Virtustotal.com que mas tarde resultaría ser la primera variante de Stuxnet, el código contenía un payload que atacaba directamente con los sistemas de protección en cascada (CPS - Cascade Protection System) Adicionalmente nos comenta que la columna vertebral del sistema de extracción de Uranio en Iran es la Centrifuga IR-1 que a pesar de los problemas que tenia en si diseño significaba un activo para la actividad que venían realizando. ¿Que es un sistema de proteccion? En el informe nos señala se estos sistemas de proteccion no sirven durante el funcionamiento normal sino que son destinados a detectar anomalías en el proceso y evitar que se destruyan equipos o que se convierta en un peligro para los operadores o medio ambiente, esto es justamente lo que Iran tenia implementado para sus Centrifugas.

El sistema de proteccion en cascada consta de dos capas, la capa inferior esta al nivel de la centrifuga, se instalaran 3 válvulas de cierre de acción rápida que al fallar lo que harán es "aislar" la centrifugadora afectada mientras el proceso sigue con normalidad. La pantalla de monitoreo central del sistema de proteccion en cascada muestra el estado de cada centrifuga por lo que apoyado en el uso de "puntos de colores" indican cuando existe algún problema en el sistema industrial, para estos sistemas eran representados por puntos verdes y grises, el problema es que si es que ocurren constantes alarmas de este tipo las válvulas se aislaran generando lentitud en la operación regular de esta planta industrial



El punto es ¿Cual fue en realidad el Modus Operandi de estos atacantes? ¿Como verdaderamente se comportaría el Malware? 




Ralph Langnet nos explica que este fue un ataque 100% dirigido y estudiado y que al analizar el código de este malware comenzaron a encontrar cosas realmente impactantes. 



En la muestra de código de alrededor de 15 mil lineas y que se asemejaba mucho al lenguaje ensamblador pudieron encontrar llamados a funciones, temporizadores y estructuras de datos debidamente estudiados. ¿ Que buscaban? Sabotaje violento. ¿De donde venia? Probablemente de Iran dado que los reportes fueron realizados en su mayoría desde ese país. El equipo de Langnet convocaron a expertos en centrifugas y plantas de energía que luego de un analizarlo, estudiarlo y asociarlo al código encontrado determinaron que el problema raíz fue causado por el rotor el cual es una parte móvil dentro de la centrifuga. 


Se determino que si se altera el rotor técnicamente se puede "quebrar" el sistema e incluso hacer que la centrifuga que mencionamos anteriormente "explote" adicionalmente dentro del código del malware notaron curiosamente el numero 164 este luego de ser consultado e investigado era el numero de centrifugas por cada cascada






Adicionalmente encontraron que cada centrifuga esta dividida en 15 partes llamadas etapas y que dentro de la estructura del código encontraron algo demasiado similar en la estructura de datos del malware. 




En la siguiente imagen explica lo que denominan "caja gris". La parte superior son las válvulas de los sistemas de centrifuga, el malware intercepta las ordenes de los sensores de presión o vibración y los altera enviando código legitimo haciendo que bajo ningún sistema (SCADA) se sospeche que algo este andando mal pese a tener alterado los datos de entrada



En la siguiente imagen que muestra el tráfico de datos entre un sistema SCADA infectado por Stuxnet y un controlador, se ve que ocurre  periódicamente cada cinco segundos.Este tráfico simplemente no podía perderse o ser detectado por expertos en seguridad de ICS


En conclusión este malware fue creado con la finalidad de alterar sistemas industriales y que habían sido muy bien estudiados, la forma como llegaron a controlar estos equipos fue como siempre aprovechando el eslabón mas débil de la cadena, el propio usuario, adicionalmente nos advierte que así como lograron controlar un sistema de extracción de Uranio podrían hacerlo con cualquier otro sistema industrial. 

AQUÍ les dejo el informe completo en PDF (Esta en Ingles)
AQUÍ les dejo el blog del autor (Muy recomendado) 

Un saludo!