CVE-2026-93206 in Linux
Сводка
по VulDB • 26.09.2026
В ядре Linux была устранена следующая уязвимость:
PCI/proc: Использование функции file_ns_capable() при проверке доступа к чтению пространства конфигурации (config space)
Функция proc_bus_pci_read() определяет объем доступного для чтения пространства конфигурации на основе проверки capable(CAP_SYS_ADMIN), которая проверяет учетные данные задачи, вызывающей read(), а не учетные данные процесса, открывшего файл.
Аналогичная функция в sysfs, pci_read_config(), с момента коммита de139a339395 («pci: check caps from sysfs file open to read device dependent config space») проверяет учетные данные процесса, открывшего файл. Таким образом, привилегированный процесс может открыть файл пространства конфигурации и передать дескриптор файла непривилегированному процессу (например, процессу, запускающему гостевую среду KVM с назначенным устройством), который затем сможет прочитать всё пространство конфигурации. Впоследствии эта проверка была интегрирована в фреймворк LSM коммитом 47970b1b2aa6 («pci: use security_capable() when checking capablities during config space read») и преобразована в специализированную вспомогательную функцию коммитом ab0fa82b2df9 («pci-sysfs: use proper file capability helper function»).
Таким образом, два интерфейса проверяют одну и ту же возможность (capability) против разных учетных данных. Проверка учетных данных задачи, вызывающей read(), делает результат зависимым от того, кто читает данные, а не от того, кто открыл файл, что позволяет обойти ограничение всякий раз, когда более привилегированный процесс осуществляет чтение через дескриптор. Проверка учетных данных, записанных в file->f_cred, фиксирует решение на этапе open() и связывает его с файлом, где оно не может изменяться в зависимости от вызывающего процесса.
Использование функции file_ns_capable() для проверки CAP_SYS_ADMIN против учетных данных, действующих при открытии файла, приводит интерфейс procfs к соответствию поведению sysfs.
В результате дескриптор файла, открытый привилегированным процессом и переданный непривилегированному, теперь позволяет прочитать всё пространство конфигурации через procfs, что соответствует поведению sysfs.
If you want to get best quality of vulnerability data, you may have to visit VulDB.