PT-2020-18313 · F Secure · Secure Headers

Publicado

2020-01-23

·

Atualizado

2020-05-21

·

CVE-2020-5217

CVSS v3.1

5.8

Média

VetorAV:N/AC:L/PR:N/UI:N/S:C/C:N/I:L/A:N
Nome do software vulnerável e versões afetadas
Versões do Secure Headers anteriores à 3.8.0
Versões do Secure Headers anteriores à 5.1.0
Versões do Secure Headers anteriores à 6.2.0
Descrição
Existe uma vulnerabilidade de injeção de diretiva no Secure Headers. Se uma entrada fornecida pelo usuário fosse passada para append/override content security policy directives, um ponto-e-vírgula poderia ser injetado, levando à injeção de diretiva. Isso poderia ser usado para substituir uma diretiva script-src. Diretivas duplicadas são ignoradas e a primeira prevalece. As diretivas em secure headers são classificadas em ordem alfabética, de modo que praticamente todas vêm antes de script-src. Uma diretiva anteriormente indefinida receberia um valor mesmo que SecureHeaders::OPT OUT fosse fornecido. As versões corrigidas converterão silenciosamente os pontos-e-vírgulas em espaços e emitirão um aviso de obsolescência quando isso ocorrer, resultando em mensagens inofensivas no console do navegador caso sejam exploradas ou usadas acidentalmente.
Recomendações
Para versões anteriores à 3.8.0, atualize para a versão 3.8.0 ou posterior.
Para versões anteriores à 5.1.0, atualize para a versão 5.1.0 ou posterior.
Para versões anteriores à 6.2.0, atualize para a versão 6.2.0 ou posterior.
Como solução alternativa temporária, considere filtrar a entrada do usuário substituindo ponto-e-vírgulas por espaços, por exemplo, usando user input.gsub(“;”, “ ”) ao chamar override content security policy directives.

Exploit

Correção

Special Elements Injection

Eval Injection

Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾

Enumeração de Fraquezas

Identificadores relacionados

CVE-2020-5217
GHSA-XQ52-RV6W-397C
RHSA-2020:4366

Produtos afetados

Secure Headers