Skip to main content

Entenda a pontuação de segurança de sites

Escrito por
Licenting blog feature

13 de maio de 2020

0 minutos de leitura

A Snyk lançou uma integração com o WebPageTest que apresenta informações de segurança para uma verificação de segurança de sites, além dos testes de velocidade e das métricas de desempenho oferecidos pelo WebPageTest.

Ao fazer uma análise com o WebPageTest, você recebe uma pontuação de segurança. O que essa pontuação mede e como ela é calculada?

O que é o WebPageTest?

O WebPageTest é um serviço que testa gratuitamente a velocidade de sites em vários locais do mundo, usando navegadores reais. Ele fornece métricas de desempenho que ajudam os desenvolvedores a otimizar seus sites.

Para receber uma pontuação e testar a segurança do seu site, acesse o WebPageTest, digite o endereço do site e clique no botão Start Test. A pontuação de segurança será exibida quando a análise for concluída.

Para explicar a pontuação de segurança, analisei o site https://www.foxnews.com. Como você pode ver na imagem abaixo, ele recebeu nota E, o que mostra que há muita coisa a corrigir:

Página de resultados do WebPageTest com a pontuação de segurança E, destacada por um círculo e uma seta magenta
Clique na pontuação de segurança para ver mais informações sobre a segurança do site

Mas qual é exatamente o problema e por que esse site recebeu nota E?

Ao clicar na pontuação, você verá mais detalhes sobre os problemas na página de resultados da Snyk:

Verificação de segurança do site mostrando nota E, bibliotecas JavaScript vulneráveis e ausência de cabeçalhos de segurança HTTP.
Bibliotecas JavaScript vulneráveis e cabeçalhos de segurança HTTP ausentes nesta pontuação de segurança do site

Como você pode ver, a pontuação se baseia em duas métricas principais:

  1. Versões vulneráveis de bibliotecas JavaScript detectadas na página, que representam uma possível ameaça à segurança.

  2. Cabeçalhos de segurança: verificamos quais cabeçalhos de segurança HTTP estão configurados no site e quais estão ausentes, mas são recomendados.

Verificação de segurança de sites

O que significa quando um site não é seguro?

Antes de explicar como calculamos a pontuação, vamos detalhar as métricas que medimos na página:

Cabeçalhos de segurança HTTP

Na imagem acima, com os resultados detalhados na página da Snyk, vemos que foi usado um cabeçalho de segurança HTTP: strict-transport-security. Saiba mais nas páginas para desenvolvedores da MDN. No entanto, o site que analisamos não tem os seguintes cabeçalhos de segurança:

  • X-Content-Type-Options

  • X-Frame-Options

  • Content-Security-Policy

  • X-XSS-Protection

Bibliotecas JavaScript vulneráveis

A segunda parte da página de resultados do teste mostra uma lista das bibliotecas JavaScript detectadas no site cujas versões apresentam vulnerabilidades de segurança. Entre as vulnerabilidades encontradas estão poluição de protótipo no jQuery e poluição de protótipo no Lodash.

Como é calculada a pontuação de uma análise de segurança de sites?

A nota mais alta é A+ e a mais baixa é F. As notas são definidas com base na seguinte pontuação:

  • A+ para pontuação igual ou superior a 95

  • A para pontuação igual ou superior a 75

  • B para pontuação igual ou superior a 60

  • C para pontuação igual ou superior a 50

  • D para pontuação igual ou superior a 29

  • E para pontuação igual ou superior a 14

  • F para pontuação igual ou superior a 0

As pontuações são calculadas com base na fórmula criada por Scott Helm para https://securityheaders.com. A fórmula é pública e inclui um fator que reduz a pontuação quando são detectadas vulnerabilidades em JavaScript.

Os cabeçalhos de segurança recebem a seguinte pontuação:

  • Content-Security-Policy soma 25 pontos

  •  X-Frame-Options soma 20 pontos

  • X-XSS-Protection soma 20 pontos

  • X-Content-type-options soma 20 pontos

  • Strict-transport-security soma 25 pontos, somente se o site analisado usar HTTPS

As vulnerabilidades em JavaScript detectadas na página reduzem a pontuação geral da seguinte forma:

  • Quando pelo menos uma biblioteca é considerada vulnerável:

  • vulnerabilidades de gravidade alta reduzem a pontuação para 70

  • Caso contrário:

  • cada vulnerabilidade de gravidade média reduz a pontuação em 25 pontos

  • cada vulnerabilidade de gravidade baixa reduz a pontuação em 20 pontos

Se ainda não tem uma conta da Snyk, cadastre-se gratuitamente e use a Snyk para analisar dependências de código aberto, como pacotes npm usados para desenvolver suas aplicações web, e verificar se há vulnerabilidades de segurança. A Snyk monitora essas dependências, envia alertas e também abre automaticamente pull requests para corrigir os problemas.

Comece a jogar Capture the Flag

Aprenda a resolver desafios de Capture the Flag assistindo à gravação sob demanda do nosso workshop virtual introdutório.

Leia mais

Blog

Modelos de ponta encontraram as vulnerabilidades. Só o atacante encontrou as cadeias.

A análise estática encontrou as falhas, mas só os testes de ataque em aplicações ativas provaram como elas poderiam ser encadeadas para causar invasões. Uma comparação entre Evo COS, Claude Security e Claude Code Security.

feature insights context
Blog

Os ataques autônomos já chegaram. A defesa precisa acompanhar o ritmo.

Os atacantes autônomos estão reduzindo o tempo disponível para a defesa. Saiba como a descoberta, a correção, a validação e a prevenção contínuas ajudam as equipes de segurança a acompanhar esse ritmo.

Blog

Por que agentes de programação com IA continuam criando falhas de controle de acesso

Agentes de programação com IA podem gerar uma lógica de autorização que compila e passa pela revisão, mas permite que um tenant acesse os dados de outro. Saiba por que é difícil detectar falhas de controle de acesso e como evitá-las.