PT-2026-51082 · Ohler55+3 · Oj+1
CVSS v4.0
2.1
Baixa
| Vetor | AV:L/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N |
Nome do Software Vulnerável e Versões Afetadas
Oj versões anteriores a 3.17.2
Description
Ao operar no modo de objeto, a função
Oj.dump está suscetível a um estouro de buffer de heap (heap buffer overflow) durante a serialização de objetos Exception se um valor de :indent elevado for utilizado. O problema ocorre porque o serializador aloca um buffer com base nos atributos do objeto, mas não contabiliza os bytes adicionais necessários para a indentação a cada gravação. Por exemplo, o uso de indent: 5000 pode fazer com que o acúmulo de strings de indentação exceda a memória de heap alocada, resultando em corrupção de memória. Este processo envolve a função fill indent(), que é chamada repetidamente por dump obj attrs() ao processar atributos de um objeto Exception.Recommendations
Atualize o Oj para a versão 3.17.2 ou posterior.
Evite usar valores extremos para o parâmetro
:indent e não permita que os usuários especifiquem tamanhos de indentação ilimitados ao realizar o dump de dados Ruby.Exploit
Correção
Heap Based Buffer Overflow
Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾
Enumeração de Fraquezas
Identificadores relacionados
Produtos afetados
Oj
Ruby-Oj