PT-2020-18315 · Angular · Angular-Expressions
Maxime Nadeau
·
Publicado
2020-01-24
·
Atualizado
2020-01-31
·
CVE-2020-5219
CVSS v3.1
8.8
Alta
| Vetor | AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H |
Nome do software vulnerável e versões afetadas
Versões do Angular Expressions anteriores à 1.0.1
Descrição
A vulnerabilidade permite a execução remota de código se a função
expressions.compile(userControlledInput) for chamada, sendo que userControlledInput é um texto proveniente da entrada do usuário. Em um ambiente de navegador, um invasor poderia executar qualquer script do navegador quando o código do aplicativo chamar expressions.compile(userControlledInput). Em um servidor, um invasor poderia executar qualquer expressão JavaScript, obtendo assim a execução remota de código.Recomendações
Para versões anteriores à 1.0.1, atualize para a versão 1.0.1 do angular-expressions.
Como solução temporária, considere desativar a entrada controlada pelo usuário que será alimentada no angular-expressions em seu aplicativo.
Alternativamente, restrinja
userControlledInput para permitir apenas caracteres específicos usando um filtro de expressão regular, como if (/^[|a-zA-Z.0-9 :"+'-?]+$/.test(userControlledInput)).Correção
Special Elements Injection
Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾
Enumeração de Fraquezas
Identificadores relacionados
Produtos afetados
Angular-Expressions