CVSS industrial: cálculos alternativos para necesidades diferentes

Fecha de publicación 18/07/2019
Autor
INCIBE (INCIBE)
CVSS_SCI

CVSS v3, ¿qué es y cómo funciona?

CVSS es un framework abierto y de uso universal que permite clasificar una vulnerabilidad en función de su severidad. Su uso está muy extendido, sobre todo para entornos TI (Tecnología de la Información), pero cuando este framework es utilizado para el cálculo de vulnerabilidades que afectan a dispositivos industriales, surgen diferentes problemáticas.

Para comprender la naturaleza de las mismas, es necesario entender, previamente, las métricas utilizadas en el CVSS v3, última versión, de la que actualmente se disponen los diferentes baremos, que, tras valorar las distintas clasificaciones, darán como resultado la puntuación de severidad final.

En nuestro artículo “Métricas de evaluación de vulnerabilidades: CVSS 3.0” se tratan con más detalle, tanto las métricas, como los factores que se evalúan en cada una.

Métricas en CVSS 3.0

- Métricas en CVSS 3.0. -

Uso de la calculadora CVSS v3 en entornos industriales

Dado que el CVSS v3 está orientado a los entornos IT, surgen diferentes complejidades a la hora de calcular la severidad de una vulnerabilidad en entornos industriales. El problema principal de este cálculo se basa en que no tiene en cuenta algunos factores como el impacto o el entorno, entre otros. Para suplir esta problemática, varios expertos del sector están buscando alternativas entre las que se encuentran RSS-MD, TEMSL e IVSS.

Con el objetivo de entender mejor la problemática y las alternativas que se proponen, se tomaran como ejemplo un par de vulnerabilidades en las que se han detectado deficiencias en el cálculo de la severidad y por ello, la puntuación final de estas no es muy acorde al impacto que tendrían si un atacante logra su explotación.

A continuación, se muestran algunos ejemplos de vulnerabilidades donde puede apreciarse una valoración diferente dependiendo del organismo que ha llevado a cabo el cálculo de la severidad, ya que su criterio es ligeramente diferente. En estos casos el ICS-CERT considera que la complejidad del ataque es alta (AC:H), mientras que el NIST considera que la complejidad del ataque es baja (AC:L).

Comparación de métricas entre el ICS-CERT y el NIST

- Comparación de métricas entre el ICS-CERT y el NIST. -

Comparación del vector CVSS v3 entre el ICS-CERT y el NIST, para los CVE tomados como ejemplo:

  • CVE-2018-5446:
    • Vector CVSS v3 ICS-CERT: AV:P/AC:H/PR:N/UI:N/S:C/C:H/I:N/A:N;
    • Vector CVSS v3 NIST: AV:P/AC:L/PR:N/UI:N/S:C/C:H/I:N/A:N.
  • CVE:2018-5448:
    • Vector CVSS v3 ICS-CERT: AV:A/AC:H/PR:L/UI:N/S:U/C:H/I:N/A:N;
    • Vector CVSS v3 NIST: AV:A/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N.
  • CVE:2018-10596:
    • Vector CVSS v3 ICS-CERT: AV:A/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H;
    • Vector CVSS v3 NIST: AV:A/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H.

Para evitar estos problemas, dentro del sector médico, se está planteando el RSS-MD (Risk Scoring System for Medical Devices) y a un nivel más genérico, el IVSS (Industrial Vulnerability Scoring System) que ya incorpora una parte de su cálculo destinada a la parte del entorno o TEMSL (Threat, Exposure, Mission, Safety and Loss) donde se tienen en cuenta otros factores como seguridad física, objetivo del proceso al que afectaría la vulnerabilidad, etc. Con estos nuevos planteamientos, se pretenden cubrir las necesidades detectadas por los expertos del sector a la hora de realizar el cálculo de la severidad en vulnerabilidades relacionadas con entornos industriales.

RSS-MD

RSS-MD (Risk Scoring System for Medical Devices) es una alternativa exclusiva para vulnerabilidades del sector salud que propone incorporar nuevos factores, como la duración del ataque o la cadena de explotación. Hay que tener en cuenta casos como la vulnerabilidad en Hospira Plum A+ Infusión System (CVE-2015-3956), que permitía la manipulación de parámetros en un dispositivo que está en contacto directo con un paciente vía intravenosa y hacen que sea recomendable medir otros factores que en el cálculo tradicional no están contemplados o no son aplicables.

Por otro lado, y como ejemplo de contraste, vamos a tomar la vulnerabilidad en Medtronic 2090 CareLink Programmer y la vulnerabilidad de redirección de URL en Power Monitoring Expert de Schneider Electric. La primera tiene un CVSS calculado de 7,1; mientras que la segunda le tiene de 7,4. A simple vista, la primera vulnerabilidad es menos peligrosa, sin embargo, podía permitir a un atacante remoto modificar parámetros de un dispositivo médico (con la posibilidad de poner en peligro la salud de los pacientes), mientras que la segunda permitía la redirección hacia un sitio malicioso.

Esta es una muestra más de las deficiencias que muestra el CVSS v3 ante ciertas situaciones específicas y que se encuentran relacionadas con los entornos industriales.

IVSS

IVSS (Industrial Vulnerability Scoring System) posee ya una calculadora y una descripción de las métricas y factores evaluados en la misma:

  • Nivel de severidad base (BS).
  • Nivel de explotación base (BEX).
  • Accesibilidad, impacto y consecuencias.
  • Puntación base.
  • Puntuación final IVSS, conformada por todos los valores anteriores.

Ejemplo IVSS

- Ejemplo de aplicar IVSS para calcular la puntuación asociada a una vulnerabilidad. Fuente: S4, Clint Bodungen. -

Una de las características concretas que posee este método para calcular la severidad asociada a la vulnerabilidad es que tiene en cuenta las consecuencias y el impacto de la misma. Entre las consecuencias de poder valorarla correctamente se encuentra el impacto en la producción, daños colaterales derivados de la explotación de la vulnerabilidad, impacto en el sistema safety (seguridad física) y el impacto en la fiabilidad. Estas consecuencias e impactos, en algunas ocasiones, no pueden ser definidas en su totalidad, ya que las vulnerabilidades suelen detectarse en entornos de laboratorio. Hay que tener en cuenta que, aunque las pruebas se ejecuten en entornos controlados, siempre será necesario tener en mente la ubicación del dispositivo o sistema analizado dentro del proceso industrial, a qué otros activos podría llegar a afectar y cómo alteraría el proceso en el caso de que un atacante explotase la vulnerabilidad.

TEMSL

TEMSL (Threat, Exposure, Mission, Safety and Loss) realiza el cálculo asociado a la severidad de la vulnerabilidad mediante el uso de árboles de decisiones, calificando:

  • Amenaza: evidencia de explotación de la vulnerabilidad.
  • Exposición: alcance del acceso (red externa o local).
  • Misión: operación, entrega de servicio, protección de datos.
  • Seguridad física: lesiones o muerte.
  • Pérdidas: costes asociados a la explotación de la vulnerabilidad más allá de la misión o la seguridad física.

La puntuación que puede proporcionarse en cada característica puede ser 1 (pequeña o inexistente), 2 (reseñable) o 3 (significativo). Por ejemplo, en el caso de la amenaza, la puntuación que podrá asociarse a dicha característica variará dependiendo de las siguientes definiciones:

  • Pequeña o inexistente:
    • No existen evidencias de una explotación actual de la vulnerabilidad.
  • Reseñable:
    • Existen rumores sobre la explotación de la vulnerabilidad y PoC públicas.
  • Significativo:
    • Existen evidencias directas de la vulnerabilidad implementadas en forma de exploit y, además, pueden consultarse informes sobre la vulnerabilidad a nivel técnico.

Cada característica tiene definida, en base a los niveles de puntuación, unas descripciones que permiten al auditor de seguridad proporcionar unas puntuaciones para conseguir la puntuación final que definirá la severidad de la vulnerabilidad. 
Por su parte, el establecimiento de prioridades a la hora de solventar una vulnerabilidad antes que otra se realiza mediante un ranking que va desde never (no solventar), next (solventar lo antes posible) hasta now (solventar obligatoriamente en menos de una semana).

Conclusiones

Aunque los métodos planteados calculan la severidad de diferentes formas, todos ellos se han creado con la misma idea de intentar adaptar el cálculo tradicional del CVSS al entorno industrial, teniendo en cuenta las diferentes necesidades y con el objetivo de reflejar con mayor exactitud la severidad de las vulnerabilidades en los sistemas de control.

Lograr alcanzar un método concreto para el cálculo de vulnerabilidades detectadas en dispositivos industriales supone un gran reto dadas las características concretas de cada dispositivo. Algunos expertos están trabajando en esta línea para investigar y aportar propuestas a la comunidad para crear un “estándar” a la hora de calcular la severidad asociada a una vulnerabilidad. Dado que dentro de los propios sectores hay factores que tienen más peso que otros, como sucede en el sector médico con el posible impacto de la vulnerabilidad, surgen alternativas específicas.

Comparativa entre las diferentes propuestas de cálculo

- Comparativa entre las diferentes propuestas de cálculo. -

Etiquetas