PT-2026-39898 · Kysely · Kysely
Starplatinu
·
Publicado
2026-05-11
·
Atualizado
2026-05-27
·
CVE-2026-44635
CVSS v3.1
7.5
Alta
| Vetor | AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N |
Nome do Software Vulnerável e Versões Afetadas
Kysely versões anteriores a 0.28.16
Descrição
O tratamento inadequado de entrada no compilador de caminhos JSON permite que invasores acessem dados JSON sensíveis. O software não escapa metacaracteres de caminhos JSON, como
., [, ], *, ** e ?, limitando-se a duplicar aspas simples. Quando entradas controladas por invasores são passadas para as funções key() ou at() — inclusive em códigos com tipagem segura onde as colunas são definidas como Record<string, T> — os invasores podem usar pontos como separadores de perna de caminho para navegar por campos irmãos e filhos fora do escopo pretendido. Isso resulta em acesso de leitura não autorizado e, em instruções de atualização, acesso de escrita não autorizado a subcampos JSON no MySQL, PostgreSQL (usando os operadores ->$ ou ->>$) e SQLite. No MySQL e PostgreSQL, o uso de curingas * ou ** pode ser utilizado para enumerar todos os valores em uma profundidade específica ou percorrer todo o documento.Recomendações
Como medida paliativa temporária, evite usar as funções
key() ou at() com entradas controladas por usuários nos endpoints de API afetados até que uma correção esteja disponível.
Restrinja a entrada passada para key() e at() a um conjunto de caracteres conhecidos e seguros, rejeitando quaisquer strings que contenham metacaracteres de caminhos JSON.Exploit
Correção
SQL injection
Path traversal
Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾
Identificadores relacionados
Produtos afetados
Kysely