Ad

CVE-2026-72095

HIGH CVSS 3.1: 7,8 EPSS 0.16%
Обновлено 17 августа 2026
Linux
Параметр Значение
CVSS 7,8 (HIGH)
Поставщик Linux
Публичный эксплойт Нет

В ядре Linux устранена следующая уязвимость: dma-fence: сделать dma_fence_dedup_array() устойчивым к вводу с нулевым значением. dma_fence_dedup_array() возвращает 1 при вызове с num_fences == 0: тело цикла for никогда не выполняется, j остается равным 0, а последний `return ++j` возвращает 1. Это противоречит как документации ядра ("Return: Количество уникальных заборов, оставшихся в массиве") и естественный ожидание, что 0 входных данных дает 0 выходных данных. Вызывающий __dma_fence_unwrap_merge() завершает работу через `if (count == 0 || count == 1)` быстрый путь и сохранение.

Но amdgpu_userq_wait_*() может достичь вызова дедупликации с нулевым локальным значением. подсчитайте и разыменуйте неинициализированный слот ограждения в массиве. Сделайте так, чтобы контракт соответствовал документации, вернув 0 раньше. Это также пропускает ненужный вызов sort() для пустого массива.

Показать оригинальное описание (EN)

In the Linux kernel, the following vulnerability has been resolved: dma-fence: Make dma_fence_dedup_array() robust against 0-count input dma_fence_dedup_array() returns 1 when called with num_fences == 0: the for-loop body never executes, j stays at 0, and the final `return ++j` yields 1. This contradicts both the kernel-doc ("Return: Number of unique fences remaining in the array") and the natural expectation that 0 input gives 0 output. The caller __dma_fence_unwrap_merge() bails out via the `if (count == 0 || count == 1)` fast path and so is save. But amdgpu_userq_wait_*() could reach the dedup call with a zero local count and dereference an uninitialized fence slot in the array. Make the contract match the documentation by returning 0 early. This also skips an unnecessary sort() call on an empty array.

Характеристики атаки

Способ атаки
Локальный
Нужен локальный доступ
Сложность
Низкая
Легко эксплуатировать
Нужны права
Низкие
Нужны базовые права
Участие пользователя
Не требуется
Не нужно действие пользователя

Последствия

Конфиденциальность
Высокое
Полная утечка данных
Целостность
Высокое
Полная модификация данных
Доступность
Высокое
Полный отказ в обслуживании

Строка CVSS v3.1