PT-2026-67224
CVE-2026-55734
·
Publicado
2026-08-01
·
Atualizado
2026-08-06
Descrição por
CVSS 3.1
7.5
AltaMétricasAV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Nome do Software Vulnerável e Versões Afetadas
ueberauth guardian versões 2.0.0 até 2.4.0
Descrição
Uma alocação de recursos sem limites ou controle no módulo
Guardian.Permissions permite a negação de serviço via exaustão da tabela de átomos do BEAM. O mixin Guardian.Permissions instala uma função pública encode permissions!/1 que chama String.to atom(to string(k)) para cada chave de um mapa fornecido antes da validação. Na função do encode permissions!/2, a cláusula de valor inteiro ignora a validação contra o conjunto de permissões configurado, permitindo que chaves com valores inteiros sejam internadas como novos átomos. Como os átomos não são coletados pelo garbage collector e a tabela de átomos do BEAM possui tamanho fixo, um invasor que consiga influenciar um mapa de permissões passado para encode permissions!/1 ou encode permissions into claims!/2 pode exaurir a tabela, derrubando o nó BEAM e todos os serviços em execução. Este problema está associado ao arquivo lib/guardian/permissions.ex e às funções encode permissions!/1, encode permissions into claims!/2 e do encode permissions!/2.Recomendações
Atualize o ueberauth guardian para a versão 2.4.1 ou posterior.
Como medida paliativa temporária, filtre o mapa de permissões para garantir que apenas chaves pertencentes ao conjunto de permissões configurado sejam passadas para
encode permissions!/1 ou encode permissions into claims!/2, e evite passar mapas de permissões influenciados por invasores para essas funções.Explorabilidade
Exploit
Correção
Impactos
Fornecedores
Produtos afetados
Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾