CVE: CVE-2026-80749
Продукт: Linux Kernel
Дата публикации: 03.09.2026
Критичность: HIGH
CVSS: 7.1 (3.1)
EPSS: 0,16%; процентиль 5,34%
CISA KEV: нет подтверждения в каталоге CISA KEV
Краткое описание
В подсистеме DRM ядра Linux обнаружена ошибка чтения за границами буфера при обработке аудио-информеймов HDMI. Функция
memcpy обращается к памяти за пределами выделенного блока из-за неверного выбора размера данных.Дефект затрагивает ядра начиная с версии 6.11 и устранен в стабильных ветках. Статья описывает механику дефекта, условия срабатывания и способы проверки актуальности системы.
Основные характеристики
Уязвимость представляет собой чтение памяти за границами выделенного буфера в коде обработки HDMI-аудио. Дефект не позволяет изменить данные, но может привести к сбою ядра при обращении к невалидной памяти.
- Тип ошибки: Out-of-bounds read (OOB-чтение) в функции
drm_atomic_helper_connector_hdmi_update_audio_infoframe.
- CVSS 3.1: 7.1 (HIGH). Вектор:
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:H.
- Условия атаки: Локальный доступ, низкие привилегии, отсутствие необходимости взаимодействия пользователя.
- Эксплуатация: Публичные данные о реальной эксплуатации отсутствуют.
- EPSS: 0,16% (процентиль 5,34%).
Какие продукты и версии затронуты
Уязвимость затрагивает ядра Linux, в которых реализована функция генерации HDMI-информеймов для аудио. Согласно метаданным исправления, дефект присутствует в версиях начиная с 6.11.
- Компонент:
drivers/gpu/drm/display/drm_hdmi_state_helper.c.
- Функция:
drm_atomic_helper_connector_hdmi_update_audio_infoframe.
- Версии: Linux Kernel v6.11 и выше (до применения патча).
Точный список затронутых дистрибутивов и конкретных сборок необходимо уточнять в базах данных соответствующих вендоров, так как ядро может быть модифицировано.
Причина уязвимости
Причина дефекта кроется в неправильном определении размера данных при копировании аудио-информейма в структуру коннектора.
В исходном коде функция
memcpy использовала размер целевого буфера (sizeof(infoframe->data)), который является универсальным и рассчитан на различные типы данных. Однако источник данных (frame) представляет собой специфический блок размером 28 байт.В результате функция пыталась скопировать 60 байт из 28-байтового выделенного блока, что привело к чтению памяти за его пределами. Исправление заменяет размер источника на
sizeof(*frame) и добавляет проверку BUILD_BUG_ON для гарантии, что источник не превышает размер назначения.Как работает атака
Атака реализуется через локальный вызов функций подсистемы DRM при настройке аудиопотока для HDMI-коннектора.
Злоумышленник с локальными правами инициирует обновление аудио-информейма. В процессе выполнения функция
drm_atomic_helper_connector_hdmi_update_audio_infoframe пытается прочитать данные за границами выделенного буфера. Поскольку это чтение, а не запись, целостность памяти не нарушается, но процесс может завершиться аварийно, если чтение выйдет за пределы доступной страницы.В реальных условиях вероятность успешного срабатывания невелика, однако в системах с включенной отладкой (KASAN) или при специфической раскладке памяти дефект может проявиться как сбой ядра (kernel panic).
Условия успешной эксплуатации
Для успешного срабатывания ошибки необходимо выполнение ряда условий, которые ограничивают практическую значимость уязвимости.
- Локальный доступ: Злоумышленник должен иметь доступ к системе (консоль или удаленный вход).
- Низкие привилегии: Достаточно прав обычного пользователя для взаимодействия с подсистемой DRM.
- Поддержка HDMI: Система должна иметь активный HDMI-коннектор и соответствующий драйвер.
- Обработка аудио: Должен происходить процесс обновления аудио-информейма.
Возможный сценарий атаки
Сценарий атаки предполагает локальное взаимодействие с графической подсистемой.
Пользователь или процесс с правами запускает приложение, использующее DRM для вывода аудио на HDMI. При попытке синхронизации аудиопотока вызывается функция обновления информейма. В этот момент происходит чтение за границами буфера.
Если адрес, к которому обращается процесс, не отображен в памяти, возникает сбой (page fault), что может привести к падению ядра или завершению процесса. В большинстве случаев система продолжит работу, но в критических сценариях это может привести к отказу в обслуживании (DoS) для конкретного сеанса или всей системы.
Есть ли публичный эксплойт
На текущий момент публичные данные о подтвержденной эксплуатации CVE-2026-80749 в реальных атаках отсутствуют. Ошибка была обнаружена разработчиком при запуске тестов KUnit под управлением KASAN, что указывает на ее техническую значимость, но не подтверждает массовое использование.
Отсутствие сведений об эксплуатации не означает, что эксплойт невозможен. Однако из-за локального характера атаки и сложности достижения условий срабатывания (OOB-чтение) вероятность активного использования в целевых атаках оценивается как низкая.
Признаки эксплуатации
Специфические индикаторы компрометации (IOC) для этой уязвимости не определены, так как она не приводит к прямому выполнению кода или скрытому доступу.
- Журналы ядра: Записи о сбое страницы (page fault) или аварийном завершении процессов, связанных с DRM.
- Системные логи: Сообщения об ошибках в подсистеме
drmилиhdmi.
- Мониторинг: Внезапные сбои графической подсистемы при работе с аудио.
Эти признаки неспецифичны и могут быть вызваны другими проблемами в драйверах или аппаратными сбоями.
Как обнаружить атаку
Обнаружение атаки или срабатывания уязвимости основывается на мониторинге стабильности подсистемы DRM.
- Анализ журналов: Проверка
dmesgи системных логов на наличие сообщений об ошибках памяти в контексте драйверов GPU.
- Мониторинг процессов: Отслеживание аварийных завершений процессов, работающих с графическим выводом.
- Проверка конфигурации: Убедиться, что ядро обновлено до версии, содержащей исправление.
Поскольку уязвимость не оставляет характерных следов в файловой системе, детекция сводится к наблюдению за аномальным поведением графической подсистемы.
Как проверить свою версию
Для проверки версии ядра и наличия исправления используйте следующие команды. Они позволяют определить текущую версию и сопоставить ее с информацией о патчах.
Bash:
uname -r
uname -a
cat /proc/version
Полученную версию необходимо сверить с официальными списками обновлений вашего дистрибутива Linux. Если версия ядра ниже той, в которой был применен патч, система уязвима.
Исправление
Единственным надежным способом устранения уязвимости является обновление ядра Linux до версии, содержащей исправление.
- Обновление ядра: Используйте штатные средства обновления вашего дистрибутива (например,
apt,dnf,zypper).
- Проверка патчей: Убедитесь, что в ядре присутствует коммит
9ecf8ba763d0ffe0673538eb4bf7806f20455d19или его эквивалент в стабильных ветках.
- Перезагрузка: После обновления ядра требуется перезагрузка системы для применения изменений.
Не рекомендуется применять отдельные патчи вручную, если дистрибутив предоставляет готовые обновления.
Временные меры защиты
Специфических временных мер для обхода этой уязвимости не существует, так как она связана с внутренней логикой драйвера.
- Ограничение доступа: Ограничьте локальный доступ к системе для недоверенных пользователей.
- Отключение HDMI: Если возможно, отключите использование HDMI-коннекторов для вывода аудио, чтобы избежать вызова уязвимой функции.
- Мониторинг: Усиленный мониторинг стабильности графической подсистемы.
Эти меры снижают вероятность срабатывания, но не устраняют саму ошибку.
Как проверить устранение уязвимости
После обновления ядра необходимо убедиться, что исправление действительно применено.
- Проверка версии: Убедитесь, что версия ядра соответствует требованиям безопасности вашего дистрибутива.
- Проверка коммитов: Если возможно, проверьте наличие соответствующих коммитов в истории ядра (через
gitили инструменты дистрибутива).
- Функциональное тестирование: Проведите тестирование работы аудиовывода через HDMI для подтверждения корректности работы подсистемы.
Если система продолжает работать стабильно и версия ядра актуальна, уязвимость считается устраненной.
Вывод
CVE-2026-80749 представляет собой ошибку чтения за границами буфера в подсистеме DRM Linux ядра. Несмотря на высокий балл CVSS, практическая опасность уязвимости ограничена локальным характером атаки и сложностью условий срабатывания.
Тем не менее, обновление ядра до актуальной версии является обязательным шагом для обеспечения безопасности системы. Администраторам рекомендуется отслеживать обновления ядра и применять их в рамках регулярного цикла обслуживания.
Официальные источники
- NVD — CVE-2026-80749
- FIRST EPSS — CVE-2026-80749
- drm/connector/hdmi: Fix out of bounds memory read - kernel/git/stable/linux.git - Linux kernel stable tree
- drm/connector/hdmi: Fix out of bounds memory read - kernel/git/stable/linux.git - Linux kernel stable tree
- drm/connector/hdmi: Fix out of bounds memory read - kernel/git/stable/linux.git - Linux kernel stable tree
- drm/connector/hdmi: Fix out of bounds memory read - kernel/git/stable/linux.git - Linux kernel stable tree
- CVEs — The Linux Kernel documentation
История обновлений статьи
- 08.09.2026 — Опубликована первая версия материала.
