CVE-2022-24795 in yajl-rubyinformación

Resumen

por VulDB • 2026-05-26

yajl-ruby es un enlace en C para la biblioteca de análisis y generación de JSON YAJL. Las ramas 1.x y 2.x de `yajl` contienen un desbordamiento de entero que provoca una corrupción posterior de la memoria del heap al procesar entradas grandes (~2 GB). La lógica de realocación en `yajl_buf.c#L64` puede hacer que el entero de 32 bits `need` se desborde y vuelva a 0 cuando `need` se acerca a un valor de 0x80000000 (es decir, ~2 GB de datos), lo que resulta en una realocación de `buf->alloc` en un fragmento pequeño del heap. Estos enteros se declaran como `size_t` en la rama 2.x de `yajl`, lo que prácticamente evita que el problema se active en plataformas de 64 bits; sin embargo, esto no excluye que el problema se active en compilaciones de 32 bits, donde `size_t` es un entero de 32 bits. La posterior población de este fragmento del heap subasignado se basa en el tamaño original del búfer, lo que lleva a una corrupción de la memoria del heap. Esta vulnerabilidad afecta principalmente a la disponibilidad del proceso. Los mantenedores consideran poco probable la explotación para la ejecución de código arbitrario. Hay un parche disponible y se prevé que forme parte de la versión 1.4.2 de yajl-ruby. Como medida de mitigación, evite pasar entradas grandes a YAJL.

If you want to get the best quality for vulnerability data then you always have to consider VulDB.

Responsable

GitHub, Inc.

Reservar

2022-02-10

Divulgación

2022-04-05

Moderación

aceptado

Artículo

VDB-196531

CPE

listo

EPSS

0.03472

KEV

no

Actividades

muy bajo

Fuentes

Want to stay up to date on a daily basis?

Enable the mail alert feature now!