¡Hay fiesta en tu SCADA! ¡Y sí, estás invitado!

No, no he perdido la cabeza, pero sí sé y con certeza, lo que podría ser una autentica «fiesta» para los diferentes empleados de una fábrica en caso de caída repentina (hackeo) de las líneas de producción.

Veremos como de sencillo podría llegar a ser un ataque a una industria desde el exterior (o interior) y hacer «bailar» a todos los trabajadores de una fábrica.

Vamos a estructurar este ciberataque con una sencilla metodología:

Recolección de información

Se trata de un ataque dirigido, por lo tanto, nuestro atacante conoce nuestra OT (Tecnologías operativas).

Pero… ¿Cómo ha sido posible? Mi empresa cuenta con seguridad privada, no puede acceder ningún externo sin acreditación.

Es muy probable que tus dispositivos estén expuestos a Internet y sean indexados por portales de IoT como Shodan.

No voy a marearos con lo que es Shodan, pero para usuarios de «a pie», es como Facebook, pero en vez de buscar personas, buscas aparatos que están conectados a Internet, ya sea por su marca, modelo, IP/Host, nombre de la empresa, país, etcétera.

Volviendo al caso de esta fábrica, vamos a comprobar que información ha podido averiguar el «ciber-malo».

 

En la planta existe al menos un PLC conectado a Internet, hagamos zoom:

El ciber-atacante ha evidenciado un PLC Siemens Simatic S7-300 funcionando en nuestra fábrica y con una versión vulnerable sin parchear.

Imagen de un PLC Siemens Simatic S7-300

Búsqueda de vulnerabilidades

En esta fase, el atacante buscará fallos de seguridad o exploits que pueda utilizar para atacar a nuestro PLC.

Como podemos ver, este PLC tiene serias vulnerabilidades:

  1. Ataque remoto de Denegación de servicio (DoS): Este ataque dejaría KO al PLC en el acto, parando la línea de producción en marcha pudieron producir un accidente o incluso, una avería a otras zonas de la línea.
  2. Visor remoto de memoria: El ataque utiliza una puerta trasera en el dispositivo para descargarnos los datos de la memoria del PLC.
    Esto es útil para saber las acciones configuradas que tiene la máquina hackeada, podríamos modificar estas acciones y cargarlos de nuevo al PLC para desconfigurar la línea o provocar un daño mayor (accidente laboral, rotura mecánica de la línea, cambios de aplicativos químicos en el material, reducción de velocidad de producción, etcétera).
  3. Arranque y parada del CPU: Aquí no hay que explicar mucho, para y arranca la línea con un solo comando remoto.

Explotación de vulnerabilidades

Gracias a los resultados obtenidos en las anteriores fases, el atacante ya tiene todo lo que necesita para poder atacar nuestro dispositivo y hacernos «bailar» todo el turno.

¿Manos a la obra?

Vamos a ponernos en la piel del ciberdelincuente, haremos una simulación de la explotación de algunas de las vulnerabilidades encontradas:

Nota: Las simulaciones están hechas con un PLC Siemens S7-300, en local y en un entorno controlado.

INFORMACIÓN DEL DISPOSITIVO

IP del PLC:

Información del PLC:

Como podemos observar en la foto, el PLC tiene la protección de lectura y escritura protegido con contraseña, pero no tiene habilitada la contraseña para acceder a él.

Ataque remoto de Denegación de servicio (DoS)

Aunque existe un exploit para hacer denegación de servicio, no es posible su utilización en este caso, ya que el exploit funciona por el puerto 80 y este PLC tiene el puerto cerrado.

Dicho esto, tampoco podremos hacer uso del exploit de Visor remoto de memoria, ya que también requiere tener el puerto 80 levantado.

Así que utilizando el payload del exploit publicado, tuve que improvisar uno para dejar KO al PLC.

 

 

Arranque y parada del CPU

Tal y como hemos mencionado anteriormente, este ataque permite a un atacante poder arrancar y parar el PLC remotamente.

Apagando el PLC

Ataque desde la máquina del atacante

Evidencia de un PLC parado

Encendiendo el PLC

Ataque desde la máquina del atacante

Evidencia de un PLC arrancado

 

¿Qué supondría este problema a una industria?

  • Ocasionar accidentes laborales.
  • Pérdida de dinero por la falta de disponibilidad de las máquinas.
  • Bloqueo en el resto de las secciones de la planta.
  • Bloqueo en logística por no disponer de material para cargar.
  • Retrasos en los pedidos por falta de stock.
  • Mala reputación e imagen de la empresa cara al público.
  • Sobregastos en horas extras a empleados para aumentar la disponibilidad con más líneas de producción en marcha.

¿Es culpa del fabricante?

No, no siempre es culpa del fabricante, en este ejemplo utilizamos un dispositivo de Siemens, que es una de las grandes marcas de PLCs del mercado, es una firma que se preocupa mucho por la seguridad, por lanzar parches cuando se encuentran vulnerabilidades y por la durabilidad de sus productos.

Por eso tenemos que concienciarnos en proteger nuestros sistemas SCADA, principalmente aplicando los parches correspondientes, protegiendo los equipos, segmentando la red, realizando auditorías pertinentes y disponiendo de servicio de SOC que monitorice nuestra red para detectar y evitar intrusiones y comportamientos anómalos.

¿Cómo ha podido ocurrir esto?

De la misma forma que nuestros equipos y sistemas operativo necesitan parches y actualizaciones para mantenerlos estables y seguros, nuestros dispositivos (PLCs, RTUs, HMIs…) también necesitan de nuestros cuidados.

Entendemos la dificultad de mantener los sistemas operativos y software a la última versión en la industria, y aunque existen tecnologías para en muchos casos no está en nuestras manos poder llevar a cabo una actualización por incompatibilidad entre sistemas operativos y software, software con PLCs, etcétera.

Además, esto implicaría la detención de las líneas de producción, lo que conllevaría costes de parada, falta de stock e incluso pérdida temporal de calidad.

Alternativamente, existen tecnologías que pueden realizar un parcheo virtual protegiendo los sistemas operativos o componentes de software comunes contra vulnerabilidades que puedan ser explotables, poniendo en riesgo la planta.

En Sothis analizamos y estudiamos las necesidades de cada cliente para ofrecerle un servicio a medida, que le permiten modernizar y asegurar su sistema SCADA con el objetivo de evitar problemas de ciberseguridad que puedan derivar en interrupciones de la producción, robo de información industrial o incluso problemas de seguridad laboral en la planta de amenazas para seguir trabajando de una forma segura.

Compartir
Artículo anteriorInformes en SAP S/4HANA: Analítica embebida vs Business Warehouse
Artículo siguienteLa sociedad de los datos
mm
David Utón Amaya (@David_Uton). Ingeniero de Seguridad en el Red Team de Sothis. Auditor de seguridad de aplicaciones Web, redes perimetrales, infraestructuras corporativas internas, y redes inalámbricas. Entusiasta de la ciberseguridad. Participante activo en retos de seguridad y CTF.