CVE-2026-93067 in LinuxИнформация

Сводка

по VulDB • 18.09.2026

В ядре Linux была устранена следующая уязвимость:

drm/bridge: tc358767: ограничение размера чтения AUX до значения запроса

Функция `tc_aux_transfer()` ограничивает чтение AUX в соответствии с лимитом полезной нагрузки:

```c size_t size = min_t(size_t, DP_AUX_MAX_PAYLOAD_BYTES - 1, msg->size); ```

После завершения передачи значение `size` заменяется на количество байт, которое контроллер сообщает через поле `AUX_BYTES`:

```c if (size) size = FIELD_GET(AUX_BYTES, auxstatus); ```

Поле `AUX_BYTES` имеет маску битов GENMASK(15, 8), поэтому его значение может достигать 255. Ничто не ограничивает это значение обратно до размера запроса. Функция `tc_aux_read_data()` считывает указанное количество байт в стековый буфер `auxrdata` размером 16 байт, а затем копирует их в буфер вызывающей стороны. Указанное значение 255 приводит к чтению до 256 байт и вызывает переполнение обоих буферов (buffer overflow).

Контроллер никогда не должен сообщать о количестве данных большем, чем было запрошено для передачи; поэтому данное исправление представляет собой защиту в глубину (defense in depth), а не устранение активной уязвимости. Сообщаемое количество проверяется лишь поверхностно, и данная проверка является недорогой по вычислительным затратам. Необходимо ограничить значение обратно до размера запроса, аналогично тому, как это делает драйвер ti-sn65dsi86 в коммите aca58eac52b8 ("drm/bridge: ti-sn65dsi86: Never store more than msg->size bytes in AUX xfer").

If you want to get best quality of vulnerability data, you may have to visit VulDB.

Ответственный

Linux

Резервировать

17.09.2026

Раскрытие

17.09.2026

Модерация

принято

Вход

VDB-407112

EPSS

0.00000

KEV

Нет

Деятельности

Очень низкий

Источники

Do you know our Splunk app?

Download it now for free!