PT-2024-3066 · Unknown · Openmetadata
Pwntester
·
Publicado
2024-03-11
·
Atualizado
2024-04-24
·
CVE-2024-28848
CVSS v2.0
9.0
Alta
| Vetor | AV:N/AC:L/Au:S/C:C/I:C/A:C |
Nome do software vulnerável e versões afetadas
Versões do OpenMetadata anteriores à 1.2.4
Descrição
A vulnerabilidade está relacionada ao método
CompiledRule::validateExpression, que avalia uma expressão SpEL utilizando um StandardEvaluationContext. Isso permite que a expressão interaja com classes Java, como java.lang.Runtime, levando à execução remota de código. O endpoint /api/v1/policies/validation/condition/<expression> passa dados controlados pelo usuário para CompiledRule::validateExpression, permitindo que usuários autenticados não administradores executem comandos arbitrários do sistema no sistema operacional subjacente. A ausência de uma verificação de autorização, já que Authorizer.authorize() nunca é chamado no caminho afetado, permite que qualquer usuário autenticado que não seja administrador acione esse endpoint e avalie expressões SpEL arbitrárias, levando à execução de comandos arbitrários.Recomendações
Para versões do OpenMetadata anteriores à 1.2.4, atualize para a versão 1.2.4 ou posterior para resolver o problema. Como solução alternativa temporária, considere restringir o acesso ao endpoint
/api/v1/policies/validation/condition/<expression> para impedir a exploração. Além disso, desativar o método CompiledRule::validateExpression ou restringir o uso do StandardEvaluationContext até que um patch esteja disponível pode ajudar a minimizar o risco de exploração.Exploit
Correção
Code Injection
Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾
Enumeração de Fraquezas
Identificadores relacionados
Produtos afetados
Openmetadata