CSET, Herramienta para evaluación de riesgos. Parte I.

Anuncios

Desde que me incorporé al ámbito de la Ciberseguridad Industrial he visto cómo a la hora de hablar sobre cómo proteger nuestras instalaciones lo hacemos principalmente refiriéndonos a las medidas tecnológicas que corrigen, o mitigan, amenazas, vulnerabilidades y vectores de ataque. Para ello basamos nuestros argumentos en base a las medidas Técnicas y Operacionales que puede marcar una estrategia de “Defensa en Profundidad”  y a la que hacen referencia las principales guías y buenas prácticas.

Sabemos que la seguridad al 100 % no existe, y lo que puede considerase como “seguro” hoy, mañana, ya no lo es. Por tanto, puesto que el nivel de seguridad puede ser variable o incluso subjetivo, el objetivo a alcanzar debe ser mitigar o reducir los riesgos a los que estamos expuestos hasta un punto que consideremos aceptable.  O bien, que los riesgos residuales sean asumibles.

Es por ello que en ese afán por concienciar sobre la necesidad de tomar medidas y centrarnos en el cómo y de qué manera, muchas veces dejamos pasar por alto una fase previa con una importancia mayor si cabe. Me refiero a la realización de un Análisis de Riesgos y GAP. Con ellos determinamos el estado en el que nos encpntramos y a partir de ahí buscar las mejores medidas para corregir las deficiencias existentes. Por tanto, deberemos por un lado, identificar todos nuestros activos, tecnologías y tráficos en nuestra red; y por otro, analizar los riesgos a que nos enfrentamos según su estado. Por ejemplo, no es lo mismo disponer de equipos HMI con sistema operativo Windows 7 aún con soporte por parte del fabricante, a tener Windows XP ya sin él. Es decir, no podemos tratar de securizar algo si no sabemos ni el número, cómo funciona, contra qué se comunica; y mucho menos encontrar la mejor solución técnico-económica para hacerlo.

Ahora bien, ¿cómo se lleva a cabo esto? ¿Qué preguntas debemos hacernos para calificar si un riesgo es más o menos grande? ¿Son los criterios iguales para una empresa manufacturera que para una de distribución de energía? ¿Cuáles son las medidas que debo considerar? Estas son algunas de las muchas preguntas que llegado el caso, podremos hacernos.

Sin embargo, contamos, con una aplicación pensada en concreto para los Sistemas de Control Industrial. Se trata de CSET, Cyber Security Evaluation Tool elaborada por el ICS-CERT.

 

Esta herramienta, hecha por el Departamento de Seguridad de la Patria del gobierno de Estados Unidos,  pretende ayudar a los usuarios a evaluar el estado de la seguridad de sus sistemas y redes mediante la realización de una serie de preguntas relacionadas tanto con los sistemas de control industrial como de las tecnologías de la información. El resultado es una lista de recomendaciones para mejorar el nivel de ciberseguridad de las organizaciones a partir de la base de datos de los estándares,  guías y buenas prácticas actuales. Cada recomendación cuenta con un enlace a una serie de acciones que deben de ser consideradas y aplicadas para mejorar los controles de seguridad.

La herramienta ha sido diseñada para instalarse fácilmente en un equipo de escritorio. Los estándares de los que hablábamos anteriormente proceden de organizaciones como el NIST, NERC, TSA, DoD entre otros. La operativa es sencilla, al seleccionar alguno de los estándares se realizan una serie de preguntas. Las respuestas son comparadas contra un nivel de seguridad elegido, generándose un informe que refleje las posibles mejoras potenciales. Esto proporciona una serie de beneficios como: 

  1. Ayudar a las distintas organizaciones en la Gestión de Riesgos y procesos.
  2. Incrementar el conocimiento y facilitar la toma de decisiones en materia de ciberseguridad.
  3. Revelar la presencia de vulnerabilidades y proporcionar recomendaciones para mitigarlas.
  4. Identificar áreas de mejora y recomendación de buenas prácticas.
  5. Proporcionar un método para comparar y monitorizar las mejoras en los sistemas.

CSET está disponible para su descarga desde el siguiente enlace. En este otro podremos encontrar los distintos métodos para utilizarla, recursos hardware, e incluso un canal con video tutoriales como el que sigue:

Hechas las presentaciones en la siguiente entrega iremos viendo paso por paso, las distintas opciones con las que cuenta. Por ahora toca descargarla e instalarla.

Nos vemos en la próxima!

Un saludo!

Control de USBs en entornos OT

Anuncios

Una de las medidas que debe estar presente cara al bastionado de nuestros sistemas, como no podía ser de otra manera, es el control de dispositivos USB. Si bien, en general, su uso hay que regularlo, en entornos industriales o Infraestructuras Críticas los riesgos son mayores. Como ya hemos comentado en otras ocasiones, los ciclos de vida, de equipos PC con funciones tipo  HMI, Workstations de Ingeniería, etc. son mayores. Esto les obliga a mantener en la mayoría de los casos Sistemas Operativos fuera de soporte, y exentos de actualizaciones. Además, dependiendo del sector y actividad, el software que interactúa con los distintos elementos de las instalaciones puede haber sido hecho “a medida” del cliente o producto, y cuyo desarrollador garantiza su uso sólo bajo ese entorno, y no en caso de instalar parches o actualizaciones. Que si ya lo del parcheo es difícil de implementar si además tenemos esta condición, pues ya ni os cuento.

En cualquiera de los casos, sin poder instalar parches y sin soporte por parte del fabricante el riesgo al que están expuestos nuestros sistemas es considerablemente alto.

Por tanto, para salvar este escoyo, las alternativas son principalmente son dos. O llevamos a cabo la actualización del sistema a uno superior con la correspondiente inversión de tiempo y dinero; o, utilizamos una solución de tipo “Endpoint” que aparte de limitar su uso nos proporcione otras funcionalidades.

Además, la proliferación de dispositivos que emplean el conector USB ha ido en aumento. Ya no es el clásico “pen drive” que puede contener un malware o un software portable. Ya desde hace tiempo tenemos otros muchos como Smartphones, reproductores de música, “USBHacks”, son desde los cuales podemos lanzar todo tipo de tareas.

Dentro de los entornos de automatización y control el ejemplo más archiconocido lo tenemos con Stuxnet.

 

Luego en el año 2013 saltaba la noticia que, “al parecer”, se quiso espiar a los miembros de la cumbre del G20 por medio de la entrega gratuita de memorias y cables USB para la carga de dispositivos móviles.

Y para terminar el malware que afectó a una Central Nuclear alemana y de cómo había infectado algunos equipos.

Tomando como ejemplo el equipo con Windows 7 Professional de las entradas:

Whitelisting en SCI (Parte I)

Whitelisting en SCI (Parte II)

Puesto que está aplicada una política de “Whitelisting”, si conectásemos una memoria USB con un software y lo quisiéramos ejecutar, podríamos ver el contenido pero no ejecutar nada ya que dicha política nos lo impide. Esto es, la memoria USB es detectada y se puede acceder pero como los ejecutables en él almacenados no están autorizados en la Lista Blanca, no se pueden utilizar. En cambio si hubiéramos querido abrir un fichero con un software que sí está dado de alta en ellas, podríamos verlo.

Sin embargo sin esta protección, el ejecutable hubiera sido ejecutado. Por ello resulta necesario llevar una estrategia de control y restricción de su uso. Ahora bien, ¿cómo hacerlo? En este caso he vuelto a utilizar Symantec Embedded Security: Critical System Protection

Deberemos dirigirnos a la política de “Prevention” ya que vamos a limitar una operación. Dentro  de “Advanced Policy Settings” seleccionaremos “Global Policy options”.

Dentro de ella en “General Settings” buscaremos “Block External Storage Devices” y marcaremos la casilla. Al mismo tiempo podremos seleccionar 3 variantes que pudieran ser de utilidad según entornos.

Sin embargo una vez activado este control ya no podríamos tener acceso al mismo.

Y sobre todo, el registro en consola para su consulta y seguimiento:

Como hemos visto en las capturas anteriores, este “bloqueo” puede ser configurable en lo que a lectura y escritura se refiere. Aquí hemos visto la manera más drástica, a partir de aquí ya podremos ir autorizando excepciones en caso de ser necesario.

Esta funcionalidad es especialmente interesante no sólo en equipos que controlen instalaciones sino en también en departamentos de soporte o mantenimiento. En ellos suelen existir equipos portátiles (ver aquí y aquí) para configurar, parametrizar o diagnosticar PLCs, Robots, etc. por medio del software correspondiente. A menudo es necesario intercambiar algún tipo de información por medio de estos dispositivos ya que puede no disponerse, o no estar autorizado, el acceso a ciertos recursos de red. Para ello podremos habilitar el bloqueo y llegado el momento deshabilitarlo. No obstante es conveniente disponer de algunos “pen drive” para uso específico y así gestionar esta necesidad de forma controlada.

Lo dicho, cuidado con los dichosos USB que aunque necesario también son el origen de muchos disgustos…

Un saludo!

Whitelisting en SCI (Parte II)

Anuncios

Siguiendo con la entrada “Whitelisting en SCI (Parte I)”, comencemos con los ejemplos.

El equipo con Windows XP tiene una versión de Adobe Reader vulnerable y queremos impedir su ejecución. Para ello deberemos dar de alta la aplicación en la política e incorporarla en la “Sandbox” de denegación. Este proceso lo podemos hacer de dos maneras. El servidor puede recolectar las aplicaciones instaladas en los equipos y a partir de ahí seleccionarla y configurarla. En la imagen siguiente podemos ver aplicaciones (SIMATIC, Siemens Step7, etc.) instaladas sólo en el equipo con Windows 7 sin embargo estamos configurando la política del Windows XP (Prueba_XP_sym……).

La segunda, es hacerlo de forma manual indicando el ejecutable concreto, pudiendo también indicarla a través de un “Explorador” seleccionando la IP del equipo y navegar en su árbol de archivos, c:\Program Files\ …..

En cualquiera de los casos, ya con la aplicación denegada:

Tendríamos el siguiente mensaje:

Luego tendríamos el correspondiente log en el servidor de gestión:

Ahora en el Windows 7, vamos a aplicar una política con estrategia “Whitelisting” la más restrictiva de todas, o decimos que es lo que se puede ejecutar o no hay manera. Por ejemplo hemos querido abrir Google Chrome y…

O incluso al ir a borrar el ejecutable “agent”, no ha sido posible…

Al igual que deshabilitamos los servicios, bloqueamos puertos, controlamos permisos de usuarios, y llevamos a cabo otras tantas medidas, limitar el uso de las aplicaciones a las estrictamente necesarias es otro paso que debemos dar. Al igual que los Sistemas Operativos, éstas también poseen vulnerabilidades que deben ser corregidas bien mediante la aplicación de parches o su actualización, y por tanto es necesario controlarlas.

Obviamente el primer paso es no instalar nada que no se vaya a utilizar, pero una vez justificado su uso e instalada deberemos controlarlas.

Las distintas herramientas nos ofrecen otras opciones que amplían el bastionado, pero que no se han contemplado en el presente artículo.

Otro de los aspectos que debemos mirar de cerca es la consulta de los logs que pudieran generarse. No nos sirve de nada ejercer un control férreo si luego no realizamos un seguimiento. Las amenazas evolucionan, y pueden afectar a las aplicaciones que legítimamente deben utilizarse.

Lo que sí deberemos tener presente, muy pero que muy presente, es a la hora de desplegar esta solución, que los equipos no estén infectados. Con estas herramientas no sólo controlamos las aplicaciones, sino también los procesos del sistema. Si un malware ha infectado un software o el propio sistema operativo comprometiendo un proceso y lo incorporamos a nuestra “Lista Blanca”, la herramienta no nos sirve de nada. El “bicho” seguirá ejecutándose libremente. Mucho ojo con esto.

En resumen con esta entrada de hoy hemos visto (conceptualmente hablando) la manera de evitar la ejecución de aplicaciones que por una razón u otra no queremos que se utilicen en alguno de nuestros equipos.

A continuación os dejo el enlace del Centro de Ayuda de la versión 6.5.1 donde podréis encontrar más información al respecto.

Un saludo nos vemos en la próxima!