AvanzadoICSTRITONSISSchneider Electricinfraestructura críticaseguridad industrial

TRITON/TRISIS: El Malware que Atacó Sistemas de Seguridad Industrial

Análisis técnico de TRITON/TRISIS, el malware que atacó sistemas de seguridad industrial (SIS) Schneider Triconex en Arabia Saudí. Cadena de ataque, implicaciones para la seguridad de infraestructura crítica y atribución a Rusia.

MalwareIntel Research··11 min lectura
Serie: Malware IoT/OT/ICS — Parte 4

Sistemas de seguridad industrial: la última línea de defensa

Para entender por qué TRITON es el malware más aterrador jamás descubierto, hay que entender qué son los Safety Instrumented Systems (SIS) y por qué atacarlos cruza una línea que ningún otro malware había cruzado antes.

En una planta industrial (petroquímica, refinería, central eléctrica, planta nuclear), los procesos operan con sustancias peligrosas a altas temperaturas y presiones. El sistema de control de procesos (DCS o BPCS, Basic Process Control System) gestiona las operaciones normales: ajusta válvulas, controla temperaturas, regula flujos. Pero el DCS puede fallar. Los sensores pueden dar lecturas erróneas. Los operadores pueden cometer errores.

El SIS es un sistema completamente independiente del DCS. Su única función es detectar condiciones peligrosas y ejecutar acciones de seguridad automáticas. Cuando la presión de un reactor supera el límite seguro, el SIS cierra las válvulas de alimentación y ventea el exceso de presión. Cuando la temperatura de un horno excede el máximo, el SIS corta el combustible. El SIS no necesita permiso del operador. No espera confirmación. Actúa por sí solo en milisegundos.

Los SIS están diseñados bajo el estándar IEC 61511 (Safety Instrumented Systems for the Process Industry Sector) con niveles de integridad de seguridad (SIL, Safety Integrity Level) del 1 al 4. Un SIL 3 exige una probabilidad de fallo en demanda de menos de 1 en 10.000. Los controladores SIS certificados (como los Schneider Triconex, Honeywell FSC o Yokogawa ProSafe-RS) son dispositivos de hardware y software especializados, con arquitectura redundante (votación 2-de-3 en el caso de Triconex: Triple Modular Redundancy, TMR).

Atacar un SIS es atacar el mecanismo que previene muertes. Ningún malware anterior había cruzado esa línea.

Schneider Triconex: el objetivo

Los controladores Schneider Electric Triconex son uno de los SIS más desplegados en la industria de petróleo y gas, petroquímica y refino a nivel mundial. El modelo atacado por TRITON fue el Triconex 3008, basado en el procesador MP (Main Processor).

Características del Triconex:

  • Arquitectura TMR (Triple Modular Redundancy): tres procesadores independientes ejecutan el mismo programa en paralelo. La salida se determina por votación 2 de 3. Si un procesador falla, los otros dos mantienen la operación segura.
  • Protocolo TriStation: protocolo propietario de Schneider Electric para la comunicación entre las estaciones de ingeniería (PCs con software TriStation 1131) y los controladores Triconex. Opera sobre Ethernet (UDP).
  • Modos de operación: PROGRAM (permite carga de programa), RUN (ejecuta el programa de seguridad), REMOTE (acepta cambios remotos). El interruptor físico en el controlador determina el modo.

El protocolo TriStation es propietario y no estaba documentado públicamente antes de TRITON. Los atacantes tuvieron que hacer ingeniería inversa del protocolo para poder comunicarse con el controlador.

Descubrimiento: agosto de 2017

En agosto de 2017, los operadores de una planta petroquímica de Arabia Saudí (identificada posteriormente como una planta de Sadara Chemical Company, joint venture de Saudi Aramco y Dow Chemical) experimentaron una parada de emergencia inesperada. Los controladores Triconex entraron en modo de fallo seguro y detuvieron el proceso.

La investigación reveló que la parada no fue causada por una condición de proceso real, sino por un fallo en el malware que intentaba reprogramar los controladores SIS. El malware había provocado que los tres procesadores del TMR entraran en un estado inconsistente, activando el fallo seguro. Paradójicamente, fue la robustez del diseño del Triconex (detección de inconsistencia entre procesadores) lo que delató al atacante.

Schneider Electric y Mandiant (entonces FireEye) fueron llamados para investigar. Lo que encontraron fue alarmante: un atacante había comprometido la red IT de la planta, pivotado a la red OT, llegado hasta las estaciones de ingeniería conectadas a los controladores SIS, y desplegado un malware específicamente diseñado para reprogramar los controladores Triconex.

Cadena de ataque: del correo corporativo al SIS

La cadena de ataque de TRITON siguió un patrón multi-etapa que tardó probablemente más de un año en completarse.

Fase 1: compromiso inicial de la red IT

El acceso inicial a la red corporativa se logró probablemente mediante spear-phishing o explotación de servicios expuestos a internet. Los atacantes establecieron persistencia en la red IT usando herramientas estándar (Mimikatz para robo de credenciales, Web shells, herramientas de tunneling SSH, scripts PowerShell). Esta fase fue una operación de intrusión IT convencional.

Fase 2: movimiento lateral y reconocimiento OT

Desde la red IT, los atacantes pivotaron a la red OT. Según el análisis de Mandiant, la segmentación entre IT y OT en la planta era deficiente: existían conexiones de red directas entre segmentos corporativos y la red de control. Los atacantes:

  • Comprometieron estaciones de trabajo Windows en la red OT
  • Identificaron las estaciones de ingeniería TriStation (PCs con el software Schneider TriStation 1131 instalado)
  • Realizaron reconocimiento del protocolo TriStation y la configuración de los controladores

Fase 3: desarrollo e ingeniería inversa del protocolo TriStation

Los atacantes hicieron ingeniería inversa del protocolo TriStation, que es propietario y no estaba documentado públicamente. Este trabajo requirió acceso a:

  • El software TriStation 1131 (disponible para clientes de Schneider)
  • Posiblemente un controlador Triconex de laboratorio para pruebas
  • Documentación técnica de Schneider (que podría haberse obtenido de la red comprometida)

Fase 4: compromiso de la estación de ingeniería

Los atacantes instalaron TRITON en una estación de ingeniería conectada directamente a los controladores Triconex via la red de seguridad. La estación de ingeniería ejecutaba Windows y tenía software TriStation instalado.

Fase 5: despliegue del payload en el controlador SIS

TRITON intentó:

  1. Conectarse al controlador Triconex via protocolo TriStation
  2. Leer el programa de seguridad existente
  3. Inyectar código malicioso en la memoria del controlador
  4. Modificar la lógica de seguridad sin que el controlador detectara la manipulación

El objetivo final era desactivar las funciones de seguridad, dejando la planta sin protección ante condiciones peligrosas. Sin embargo, un error en el payload causó una inconsistencia entre los tres procesadores TMR, lo que activó el fallo seguro y detuvo la planta, revelando el ataque.

Análisis técnico del malware

TRITON consta de varios componentes con roles diferenciados.

trilog.exe: el framework principal

El componente principal es un ejecutable Python compilado con py2exe (Python 2.7) que se ejecuta en la estación de ingeniería Windows. Incluye:

  • TsHi.py: módulo de alto nivel que implementa las operaciones de ataque (lectura de programa, escritura de payload, cambio de estado del controlador)
  • TsBase.py: módulo de nivel medio que maneja las sesiones del protocolo TriStation
  • TsLow.py: módulo de bajo nivel que implementa la comunicación UDP con el controlador Triconex
  • imain.bin / inject.bin: payloads compilados para la arquitectura del procesador Triconex (PowerPC)

Payload para el controlador (PowerPC)

El payload diseñado para ejecutarse en el procesador Triconex estaba escrito en código máquina PowerPC y tenía dos funciones:

  1. inject.bin: Un backdoor en el controlador Triconex que permitía leer y escribir memoria del controlador de forma remota, sin pasar por las protecciones normales del protocolo TriStation. Esto daba al atacante control total sobre el programa de seguridad.

  2. imain.bin: El programa supervisor que gestionaba el backdoor y aseguraba que el código inyectado no causara un fallo detectable por la lógica de votación TMR.

Por qué falló

El error que causó la detección estaba en la sincronización del payload entre los tres procesadores del TMR. TRITON necesitaba inyectar código idéntico en los tres procesadores simultáneamente para evitar que la votación 2 de 3 detectara la discrepancia. Un error de timing o de estado en uno de los procesadores causó que el checksum de validación fallara, lo que activó el fallo seguro.

Los investigadores señalan que si el atacante hubiera tenido éxito en la sincronización, el backdoor habría sido invisible para las herramientas de diagnóstico estándar de Schneider.

Atribución: TsNIIKhM y XENOTIME

Mandiant/FireEye (TEMP.Veles)

En octubre de 2018, FireEye (ahora Mandiant) publicó un informe atribuyendo TRITON al TsNIIKhM (Central Scientific Research Institute of Chemistry and Mechanics), un instituto de investigación técnico adscrito al gobierno de Rusia, ubicado en Moscú. Las evidencias incluyen:

  • Direcciones IP del TsNIIKhM usadas para acceder a la infraestructura del atacante
  • Archivos de prueba del malware subidos desde redes rusas
  • Herramientas de ataque consistentes con capacidades de investigación del instituto
  • Perfil del instituto (investigación en seguridad de equipos industriales) consistente con el conocimiento necesario para desarrollar TRITON

Dragos (XENOTIME)

Dragos designó al grupo como XENOTIME y lo calificó como "el grupo de amenazas ICS más peligroso del mundo". Dragos reportó que XENOTIME no solo atacó la planta saudí, sino que también realizó operaciones de reconocimiento contra infraestructura eléctrica en Norteamérica y el Pacífico Asiático entre 2018 y 2019.

Departamento del Tesoro de EE.UU.

En octubre de 2020, el Departamento del Tesoro sancionó al TsNIIKhM explícitamente por su papel en el desarrollo de TRITON. La designación fue la primera sanción de EE.UU. contra una entidad específica por el desarrollo de malware ICS.

Por qué TRITON es aterrador: escenarios de impacto

TRITON no causó daño físico porque el fallo seguro del Triconex funcionó como estaba diseñado. Pero si el ataque hubiera tenido éxito, los escenarios posibles son genuinamente aterradores.

Escenario 1: desactivación silenciosa del SIS

El atacante desactiva las funciones de seguridad del Triconex sin alertar a los operadores. El proceso industrial opera sin protección de seguridad. Cuando ocurre una condición peligrosa (sobrepresión, sobretemperatura, concentración peligrosa de gases), el SIS no actúa. El resultado: explosión, fuga tóxica o incendio.

Escenario 2: SIS como arma

Más sofisticado: el atacante reprograma el SIS para que ejecute acciones peligrosas en lugar de acciones de seguridad. En lugar de cerrar una válvula para reducir presión, la abre para aumentarla. En lugar de cortar combustible al horno, lo aumenta. El SIS se convierte de protección en arma.

Escenario 3: ataque combinado SIS + DCS

El atacante compromete tanto el DCS (sistema de control) como el SIS (sistema de seguridad) simultáneamente. Usa el DCS para crear una condición peligrosa y deshabilita el SIS para que no pueda intervenir. Esto replica el concepto de Stuxnet (manipulación del proceso + ocultación al operador) pero con consecuencias potencialmente más graves.

En una planta petroquímica como la atacada, estos escenarios podrían resultar en:

  • Explosiones con radio de destrucción de cientos de metros
  • Liberación de gases tóxicos (ácido fluorhídrico, cloro, amoniaco)
  • Incendios industriales de hidrocarburos
  • Contaminación ambiental masiva
  • Víctimas mortales entre trabajadores y poblaciones cercanas

Implicaciones para la seguridad ICS

TRITON reveló debilidades sistémicas en la forma en que la industria aborda la seguridad de los SIS.

La falsa asunción de aislamiento

Los SIS se diseñan e implementan con la asunción de que son sistemas independientes del sistema de control. En la práctica, las estaciones de ingeniería que programan los SIS suelen estar conectadas tanto a la red de control como a la red de seguridad, creando un puente entre ambas.

Ingeniería inversa de protocolos propietarios

TRITON demostró que la "seguridad por oscuridad" de los protocolos propietarios es una ilusión. El protocolo TriStation fue reverse-engineered por los atacantes. La seguridad de los protocolos ICS no puede depender de que sean desconocidos.

Superficie de ataque de las estaciones de ingeniería

Las estaciones de ingeniería son PCs Windows con software de ingeniería instalado. Son el eslabón más débil de la cadena SIS: sistemas operativos con vulnerabilidades conocidas, usuarios que navegan por la red corporativa, sin hardening específico en muchos casos.

Recomendaciones de defensa post-TRITON

  1. Aislamiento real de la red de seguridad. La red que conecta estaciones de ingeniería con controladores SIS debe estar físicamente separada de la red de control y de la red IT. Sin excepciones.

  2. Interruptor físico en PROGRAM mode. Los controladores SIS deben mantenerse en modo RUN con el interruptor físico. Cualquier cambio de programa requiere acceso físico al controlador, no solo acceso de red.

  3. Hardening de estaciones de ingeniería. Application whitelisting, desactivación de servicios innecesarios, monitorización de integridad, sin acceso a internet ni al correo corporativo.

  4. Monitorización del protocolo SIS. Implementar detección de comunicaciones anómalas en la red de seguridad. Cualquier tráfico TriStation fuera de ventanas de mantenimiento planificadas debe generar una alerta de máxima prioridad.

  5. Verificación periódica de integridad. Comparar regularmente el programa en ejecución en el controlador SIS con la versión aprobada almacenada offline. Detectar cualquier modificación no autorizada.

  6. Evaluación IEC 62443. Aplicar el estándar de seguridad industrial IEC 62443 a los sistemas SIS, no solo al DCS.

  7. Respuesta a incidentes SIS. Desarrollar y ejercitar procedimientos de respuesta a incidentes específicos para compromisos de SIS. La respuesta requiere coordinación entre equipos de seguridad IT, ingenieros de control y operadores de planta.

Recursos

Preguntas frecuentes

Artículos relacionados

Este contenido tiene fines exclusivamente educativos y de investigación en ciberseguridad defensiva. No se proporcionan binarios maliciosos ni payloads ejecutables. El uso indebido de esta información es responsabilidad exclusiva del usuario. Leer disclaimer completo.