Padronizando a pontuação das vulnerabilidades com CVSS 3.0

O Common Vulnerability Scoring System (CVSS) é uma forma identificar as principais características de uma vulnerabilidade e calcular uma pontuação numérica que reflita sua gravidade, bem como uma representação textual dessa pontuação. A partir da pontuação numérica, podemos traduzir em uma representação qualitativa (como baixa, média, alta e crítica) para ajudar as organizações a avaliar e priorizar adequadamente seus processos de gerenciamento de vulnerabilidades.

Benefícios

Primeiro, fornece pontuações de vulnerabilidade padronizadas. Quando uma organização usa um algoritmo comum para pontuar vulnerabilidades em todas as plataformas de TI, ela pode aproveitar uma única política de gerenciamento de vulnerabilidades que define o tempo máximo permitido para validar e corrigir uma determinada vulnerabilidade.

Em seguida, ele fornece uma estrutura aberta. Os usuários podem ficar confusos quando uma vulnerabilidade recebe uma pontuação arbitrária de terceiros. Com o CVSS, as características individuais usadas para obter uma pontuação são transparentes.

Finalmente, o CVSS permite o risco prioritário. Quando a pontuação ambiental é calculada, a vulnerabilidade torna-se contextual para cada organização e ajuda a fornecer uma melhor compreensão do risco representado por essa vulnerabilidade para a organização.

Métricas

O CVSS é composto por 3 grupos de métricas: Base, Temporal e Environmental.

Base

O grupo de métrica Base é composto pelas características intrínsecas de uma vulnerabilidade que são constantes ao longo do tempo e nos ambientes dos usuários. Este grupo é composto de dois conjuntos de métricas: as métricas de exploração (Exploitability) e as métricas de impacto (Impact).

CVSS Base Score

Sub-grupo de métricas: Exploitability

Refere-se ao ativo que possui a vulnerabilidade e representa a facilidade e os meios técnicos necessários para exploração da vulnerabilidade. Este sub-grupo é composto por: Attack Vector, Attack Complexity, Privileges Required, User Interaction e Scope.

Attack Vector (AV): Essa métrica reflete o contexto pelo qual a exploração da vulnerabilidade é possível acontecer. Este valor métrico (e consequentemente a pontuação Base) será maior quanto mais remoto (logicamente e fisicamente) um atacante puder ser para explorar o ativo vulnerável. A suposição é que o número de invasores em potencial para uma vulnerabilidade que pode ser explorada pela Internet é maior do que o número de invasores em potencial que podem explorar uma vulnerabilidade que exige acesso físico a um dispositivo e, portanto, garante uma pontuação maior. Seus possíveis valores são:

  • Network (N): Significa que o componente vulnerável está vinculado à pilha da rede e o caminho do invasor é pela camada 3 do modelo OSI (a camada de rede). Essa vulnerabilidade é geralmente chamada de “explorável remotamente” e pode ser considerada como um ataque que pode ser explorado a partir de um ou mais hops de rede. Um exemplo de um ataque de rede é um invasor que causa uma negação de serviço (DoS) enviando um pacote TCP especialmente criado através da Internet pública;
  • Adjacent (A): Significa que o componente vulnerável está vinculado à pilha da rede, mas o ataque é limitado à mesma rede física compartilhada (ex.: Bluetooth, IEEE 802.11) ou lógica (ex.: sub-rede IP local) e não pode ser executada através de um limite da camada 3 do OSI (ex.: um roteador). Um exemplo de um ataque Adjacente seria um ARP (IPv4) ou neighbor discovery (IPv6) flood levando a uma negação de serviço no segmento de LAN local;
  • Local (L): Uma vulnerabilidade explorável com acesso local significa que o componente vulnerável não está vinculado à pilha de rede e o caminho do invasor é por meio dos recursos de leitura/gravação/execução. Em alguns casos, o invasor pode estar conectado localmente para explorar a vulnerabilidade, caso contrário, ela pode confiar na interação do usuário para executar um arquivo mal-intencionado. ;
  • Physical (P): Requer que o invasor toque ou manipule fisicamente o componente vulnerável. A interação física pode ser breve ou persistente. Um exemplo de tal ataque é o cold boot attack que permite que um invasor acesse as chaves de criptografia de disco após obter acesso físico ao sistema ou ataques periféricos, como ataques de acesso direto à memória Firewire/USB;

CVSS 3 – Attack Vector (AV)

 

Attack Complexity (AC): Esta métrica descreve as condições que devem existir além do controle do invasor para explorar a vulnerabilidade. Essas condições podem exigir a coleta de mais informações sobre o destino, a presença de determinadas configurações ou exceções do sistema. É importante ressaltar que a avaliação dessa métrica exclui qualquer requisito de interação do usuário para explorar a vulnerabilidade (essas condições são capturadas na métrica “interação do usuário”). A pontuação será maior para os ataques menos complexos. Os possíveis valores são:

  • Low (L): Não precisa de condições de acesso especializadas ou circunstâncias específicas. Um invasor pode esperar sucesso repetitivo contra o componente vulnerável;
  • High (H): Um ataque bem sucedido depende de condições além do controle do atacante. Ou seja, um ataque bem-sucedido não pode ser realizado à vontade, mas exige que o invasor invista em algum esforço mensurável de preparação ou execução contra o componente vulnerável antes que um ataque bem-sucedido possa ocorrer. Por exemplo, um ataque bem-sucedido pode depender de um invasor superar qualquer uma das seguintes condições:
    • O invasor deve realizar um reconhecimento específico do alvo. Por exemplo, nas definições de configuração de destino, números de sequência, segredos compartilhados, etc.
    • O invasor deve preparar o ambiente de destino para melhorar a confiabilidade da exploração. Por exemplo, explorar de forma repetida para ganhar uma condição de corrida ou ultrapassar técnicas avançadas de mitigação de exploração.
    • O atacante deve se injetar no caminho lógico da rede entre o alvo e o recurso solicitado pela vítima, a fim de ler e/ou modificar as comunicações na rede (ex.: man-in-the-middle).

Privileges Required (PR): Esta métrica descreve o nível de privilégio que um atacante deve possuir antes de explorar a vulnerabilidade com sucesso. A pontuação do CVSS aumenta com a ausência de privilégios necessários. Os possíveis valores são:

  • None (N): O invasor não é um usuário autorizado antes do ataque, e portante não requer acesso a configurações ou arquivos para realizar um ataque;
  • Low (L): O invasor está autorizado, ou seja, requer privilégios que fornecem recursos básicos do usuário que normalmente poderiam afetar apenas as configurações e os arquivos pertencentes a um usuário. Como alternativa, um invasor com privilégios baixos pode ter a capacidade de causar impacto somente em recursos não confidenciais;
  • High (H): O invasor está autorizado com privilégios que fornecem controle significativo (por exemplo, administrativo) sobre o componente vulnerável que pode afetar as configurações e arquivos de todo o componente;

CVSS 3 – Privileges Required

User Interaction (UI): Essa métrica captura o requisito de que um usuário, que não seja o invasor, participe do comprometimento para que o invasor seja bem-sucedido. Essa métrica determina se a vulnerabilidade pode ser explorada somente à vontade do invasor ou se um usuário separado (ou processo iniciado pelo usuário) deve participar de alguma maneira. Esse valor de métrica é maior quando nenhuma interação do usuário é necessária.

  • None (N): O sistema vulnerável pode ser explorado sem interação de qualquer usuário;
  • Required (R): A exploração bem-sucedida desta vulnerabilidade exige que o usuário realize alguma ação antes que a vulnerabilidade possa ser explorada. Por exemplo, uma exploração bem-sucedida só pode ser possível durante a instalação de um aplicativo por um administrador do sistema;

CVSS 3 – User Interaction

Scope: Caso um ataque seja bem-sucedido e impacte outro componente além daquele que está vulnerável, a pontuação Base irá aumentar e as métricas de Confidentiality, Integrity e Authentication devem ser pontuadas em relação ao componente impactado.

  • Changed (C): Uma vulnerabilidade explorada pode afetar os recursos além dos privilégios de autorização pretendidos pelo componente vulnerável. Nesse caso, o componente vulnerável e o componente afetado são diferentes;
  • Unchanged (U): Uma vulnerabilidade explorada só pode afetar os recursos gerenciados pela mesma autoridade. Nesse caso, o componente vulnerável e o componente afetado são os mesmos;

CVSS 3 – Scope

Sub-grupo de métricas: Impact

Refere-se à consequência direta que o ativo sofrerá caso a exploração seja realizada com sucesso. Independentemente de uma vulnerabilidade explorada com êxito afetar um ou mais componentes, as métricas de impacto são pontuadas de acordo com o componente que sofre o pior resultado associado de forma mais direta e previsível a um ataque bem-sucedido. Devem-se restringir os impactos a um resultado final razoável, que eles estão confiantes de que um atacante é capaz de alcançar. Este sub-grupo é composto por: Confidentiality, Integrity e Availability.

Confidentiality Impact: Esta métrica mensura o impacto da confidencialidade da informação. Confidencialidade refere-se a limitar o acesso e divulgação de informações a apenas usuários autorizados, bem como impedir o acesso ou a divulgação a usuários não autorizados.

  • High (H): Há perda total de confidencialidade, resultando na divulgação de todos os recursos do componente afetado ao invasor. Alternativamente, o acesso a apenas algumas informações restritas é obtido, mas as informações divulgadas apresentam um impacto sério e direto. Por exemplo, um invasor rouba a senha do administrador ou chaves de criptografia privadas de um servidor da web;
  • Low (L): Há alguma perda de confidencialidade. O acesso a algumas informações restritas é obtido, mas o invasor não tem controle sobre quais informações são obtidas ou se a quantidade ou o tipo de perda é restrito. A divulgação de informações não causa uma perda séria e direta para o componente afetado;
  • None (N): Não há perda de confidencialidade no componente afetado;

CVSS 3 – Confidentiality Impact

Integrity Impact: Essa métrica mede o impacto na integridade de uma vulnerabilidade explorada com sucesso. Integridade refere-se à confiabilidade e veracidade da informação. Esse valor métrico aumenta com a consequência para o componente impactado.

  • High (H): Existe uma perda total de integridade ou uma perda completa de proteção. Por exemplo, o invasor pode modificar qualquer um dos arquivos protegidos pelo componente afetado. Como alternativa, apenas alguns arquivos podem ser modificados, mas a modificação mal-intencionada apresentaria uma consequência séria e direta para o componente afetado;
  • Low (L): A modificação de dados é possível, mas o invasor não tem controle sobre a consequência de uma modificação ou a quantidade de modificação é restrita. A modificação de dados não tem um impacto sério e direto no componente afetado;
  • None (N): Não há perda de integridade no componente afetado.

CVSS 3 – Integrity Impact

Availability Impact: Esta métrica mensura o impacto na disponibilidade do componente afetado como resultado de uma exploração bem-sucedida. Como a disponibilidade se refere à acessibilidade dos recursos de informações, os ataques que consomem largura de banda da rede, ciclos do processador (CPU) ou espaço em disco, todos afetam a disponibilidade de um componente afetado. Esse valor métrico aumenta com a consequência para o componente impactado.

  • High (H): Há perda total de disponibilidade, resultando no fato do invasor poder negar totalmente o acesso aos recursos no componente afetado; essa perda é mantida (enquanto o atacante continua a entregar o ataque) ou persistente (a condição persiste mesmo após o ataque ser concluído). Como alternativa, o invasor tem a capacidade de negar alguma disponibilidade, mas a perda de disponibilidade apresenta uma consequência séria e direta ao componente afetado (por exemplo, o invasor não pode interromper as conexões existentes, mas pode impedir novas conexões; o invasor pode explorar repetidamente uma vulnerabilidade que, em cada instância de um ataque bem-sucedido, vazamentos de uma pequena quantidade de memória, mas após a exploração repetida faz com que um serviço fique completamente indisponível).
  • Low (L): Há desempenho reduzido ou interrupções na disponibilidade de recursos. Mesmo que a exploração repetida da vulnerabilidade seja possível, o invasor não tem a capacidade de negar completamente o serviço a usuários legítimos. Os recursos no componente afetado estão parcialmente disponíveis o tempo todo, ou totalmente disponíveis somente em parte do tempo, mas no geral não há consequência séria e direta para o componente afetado.
  • None (N): Não há impacto na disponibilidade dentro do componente afetado.

CVSS 3 – Availability Impact

Pontuação

A fórmula usada irá gerar uma pontuação que varia de 0 (zero) à 10 (dez).

Especificamente, a equação Base é derivada de duas sub-equações: a equação de Exploitability e a de Impact. Após isto, ela pode ser refinada com a pontuação das métricas Temporal e Environmental para refletir com mais precisão o risco representado por uma vulnerabilidade no ambiente de um usuário. No entanto, elas não são obrigatórias para se obter o CVSS Base.

É importante notar que todas as métricas devem ser pontuadas com a suposição de que o invasor já localizou e identificou a vulnerabilidade. Ou seja, o analista não precisa considerar os meios pelos quais a vulnerabilidade foi identificada. Além disso, é provável que muitos tipos diferentes de indivíduos estejam pontuando vulnerabilidades (por exemplo, fornecedores de software, analistas de boletins de vulnerabilidade, fornecedores de produtos de segurança, etc.), mas observe que a classificação de vulnerabilidades deve ser agnóstica para o indivíduo e sua organização.

Escala de classificação de gravidade qualitativa

É útil ter uma representação textual das pontuações numéricas das métricas Base, Temporal e Environmental. Todas as pontuações podem ser mapeadas para as classificações qualitativas da seguinte forma:

Avaliação Pontuação CVSS
Nenhum 0,0
Baixo 0,1 – 3,9
Médio 4,0 – 6,9
Alto 7,0 – 8,9
Crítico 9,0 – 10,0

Para facilitar o cálculo, você pode usar estas calculadoras online:

https://www.first.org/cvss/calculator/3.0

https://nvd.nist.gov/vuln-metrics/cvss/v3-calculator

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *