Segurança de Aplicação

Gerenciamento de bibliotecas vulneráveis com o uso do EPSS

Já sabemos que, no mundo do desenvolvimento seguro, as dependências dos nossos softwares representam boa parte do nosso código e, portanto, há grande probabilidade de nossa aplicação herdar suas vulnerabilidades. Hoje em dia, é quase impossível verificar uma biblioteca que não exista alguma CVE atrelada a ela e, portanto é importante fazer a gestão dessas bibliotecas. Não é à toa que o uso de “Componente Desatualizado e Vulnerável” vem se tornando um dos maiores riscos para as aplicações, segundo o OWASP TOP 10

O risco do uso de componentes vulneráveis vem se tornando cada vez mais comum, conforme o OWASP TOP 10.

Para enfrentar esse cenário, integramos ferramentas de SCA (Software Composition Analysis) em nossas esteiras para scannear nosso código e entender quais bibliotecas estão sendo usadas e quais suas vulnerabilidades. Mas qual é o real risco atrelado a essas vulnerabilidades?  Neste blogpost, exploraremos o que é o EPSS, como ele funciona, sua importância e como ele pode te auxiliar na tomada de decisões quando utilizado em conjunto com sua ferramenta de SCA.

O que é EPSS?

O Exploit Prediction Scoring System (EPSS) é uma métrica, apresentada na Black Hat de 2019, que vem sendo utilizada pelas ferramentas de SCA do mercado. Esta métrica tem o objetivo de estimar a probabilidade de uma vulnerabilidade ser explorada em ataques reais nos próximos 30 dias. Diferente de outras métricas de avaliação de risco, o EPSS não foca apenas na severidade da vulnerabilidade, mas sim na chance de que ela seja realmente explorada por atacantes.

Desenvolvido pelo FIRST (Forum of Incident Response and Security Teams), o EPSS usa modelos estatísticos e machine learning para analisar dados e prever a probabilidade de exploração. O sistema fornece uma pontuação de 0 a 1 (ou 0% a 100%) para cada vulnerabilidade, indicando quão provável é que essa vulnerabilidade seja explorada em um futuro próximo.

Como o EPSS funciona?

O EPSS utiliza uma variedade de dados e técnicas para realizar suas previsões. Alguns dos  fatores considerados incluem:

Outros fatores também contribuem para o cálculo do EPSS, caso queira verificar a lista completa dos dados coletados, recomendamos visitar o https://www.first.org/epss/model . Após a coleta desses dados, utilizam-se técnicas de estatística e machine learning para gerar uma pontuação gerada a cada 24 horas para cada vulnerabilidade, indicando sua probabilidade de exploração.

Por que o EPSS é importante?

No mundo do desenvolvimento de software seguro, os times de AppSec e desenvolvimento lidam com grande número de vulnerabilidades de bibliotecas diariamente. Segundo o projeto CVE.ICU, são aproximadamente 110 novas CVEs por dia, em média.

Referência: https://cve.icu/CVE2024.html#cve-per-day-graph

Corrigir todas essas CVEs de imediato é, muitas vezes, inviável, e é aqui que entra a importância do EPSS. Ele ajuda os times a focar seus esforços nas vulnerabilidades com maior probabilidade de serem exploradas.

Como implementar o EPSS na sua empresa

Para implementar o EPSS, as empresas devem:

  1. Integrar EPSS ao seu sistema de Gestão de Vulnerabilidades: Isso pode ser feito utilizando ferramentas de SCA que suportam o EPSS, como, por exemplo, o SCA do Conviso Plataform. Entretanto, se sua empresa não possui budget para ferramentas comerciais, considere utilizar ferramentas open-source como o Dependabot EPSS Action.
Definição do dependabot com EPSS na pipeline
Resultados do dependabot com EPSS na pipeline
  1. Priorizar vulnerabilidades baseadas no EPSS: Utilize a pontuação do EPSS para decidir quais vulnerabilidades necessitam de atenção imediata. O funil do Conviso Plataform é um dashboard que te oferece uma visão de priorização das vulnerabilidades, não só considerando o EPSS, mas também considerando a classificação do ativo. Levando em conta, fatores como, se o ativo está exposto na internet, seu impacto para o negócio, se possui dados PII e/ou PCI entre outros, trazendo a real visão de risco para seu negócio.
Visão do funil de vulnerabilidades do Conviso Plataform
  1. Treinar equipes para a leitura do EPSS: A equipe de segurança deve estar apta a entender e aplicar a metodologia EPSS eficazmente, sabendo quando e como priorizar as vulnerabilidades listadas. A tabela abaixo mostra um estudo de priorização de vulnerabilidades conforme a relação entre EPSS e CVSS.

Tabela demonstra a priorização de vulnerabilidades de acordo com a relação EPSS x CVSS

Conclusão

Em meio a tantas discussões sobre o real risco das vulnerabilidades identificadas pelas ferramentas de SCA, o EPSS oferece uma visão de como devemos priorizar as vulnerabilidades focando naquilo que realmente oferece uma ameaça para as empresas. Ao considerarmos métricas como o CVSS e EPSS em conjunto, juntamente com a correta classificação dos ativos, temos uma visão real do risco do nosso ambiente, o que nos leva a tomadas de decisões mais efetivas na gestão de vulnerabilidades, garantindo:

  • Eficiência priorização: Reduz o tempo e os recursos gastos em vulnerabilidades com baixo risco de exploração.
  • Melhor uso de recursos: Direciona a equipe de segurança para os problemas mais críticos e urgentes.
  • Aumento da segurança proativa: Ajuda a identificar ameaças antes que elas sejam exploradas ativamente.

Related posts
ProdutoSegurança de Aplicação

Segurança de aplicações com IA: como apoiar o desenvolvimento seguro

A segurança de aplicações com IA está redefinindo a forma como as empresas desenvolvem software…
Read more
ProdutoSegurança de Aplicação

Gestão de vulnerabilidades precisa de contexto

Quem trabalha com segurança de aplicações não sofre com a falta de dados — sofre com o…
Read more
ProdutoSegurança de Aplicação

Como agentes de IA especialista em AppSec aceleram o desenvolvimento seguro

A segurança de aplicações não começa na revisão de código — começa na forma como elas são…
Read more

Deixe um comentário

Descubra mais sobre Conviso AppSec

Assine agora mesmo para continuar lendo e ter acesso ao arquivo completo.

Continue reading