Логотип exploitDog
Консоль
Логотип exploitDog

exploitDog

github логотип

GHSA-g857-hhfv-j68w

Опубликовано: 16 апр. 2026
Источник: github
Github: Прошло ревью
CVSS4: 5.9
CVSS3: 9.8

Описание

Buffer Overflow in Zlib::GzipReader ungetc via large input leads to memory corruption

Details

A buffer overflow vulnerability exists in 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.

Recommended action

We recommend to update the zlib gem to version 3.2.3 or later. In order to ensure compatibility with bundled version in older Ruby series, you may update as follows instead:

  • For Ruby 3.2 users: Update to zlib 3.0.1
  • For Ruby 3.3 users: Update to zlib 3.1.2

You can use gem update zlib to update it. If you are using bundler, please add gem "zlib", ">= 3.2.3" to your Gemfile.

Affected versions

zlib gem 3.2.2 or lower

Credits

calysteon

References

Пакеты

Наименование

zlib

rubygems
Затронутые версииВерсия исправления

>= 3.2.0, < 3.2.3

3.2.3

Наименование

zlib

rubygems
Затронутые версииВерсия исправления

>= 3.1.0, < 3.1.2

3.1.2

Наименование

zlib

rubygems
Затронутые версииВерсия исправления

< 3.0.1

3.0.1

EPSS

Процентиль: 44%
0.00561
Низкий

5.9 Medium

CVSS4

9.8 Critical

CVSS3

Дефекты

CWE-120

Связанные уязвимости

CVSS3: 9.8
ubuntu
4 месяца назад

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.

CVSS3: 5.6
redhat
4 месяца назад

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.

CVSS3: 9.8
nvd
4 месяца назад

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.

msrc
4 месяца назад

zlib: Buffer Overflow in Zlib::GzipReader ungetc via large input leads to memory corruption

CVSS3: 9.8
debian
4 месяца назад

zlib is a Ruby interface for the zlib compression/decompression librar ...

EPSS

Процентиль: 44%
0.00561
Низкий

5.9 Medium

CVSS4

9.8 Critical

CVSS3

Дефекты

CWE-120