PT-2026-51067 · Git+4 · Oj+1
CVSS v3.1
7.5
Alta
| Vetor | AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H |
Nome do Software Vulnerável e Versões Afetadas
Oj versões anteriores a 3.17.3
Description
Quando o
Oj::Doc#each child é invocado recursivamente em um documento JSON profundamente aninhado, ele pode causar um estouro de buffer de pilha de tamanho fixo, levando a uma negação de serviço (DoS) que aborta o processo. Isso ocorre devido a uma cadeia de duas etapas em ext/oj/fast.c, onde a função doc each child() incrementa a variável doc->where além da matriz where path sem uma verificação de limites e não a restaura. Consequentemente, chamadas recursivas subsequentes fazem com que uma operação memcpy transborde o buffer local de pilha save path. Isso é possível porque o parser Oj::Doc não impõe um limite de profundidade de aninhamento do JSON.Recommendations
Atualizar para a versão 3.17.3.
Exploit
Correção
DoS
Out of bounds Read
Memory Corruption
Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾
Identificadores relacionados
Produtos afetados
Oj
Ruby-Oj