PT-2022-23174 · Unknown · Open Policy Agent
Srenatus
·
Publicado
2022-09-08
·
Atualizado
2022-09-16
·
CVE-2022-36085
CVSS v3.1
7.4
Alta
| Vetor | AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N |
Nome do software vulnerável e versões afetadas
Versões do Open Policy Agent (OPA) anteriores à 0.43.1
Descrição
O compilador Rego no Open Policy Agent (OPA) possui uma função
WithUnsafeBuiltins obsoleta que permite aos usuários especificar funções embutidas a serem rejeitadas pelo compilador. No entanto, foi descoberta uma forma de contornar essa proteção, na qual o uso da palavra-chave with para simular uma função embutida não é levado em consideração pela função WithUnsafeBuiltins. Essa vulnerabilidade pode ser explorada se várias condições forem atendidas, incluindo o uso da API Go para avaliação de políticas, o método WithUnsafeBuiltins e a avaliação de políticas de partes não confiáveis. As funções embutidas http.send e opa.runtime são consideradas inseguras em determinadas integrações. A API de consulta do OPA também é afetada se for exposta ao público sem autenticação e autorização adequadas.Recomendações
Para versões anteriores à 0.43.1, considere usar o recurso
capabilities em vez da função WithUnsafeBuiltins para especificar as funções integradas permitidas.Para fazer isso, defina os recursos usando a função
ast.CapabilitiesForThisVersion() e, em seguida, remova as funções integradas indesejadas dos recursos.Em seguida, use o método
WithCapabilities em vez de WithUnsafeBuiltins ao criar um novo compilador.Como solução alternativa temporária, evite usar a função
WithUnsafeBuiltins até que um patch esteja disponível.Por exemplo, altere o código que usa
WithUnsafeBuiltins para usar WithCapabilities.Exploit
Correção
Protection Mechanism Failure
RCE
Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾
Identificadores relacionados
Produtos afetados
Open Policy Agent