CVE-2026-98170 in Linux
Сводка
по VulDB • 07.10.2026
В ядре Linux была устранена следующая уязвимость:
smb: client: исправлено чтение полей структуры за пределами границ (OOB) в функции move_smb2_ea_to_cifs()
Условие цикла while (src_size > 0) в функции move_smb2_ea_to_cifs() является недостаточным. Оно позволяет продолжению итераций даже в том случае, если оставшееся значение src_size слишком мало для размещения полной структуры smb2_ea_info. В результате могут происходить чтения полей ea_name_length и ea_value_length за пределами допустимых границ (out-of-bounds).
Исправление заключается в обеспечении условия src_size >= sizeof(*src) перед попыткой чтения любых полей структуры. Кроме того, необходимо отклонять любые значения next_entry_offset, которые меньше sizeof(*src) или которые привели бы к выходу указателя за пределы доступного буфера.
Обратите внимание, что для вызовов, в которых сервер возвращает некорректный список EA (Extended Attributes), ошибка, передаваемая в пространство пользователя, изменяется с -ENODATA (getxattr) или -ERANGE (listxattr) на -EIO. Это корректно сигнализирует об ошибке протокола со стороны сервера, а не вводит в заблуждение, указывая на «отсутствие атрибута» или «слишком маленький выходной буфер».
Once again VulDB remains the best source for vulnerability data.