Kaspersky Lab ICS CERT ha analizado el protocolo OPC UA, diseñado para la transferencia segura de datos entre servidores y clientes en sistemas industriales, incluida la infraestructura crítica. El análisis descubrió 17 vulnerabilidades de día cero en la implementación del protocolo, lo que condujo a ataques de amenaza de denegación de servicio, así como a la ejecución remota de código.

Además, se encontraron varios defectos en productos comerciales basados ​​en el protocolo. Todas las vulnerabilidades se informaron a los desarrolladores y se solucionaron a fines de marzo de 2018.

OPC Unified Architecture (OPC-UA) es un protocolo industrial que fue desarrollado y lanzado por la Fundación OPC en 2006 para la transmisión de datos confiable y segura entre varios sistemas en una red industrial. Este protocolo es ampliamente utilizado por los principales proveedores en instalaciones industriales modernas, en las industrias de fabricación, petróleo y gas, productos farmacéuticos y otros. Sus puertas de enlace son instaladas por un número creciente de empresas industriales, para la comunicación en el control automatizado de procesos y telemetría, y sistemas de monitoreo y telecontrol, lo que permite a estas empresas unificar sus procesos de gestión. El protocolo también se utiliza en IIoT y componentes de ciudades inteligentes, que cada vez atraen más la atención de los piratas informáticos.

Los expertos de Kaspersky Lab ICS CERT analizaron la arquitectura OPC-UA y sus productos. Examinaron su código de código abierto (disponible en GitHub), incluido un servidor de muestras, y descubrieron que las implementaciones actuales del protocolo tenían errores de diseño y escritura de código. Estos errores no deberían existir en un software de infraestructura crítica tan extendido. En general, se identificaron 17 vulnerabilidades de día cero en los productos de la Fundación OPC y se informaron a los desarrolladores, quienes las solucionaron en consecuencia.

Además, Kaspersky Lab ICS-CERT analizó software de terceros basado en este protocolo industrial, incluidas las soluciones de los principales proveedores de la industria. En la mayoría de los casos, descubrieron que las fallas fueron causadas por los desarrolladores que no usaban algunas de las funciones de implementación del protocolo correctamente. En otros casos, las vulnerabilidades fueron el resultado de modificaciones incorrectas aplicadas a la infraestructura del protocolo. Por lo tanto, los expertos descubrieron la implementación insegura de funciones en un producto comercial, a pesar del hecho de que la implementación original de la Fundación OPC no incluía errores. Como resultado, tales modificaciones en la lógica del protocolo, hechas por proveedores por razones desconocidas, estaban llevando a una funcionalidad arriesgada.

Todas las vulnerabilidades encontradas en las implementaciones del protocolo OPC-UA podrían ocasionar graves daños a la industria. Por un lado, existía el riesgo de problemas de denegación de servicio (DoS), que podrían presentar serias amenazas para los sistemas industriales al interrumpir o cerrar los procesos industriales. Por otro lado, la ejecución remota de código fue posible, permitiendo a los atacantes enviar cualquier tipo de comandos de servidor para controlar procesos industriales o continuar su intrusión en la red.

“Muy a menudo, los desarrolladores de software confían demasiado en los protocolos industriales e implementan la tecnología en sus soluciones sin someter el código del producto a controles de seguridad. Por lo tanto, las vulnerabilidades en el ejemplo utilizado pueden afectar a líneas de productos completas, por lo que es muy importante que los proveedores presten mucha atención a las tecnologías tan ampliamente disponibles. Además, no deben dejarse engañar por la idea de que pueden diseñar su propio software. Muchos piensan que esto podría ser más eficiente y seguro que el software existente, pero incluso una nueva pieza de software aún puede contener numerosas vulnerabilidades “, dijo Sergey Temnikov, investigador senior de seguridad en el laboratorio ICS-CERT de Kaspersky.

Kaspersky Lab recomienda organizaciones:

• Preste mucha atención a las comprobaciones y pruebas de seguridad como un paso necesario durante el proceso de desarrollo de la aplicación, y no confíe completamente en los protocolos.
• Realizar auditorías y pruebas con bolígrafo para descubrir vulnerabilidades.
• Aislar los procesos de desarrollo de software, por lo tanto, si se piratea una aplicación, los atacantes no podrán acceder a la red.


Lea más sobre esta vulnerabilidad en LINK