CVE-2026-80750 в Linux Kernel: use-after-free в драйвере MediaTek pmdomain

CVE: CVE-2026-80750
Продукт: Linux Kernel
Дата публикации: 03.09.2026
Критичность: HIGH
CVSS: 8.4 (3.1)
EPSS: 0,18%; процентиль 7,68%
CISA KEV: нет подтверждения в каталоге CISA KEV

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


В драйвере pmdomain для SoC MediaTek допущена ошибка управления ссылками на узлы device-tree. При сбое инициализации функция scpsys_get_bus_protection_legacy() освобождает узел преждевременно, после чего пытается использовать его для формирования сообщения об ошибке.

Это приводит к обращению к освобожденной памяти (use-after-free). Исправление опубликовано в upstream и stable-ветках ядра.

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


Уязвимость относится к классу use-after-free и затрагивает драйвер управления доменами питания для процессоров MediaTek. Сбой происходит в момент инициализации, когда драйвер некорректно управляет жизненным циклом узлов device-tree.

  • Идентификатор: CVE-2026-80750.
  • Критичность: HIGH (CVSS 3.1: 8.4). Вектор: CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H.
  • Тип ошибки: Use-After-Free в функции scpsys_get_bus_protection_legacy().
  • EPSS: 0,18% (процентиль 7,68%). Показатель отражает низкую вероятность эксплуатации в ближайший год.
  • Статус: Исправление внесено в upstream и stable-ветки. Публичные эксплойты не зафиксированы.

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


Уязвимость затрагивает ядра Linux, в которых присутствует драйвер drivers/pmdomain/mediatek/mtk-pm-domains.c с ошибочной логикой освобождения узлов device-tree. Конкретные номера версий ядра, в которых баг был введен или исправлен, в предоставленных источниках не детализированы.

  • Компонент: Драйвер pmdomain для SoC MediaTek.
  • Файл: drivers/pmdomain/mediatek/mtk-pm-domains.c.
  • Функция: scpsys_get_bus_protection_legacy().
  • Исправляющие коммиты: 3e013bc8b941bd52c8e3a99798d0ae8792cb71ca (upstream), 10bf2d7261d7f724ed43a09eea4c90c19c0230a0 и 970b9c83a07c405fdd32bcce7cc4c9e670e58875 (stable).

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


Причина заключается в нарушении порядка вызовов функций управления счетчиками ссылок на узлы device-tree. В двух путях обработки ошибок функция of_node_put() вызывается до проверки результата поиска regmap.

Если of_node_put() уменьшает счетчик ссылок до нуля, объект освобождается. Последующий вызов dev_err_probe() с форматом %pOF пытается прочитать данные из этого объекта, что приводит к обращению к освобожденной памяти. Исправление переносит вызов of_node_put() на момент после формирования сообщения об ошибке.

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


Атака эксплуатирует сценарий инициализации драйвера, когда поиск регистровых карт (regmaps) для защиты шины завершается ошибкой. Драйвер освобождает узел device-tree, но затем пытается использовать его для формирования сообщения об ошибке.

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

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


Для успешной эксплуатации уязвимости атакующему необходимо:

  • Локальный доступ к системе с ядром, содержащим уязвимый код.
  • Возможность инициировать сбой инициализации драйвера pmdomain для MediaTek (например, через модификацию device-tree или загрузку модулей).
  • Контроль над содержимым освобожденной памяти для преобразования UAF в повышение привилегий или RCE.

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


Атакующий с локальным доступом модифицирует параметры инициализации драйвера или загружает модуль, который вызывает сбой в функции scpsys_get_bus_protection_legacy(). Драйвер освобождает узел device-tree, но затем пытается использовать его для вывода ошибки.

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

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


На момент публикации CVE-2026-80750 публичные эксплойты или подтвержденные случаи эксплуатации в реальных атаках не зафиксированы. Сведения о наличии PoC или использовании уязвимости в wild отсутствуют в предоставленных источниках.

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


Специфичные индикаторы компрометации (IOC) для этой уязвимости не опубликованы. Общие признаки атаки на ядро включают:

  • Аномальные сообщения об ошибках в dmesg или journalctl при инициализации драйверов.
  • Нестабильность системы (panics, segfaults) в контексте драйвера pmdomain.
  • Неожиданные изменения в конфигурации device-tree или загрузке модулей.

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


Для обнаружения потенциальной эксплуатации или сбоев, связанных с этой уязвимостью, рекомендуется:

  • Мониторинг журналов ядра (dmesg, journalctl) на наличие сообщений об ошибках в mtk-pm-domains.c.
  • Аудит загрузок модулей и изменений в device-tree на системах с процессорами MediaTek.
  • Использование инструментов мониторинга целостности ядра (например, auditd) для отслеживания подозрительной активности.

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


Для проверки текущей версии ядра и наличия исправлений используйте следующие команды:

Bash:
uname -r
uname -a
cat /proc/version

Сравните полученную версию с релизами, содержащими коммиты 3e013bc8b941bd52c8e3a99798d0ae8792cb71ca, 10bf2d7261d7f724ed43a09eea4c90c19c0230a0 и 970b9c83a07c405fdd32bcce7cc4c9e670e58875. Если вы используете дистрибутив, проверьте наличие обновлений через пакетный менеджер.

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


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

  • Обновите ядро до последней стабильной версии, поддерживаемой вашим дистрибутивом.
  • Проверьте наличие патчей в репозиториях вашего дистрибутива.
  • Перезагрузите систему после обновления для применения нового ядра.

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


Пока обновление не установлено, можно рассмотреть следующие временные меры:

  • Ограничьте локальный доступ к системам с процессорами MediaTek, если это возможно.
  • Отключите драйвер pmdomain для MediaTek, если он не критичен для работы системы (требует осторожности и тестирования).
  • Используйте механизмы изоляции (контейнеры, виртуализация) для снижения риска эксплуатации.

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


После обновления ядра убедитесь, что исправления применены:

Bash:
uname -r

Проверьте, что версия ядра включает коммиты 3e013bc8b941bd52c8e3a99798d0ae8792cb71ca, 10bf2d7261d7f724ed43a09eea4c90c19c0230a0 и 970b9c83a07c405fdd32bcce7cc4c9e670e58875. Также можно проверить наличие патчей в исходном коде ядра, если вы компилируете его самостоятельно.

Вывод​


CVE-2026-80750 представляет собой серьезную уязвимость в драйвере ядра Linux для процессоров MediaTek. Несмотря на отсутствие подтвержденных случаев эксплуатации, риск use-after-free в ядре требует оперативного обновления. Администраторы систем с соответствующим оборудованием должны проверить актуальность ядра и установить доступные обновления.

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


  1. NVD — CVE-2026-80750
  2. FIRST EPSS — CVE-2026-80750
  3. pmdomain: mediatek: fix remaining %pOF after of_node_put() - kernel/git/stable/linux.git - Linux kernel stable tree
  4. pmdomain: mediatek: fix remaining %pOF after of_node_put() - kernel/git/stable/linux.git - Linux kernel stable tree
  5. pmdomain: mediatek: fix remaining %pOF after of_node_put() - kernel/git/stable/linux.git - Linux kernel stable tree
  6. CVEs — The Linux Kernel documentation

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


  • 05.09.2026 — Опубликована первая версия материала.
 
Назад
Верх Низ