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

VetorAV: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

CVE-2020-5219
GHSA-HXHM-96PP-2M43

Produtos afetados

Angular-Expressions