PT-2026-67223
CVE-2026-55733
·
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 permite a negação de serviço (DoS) através da criação ilimitada de átomos a partir de entradas binárias controladas por um invasor. O codificador
Guardian.Permissions.AtomEncoding processa escopos de permissão passando binários arbitrários para a função String.to atom/1. Quando a função encode/3 em lib/guardian/permissions/atom encoding.ex é chamada com uma lista, a cláusula binária encode value/3 chama String.to atom(value) sem uma verificação de lista de permissões, descartando o argumento perm set.Como a função
String.to atom/1 cria um novo átomo para cada binário não visto e os átomos não são coletados pelo garbage collector, a tabela de átomos do BEAM (limitada a aproximadamente 1.048.576 entradas) pode ser esgotada. Um invasor que forneça entradas variadas através de corpos de requisição ou claims de JWT pode causar a falha do nó BEAM por system limit, derrubando todas as aplicações executadas nele.Recomendações
Atualize o ueberauth guardian para a versão 2.4.1 ou posterior.
Como solução temporária, altere o codificador de permissões para
Guardian.Permissions.BitwiseEncoding ou Guardian.Permissions.TextEncoding.
Como solução temporária, valide cada valor de permissão contra a lista de permissões perm set configurada antes de passá-lo para a função encode/3.Explorabilidade
Exploit
Correção
Impactos
Fornecedores
Produtos afetados
Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾