PT-2026-35032 · Dgraph · Dgraph
Vladimirelitokarev
·
Publicado
2026-04-24
·
Atualizado
2026-05-22
·
CVE-2026-41328
CVSS v3.1
9.1
Crítica
| Vetor | AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N |
Name of the Vulnerable Software and Affected Versions
Dgraph versões anteriores a 25.3.3
Description
Um problema no Dgraph permite que um invasor não autenticado obtenha acesso total de leitura a todos os dados no banco de dados quando a configuração padrão é usada e as Listas de Controle de Acesso (ACL) não estão habilitadas. A falha é uma injeção de DQL que ocorre porque o campo
Lang em chaves de mutação JSON não é validado.Um invasor pode explorar isso enviando duas solicitações HTTP POST para a porta 8080. Primeiro, utiliza o endpoint '/alter' para configurar um predicado de esquema com
@unique, @index(exact) e @lang. Em seguida, envia uma mutação JSON manipulada para o endpoint '/mutate?commitNow=true'. Ao incluir um payload de injeção DQL na posição da tag de idioma de uma chave JSON, o invasor pode escapar da função eq() e executar blocos de consulta nomeados arbitrários no servidor. Esse processo explora a função addQueryIfUnique() em edgraph/server.go, que usa fmt.Sprintf para construir consultas com a variável predicateName não sanitizada, incluindo o valor bruto de pred.Lang. Os resultados da consulta injetada são então retornados na resposta HTTP.Recommendations
Atualize para a versão 25.3.3.
Como solução temporária, habilite o ACL para impedir o acesso não autenticado aos endpoints '/alter' e '/mutate'.
Exploit
Correção
Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾
Enumeração de Fraquezas
Identificadores relacionados
Produtos afetados
Dgraph