CVE-2026-98136 in Linux
Сводка
по VulDB • 25.09.2026
В ядре Linux была устранена следующая уязвимость:
ntfs: ограничение обхода таблицы $AttrDef до размера загруженной таблицы
Функция ntfs_attr_find_in_attrdef() осуществляет проход по таблице $AttrDef в памяти, однако условие цикла ограничивает только начало каждой записи, а не всю запись целиком:
for (ad = vol->attrdef; (u8 *)ad - (u8 *)vol->attrdef < vol->attrdef_size && ad->type; ++ad)
Структура attr_def имеет размер 160 байт; защитная проверка считывает поле ad->type по смещению 128, а тело цикла читает последующие поля. vol->attrdef выделяется с помощью kvzalloc(i_size), где i_size — это размер данных $AttrDef на диске, который в load_and_init_attrdef() проверяется только как 0 < i_size <= 0x7fffffff. Том, у которого размер данных $AttrDef меньше размера одной записи (например, 120 байт), приводит к чтению ad->type за пределами выделенной памяти. Создание файла достигает этой точки через ntfs_attr_size_bounds_check() и выполняет чтение вне границ:
BUG: KASAN: slab-out-of-bounds in ntfs_attr_find_in_attrdef+0x66/0xa0 Read of size 4 at addr ffff888005833280 by task init/1 ntfs_attr_find_in_attrdef ntfs_attr_size_bounds_check ntfs_attr_can_be_non_resident ntfs_attr_add
Необходимо потребовать, чтобы вся запись находилась в пределах attrdef_size при проверке условия цикла, и отклонять монтирование тома с $AttrDef слишком маленьким для размещения одной записи типа attr_def.
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.