Absinthe · Absinthe · CVE-2026-43967
**Nome do Software Vulnerável e Versões Afetadas**
absinthe versões 1.2.0 até 1.10.1
**Descrição**
Um problema de complexidade algorítmica ineficiente permite a negação de serviço não autenticada por meio da validação quadrática de unicidade de nomes de fragmentos. A função `run/2` em `Elixir.Absinthe.Phase.Document.Validation.UniqueFragmentNames` itera sobre todos os fragmentos e chama `duplicate?/2`, que realiza uma varredura linear completa da lista de fragmentos usando `Enum.count(fragments, &(&1.name == name))`. Isso resulta em O(N²) comparações por documento, onde `N` é o número de definições de fragmentos fornecidas pelo chamador. Como `input.fragments` é construído diretamente do corpo da consulta GraphQL, um invasor pode controlar `N`. Por exemplo, um documento de aproximadamente 1 MB contendo cerca de 60.000 fragmentos pode forçar aproximadamente 3,6 × 10⁹ comparações durante esta fase de validação, sem a necessidade de autenticação, conhecimento do esquema ou configuração especial.
**Recomendações**
Atualize para a versão 1.10.2 ou posterior.