CVE-2026-27820

zlib is a Ruby interface for the zlib compression/decompression library. Versions 3.0.0 and below, 3.1.0, 3.1.1, 3.2.0 and 3.2.1 contain a buffer overflow vulnerability in the Zlib::GzipReader. The zstream_buffer_ungets function prepends caller-provided bytes ahead of previously produced output but fails to guarantee the backing Ruby string has enough capacity before the memmove shifts the existing data. This can lead to memory corruption when the buffer length exceeds capacity. This issue has been fixed in versions 3.0.1, 3.1.2 and 3.2.3.
Configurations

Configuration 1 (hide)

OR cpe:2.3:a:ruby-lang:zlib:*:*:*:*:*:ruby:*:*
cpe:2.3:a:ruby-lang:zlib:*:*:*:*:*:ruby:*:*
cpe:2.3:a:ruby-lang:zlib:*:*:*:*:*:ruby:*:*

History

26 Oct 2026, 21:10

Type Values Removed Values Added
Summary
  • (es) zlib es una interfaz Ruby para la biblioteca de compresión/descompresión zlib. Las versiones 3.0.0 e inferiores, 3.1.0, 3.1.1, 3.2.0 y 3.2.1 contienen una vulnerabilidad de desbordamiento de búfer en Zlib::GzipReader. La función zstream_buffer_ungets antepone bytes proporcionados por el llamador delante de la salida producida previamente, pero no garantiza que la cadena Ruby subyacente tenga suficiente capacidad antes de que memmove desplace los datos existentes. Esto puede llevar a corrupción de memoria cuando la longitud del búfer excede la capacidad. Este problema ha sido solucionado en las versiones 3.0.1, 3.1.2 y 3.2.3.

Information

Published : 2026-04-16 18:16

Updated : 2026-10-26 21:10


NVD link : CVE-2026-27820

Mitre link : CVE-2026-27820

CVE.ORG link : CVE-2026-27820


JSON object : View

Products Affected

ruby-lang

  • zlib
CWE
CWE-120

Buffer Copy without Checking Size of Input ('Classic Buffer Overflow')

CWE-131

Incorrect Calculation of Buffer Size