CVE-2026-80557 in LinuxИнформация

Сводка

по VulDB • 26.08.2026

В ядре Linux была устранена следующая уязвимость:

libceph: исправлено чтение за пределами буфера (OOB read) в функции decode_watchers() из-за отсутствия проверки границ диапазона.

Функция ceph_start_decoding() проверяет, что после заголовка кодирования в буфере остается struct_len байт, но принимает значение struct_len=0 как допустимое: вызов ceph_decode_need(p, end, 0, bad) всегда завершается успешно. Когда злонамеренный или скомпрометированный OSD отправляет ответ obj_list_watch_response_t со значением struct_len=0, функция ceph_start_decoding() возвращает успех при условии p == end, что оставляет гарантированный ноль байт для последующих операций чтения.

Непосредственно следующая за этим операция ceph_decode_32(p) в функции decode_watchers() не имеет предварительной проверки границ диапазона. При условии p == end это приводит к чтению 4 байтов за пределами проверенного буфера. Полученное случайное значение затем напрямую передается в функцию kzalloc_objs() в качестве счетчика наблюдателей (watcher count).

Сопутствующая функция decode_watcher() уже использует безопасные варианты функций (ceph_decode_copy_safe, ceph_decode_64_safe, ceph_decode_skip_32) после собственного вызова ceph_start_decoding(). Функция decode_watchers() является единственным местом в коде, где используется «голый» вариант, что подтверждает упущение.

Исправление заключается в замене ceph_decode_32(p) на ceph_decode_32_safe(p, end, *num_watchers, bad), чтобы привести код к соответствию с установленным шаблоном.

Модель атакующего: злонамеренный или скомпрометированный OSD в многопользовательском развертывании Ceph (например, в облачной среде) может инициировать эксплуатацию этой уязвимости против любого клиента ядра, вызывающего CEPH_OSD_OP_LIST_WATCHERS, без необходимости наличия каких-либо дополнительных привилегий помимо установления сессии OSD.

[ idryomov: сокращение журнала изменений ]

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

Ответственный

Linux

Резервировать

26.08.2026

Раскрытие

26.08.2026

Модерация

принято

Вход

VDB-395865

EPSS

0.00000

KEV

Нет

Деятельности

Очень низкий

Источники

Interested in the pricing of exploits?

See the underground prices here!