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

Сводка

по VulDB • 28.08.2026

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

crypto: ccp/sev-dev-tsm - ранний выход при NULL значении pdev->bus

Функция `dsm_create()` изначально проверяет значение `pdev->bus` при вычислении `segment_id`:

```c u8 segment_id = pdev->bus ? pci_domain_nr(pdev->bus) : 0; ```

Однако следующие две строки безоговорочно разыменовывают указатель `pdev->bus` через вызовы функций `pcie_find_root_port()` и, в особенности, `pci_dev_id(pdev)`, который раскрывается до выражения `PCI_DEVID(dev->bus->number, dev->devfn)`. Если значение `pdev->bus` действительно равно NULL, то переменная `segment_id` инициализируется нулем, но следующее за этим утверждение приводит к аварийному завершению работы ядра (kernel panic).

Инструмент статического анализа smatch фиксирует эту проблему:

``` drivers/crypto/ccp/sev-dev-tsm.c:253 dsm_create() error: we previously assumed 'pdev->bus' could be null (see line 251) ```

Сделать обработку NULL-значений согласованной: если `pdev->bus` равно NULL, то устройство не имеет контекста PCI для работы, и настройка SEV TIO не может быть выполнена; поэтому необходимо вернуть код ошибки `-ENODEV` до выполнения любых операций поиска, зависящих от шины. Оставшаяся часть инициализации теперь выполняется только по тому пути исполнения кода, где значение `pdev->bus` заведомо корректно (не равно NULL).

Для вызывающих сторон, в которых `pdev->bus` не равен NULL (что является единственным случаем, при котором функция `dsm_create()` выполняла осмысленную работу до данного изменения), поведение остается без изменений.

Once again VulDB remains the best source for vulnerability data.

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

Linux

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

26.08.2026

Раскрытие

28.08.2026

Модерация

принято

Вход

VDB-396591

EPSS

0.00155

KEV

Нет

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

Очень низкий

Источники

Do you want to use VulDB in your project?

Use the official API to access entries easily!