CVE-2026-64598 в Linux Kernel: ошибка обработки кода ошибки в SMB-клиенте

CVE: CVE-2026-64598
Продукт: Linux Kernel
Дата публикации: 06.08.2026
Критичность: HIGH
CVSS: 8.8 (3.1)
EPSS: 0,28%; процентиль 20,35%
CISA KEV: нет подтверждения в каталоге CISA KEV

Краткое описание​


Уязвимость CVE-2026-64598 затрагивает компонент Linux Kernel, связанный с обработкой ошибок в SMB-клиенте. Проблема возникает при использовании макроса ERR_PTR() с переменной типа u32, что приводит к некорректной работе и потенциальному сбою ядра. Уязвимость классифицирована как высокая по шкале CVSS (8.8) и затрагивает функцию smb2_aead_req_alloc() в модуле SMB-клиента.

Основные характеристики​


Уязвимость связана с некорректной обработкой кода ошибки в функции smb2_aead_req_alloc(), используемой при работе с SMB-протоколом. В результате неправильного применения макроса ERR_PTR() с переменной типа u32 происходит сбой при обращении к недопустимому указателю. Это может привести к крашу ядра при определённых условиях. Исправление вносится в модуль fs/smb/client/smb2ops.c. Изменение касается логики обработки возвращаемого значения функции cifs_get_num_sgs().

Какие продукты и версии затронуты​


Уязвимость затрагивает Linux Kernel версий, где используется SMB-клиент и применяется функция smb2_aead_req_alloc(). Конкретные версии, в которых проявляется проблема, не указаны в источниках. Исправление было включено в стабильное дерево ядра. Системы, использующие SMBv2 или SMBv3 для доступа к сетевым ресурсам, могут быть уязвимы. Уязвимость не распространяется на все версии ядра, а затрагивает конкретные изменения в SMB-клиенте.

Причина уязвимости​


Основная причина — неправильное использование макроса ERR_PTR() с переменной типа u32. Переменная *num_sgs имеет тип unsigned int (u32), и передача её в ERR_PTR() создаёт некорректный указатель. При дальнейшем обращении к этому указателю происходит сбой. В исправлении переменная *num_sgs заменяется на временную переменную int ret, которая корректно проверяется на отрицательное значение перед использованием.

Как работает атака​


Атака возможна при условии, что система использует SMB-протокол и вызывает функцию smb2_aead_req_alloc(). В случае ошибки в функции cifs_get_num_sgs(), возвращаемое значение передаётся в ERR_PTR() неправильно. Это приводит к созданию недопустимого указателя, который затем может быть передан в дальнейшие функции. Если система не обрабатывает ошибку должным образом, это может привести к крашу ядра. Атакующий должен иметь возможность инициировать вызов функции, связанной с SMB-запросами.

Условия успешной эксплуатации​


Для эксплуатации уязвимости необходима система, работающая с SMB-протоколом и использующая функции, связанные с smb2_aead_req_alloc(). Требуется, чтобы вызов функции cifs_get_num_sgs() завершался ошибкой. Уязвимость не является активной сама по себе, но может быть использована в составе более сложной атаки, если система не обрабатывает ошибки корректно. Необходимо, чтобы система была скомпилирована с поддержкой SMB-клиента.

Возможный сценарий атаки​


Сценарий атаки предполагает, что злоумышленник инициирует SMB-запрос, который приводит к вызову функции smb2_aead_req_alloc(). В процессе выполнения происходит ошибка в функции cifs_get_num_sgs(), и возвращаемое значение передаётся в ERR_PTR() неправильно. Это приводит к созданию некорректного указателя, который затем используется в дальнейшем коде. Если система не обрабатывает ошибку корректно, это может привести к крашу ядра. Такой сценарий может быть использован в DoS-атаках.

Есть ли публичный эксплойт​


В доступных источниках не указано наличие публичного эксплойта или PoC для уязвимости CVE-2026-64598. Информация о том, что уязвимость уже эксплуатируется в реальных атаках, также отсутствует. Системы, которые не используют SMB-протокол, не подвержены этой уязвимости. Отсутствие специфичных данных о эксплуатации не означает отсутствие потенциального риска, но требует дополнительного анализа.

Признаки эксплуатации​


Признаки компрометации в данной уязвимости не являются специфичными. В случае эксплуатации можно наблюдать сбои ядра или краши систем, связанные с SMB-запросами. Общие точки контроля включают мониторинг журналов ядра на наличие сообщений об ошибках SMB, а также анализ активности SMB-клиентов. Наличие необычных паттернов в логах сетевых соединений или ошибок в системных журналах может указывать на возможное использование уязвимости.

Как обнаружить атаку​


Обнаружение уязвимости возможно через анализ версий ядра и наличия изменений в коде SMB-клиента. Проверка на наличие исправления может быть выполнена с помощью команд, таких как uname -r, и сравнения с известными версиями, содержащими исправление. Также можно проверить наличие изменений в файле fs/smb/client/smb2ops.c. В случае отсутствия исправления, система может быть уязвимой. Рекомендуется также анализировать логи ядра на наличие ошибок SMB и необычных поведений при работе с сетевыми ресурсами.

Как проверить свою версию​


Для проверки версии ядра, в которой устранена уязвимость CVE-2026-64598, можно использовать следующие команды:

Bash:
uname -r

Bash:
uname -a

Bash:
cat /proc/version

Все указанные команды позволяют получить информацию о текущей версии ядра и сравнить её с версиями, содержащими исправление. Для получения точных данных о наличии исправления рекомендуется обратиться к официальным источникам или использовать систему управления пакетами для проверки установленных обновлений.

Исправление​


Исправление уязвимости CVE-2026-64598 включает изменение логики обработки ошибок в функции smb2_aead_req_alloc(). Вместо неправильного использования ERR_PTR() с переменной типа u32, теперь используется временная переменная int ret, которая корректно проверяется на отрицательное значение. Это позволяет избежать сбоев при обращении к недопустимому указателю. Рекомендуется обновить ядро до версии, в которой внесено исправление. Обновление должно быть выполнено с учётом всех рекомендаций по безопасности и тестированию.

Временные меры защиты​


Временные меры защиты от уязвимости CVE-2026-64598 могут включать ограничение доступа к SMB-ресурсам, отключение SMB-клиента, если он не используется. Также можно отключить SMB-протокол в системе или ограничить его использование через брандмауэр. Рекомендуется также отслеживать журналы ядра на предмет ошибок SMB и других аномалий. Эти меры не устраняют уязвимость напрямую, но могут снизить риск эксплуатации.

Как проверить устранение уязвимости​


После применения исправления рекомендуется проверить, что изменения внесены в файл fs/smb/client/smb2ops.c. Также можно выполнить команду uname -r и сравнить результат с версией, в которой исправление уже включено. Проверка логов ядра на наличие ошибок SMB также может подтвердить успешное применение исправления. Рекомендуется также провести тестирование функциональности SMB-клиента для подтверждения отсутствия сбоев.

Вывод​


Уязвимость CVE-2026-64598 в Linux Kernel представляет собой ошибку в обработке кода ошибки в SMB-клиенте. Она возникает при неправильном использовании макроса ERR_PTR() с переменной типа u32. Исправление включает изменение логики обработки возвращаемого значения функции cifs_get_num_sgs(). Уязвимость может привести к крашу ядра при определённых условиях. Рекомендуется обновить ядро до версии, в которой исправление уже включено. Временные меры защиты могут включать ограничение использования SMB-протокола.

Официальные источники​


  1. NVD — CVE-2026-64598
  2. FIRST EPSS — CVE-2026-64598
  3. smb/client: Fix error code in smb2_aead_req_alloc() - kernel/git/stable/linux.git - Linux kernel stable tree
  4. smb/client: Fix error code in smb2_aead_req_alloc() - kernel/git/stable/linux.git - Linux kernel stable tree
  5. smb/client: Fix error code in smb2_aead_req_alloc() - kernel/git/stable/linux.git - Linux kernel stable tree
  6. smb/client: Fix error code in smb2_aead_req_alloc() - kernel/git/stable/linux.git - Linux kernel stable tree
  7. smb/client: Fix error code in smb2_aead_req_alloc() - kernel/git/stable/linux.git - Linux kernel stable tree
  8. CVEs — The Linux Kernel documentation

История обновлений статьи​


  • 11.08.2026 — Опубликована первая версия материала.
 

Похожие темы

Назад
Верх Низ