net: hns3: fix kernel crash when uninstalling driver
In the Linux kernel, the following vulnerability has been resolved: net: hns3: fix kernel crash when uninstalling driver When the driver is uninstalled and the VF is disabled concurrently, a kernel crash occurs. The reason is that the two actions call function pci_disable_sriov(). The num_VFs is checked to determine whether to release the corresponding resources. During the second calling, num_VFs is not 0 and the resource release function is called. However, the corresponding resource has been released during the first invoking. Therefore, the problem occurs: [15277.839633][T50670] Unable to handle kernel NULL pointer dereference at virtual address 0000000000000020 ... [15278.131557][T50670] Call trace: [15278.134686][T50670] klist_put+0x28/0x12c [15278.138682][T50670] klist_del+0x14/0x20 [15278.142592][T50670] device_del+0xbc/0x3c0 [15278.146676][T50670] pci_remove_bus_device+0x84/0x120 [15278.151714][T50670] pci_stop_and_remove_bus_device+0x6c/0x80 [15278.157447][T50670] pci_iov_remove_virtfn+0xb4/0x12c [15278.162485][T50670] sriov_disable+0x50/0x11c [15278.166829][T50670] pci_disable_sriov+0x24/0x30 [15278.171433][T50670] hnae3_unregister_ae_algo_prepare+0x60/0x90 [hnae3] [15278.178039][T50670] hclge_exit+0x28/0xd0 [hclge] [15278.182730][T50670] __se_sys_delete_module.isra.0+0x164/0x230 [15278.188550][T50670] __arm64_sys_delete_module+0x1c/0x30 [15278.193848][T50670] invoke_syscall+0x50/0x11c [15278.198278][T50670] el0_svc_common.constprop.0+0x158/0x164 [15278.203837][T50670] do_el0_svc+0x34/0xcc [15278.207834][T50670] el0_svc+0x20/0x30 For details, see the following figure. rmmod hclge disable VFs ---------------------------------------------------- hclge_exit() sriov_numvfs_store() ... device_lock() pci_disable_sriov() hns3_pci_sriov_configure() pci_disable_sriov() sriov_disable() sriov_disable() if !num_VFs : if !num_VFs : return; return; sriov_del_vfs() sriov_del_vfs() ... ... klist_put() klist_put() ... ... num_VFs = 0; num_VFs = 0; device_unlock(); In this patch, when driver is removing, we get the device_lock() to protect num_VFs, just like sriov_numvfs_store().
- Опубликовано
- 18 нояб. 2024 г.
- Обновлено
- 17 июн. 2026 г.
- EPSS
- 0,3 % · 15-й процентиль
- CWE
- CWE-476
Войдите, чтобы следить · Вы получите уведомление, если запись попадёт в KEV, получит эксплойт или обновится.
Инструменты для отчёта
Оценка срочности
22
Наблюдать
Пока низкий приоритет.
- CVSS
- 22 / 40 · 5.5 / 10
- CISA KEV
- 0 / 30 · Нет в списке
- EPSS
- 0 / 30 · 0,3 %
Решение CISA SSVC
- Эксплуатация
- нет
- Автоматизируемо
- нет
- Техническое влияние
- частичное
Vulnrichment: входные данные дерева решений CISA.
Затронутые системы
| Вендор | Продукт | CPE |
|---|---|---|
| linux | linux kernel | cpe:2.3:o:linux:linux_kernel |
Затронутые версии
Диапазоны версий NVD (для продуктов из каталога). Добавьте продукт в стек с версией, и сопоставление будет по ним.
- linux linux kernel4.19.214 и новее · до 4.19.324
- linux linux kernel5.4.156 и новее · до 5.4.286
- linux linux kernel5.10.76 и новее · до 5.10.230
- linux linux kernel5.14.15 и новее · до 5.15
- linux linux kernel5.15 и новее · до 5.15.172
- linux linux kernel5.16 и новее · до 6.1.117
- linux linux kernel6.2 и новее · до 6.6.61
- linux linux kernel6.7 и новее · до 6.11.8
- linux linux kernel6.12
Версии, заявленные вендором
Диапазоны затронутых версий, заявленные назначающей организацией (Linux). Не зависят от анализа CPE в NVD и обычно опережают его.
Linux Linux
- 9b5a29f0acefa3eb1dbe2fa302b393eeff64d933, 5.15затронута
- b06ad258e01389ca3ff13bc180f3fcd6a608f1cd и новее · до a0df055775f30850c0da8f7dab40d67c0fd63908затронута · git
- c4b64011e458aa2b246cd4e42012cfd83d2d9a5c и новее · до 7ae4e56de7dbd0999578246a536cf52a63f4056dзатронута · git
- d36b15e3e7b5937cb1f6ac590a85facc3a320642 и новее · до 590a4b2d4e0b73586e88bce9b8135b593355ec09затронута · git
- 0dd8a25f355b4df2d41c08df1716340854c7d4c5 и новее · до e36482b222e00cc7aeeea772fc0cf2943590bc4dзатронута · git
- 0dd8a25f355b4df2d41c08df1716340854c7d4c5 и новее · до 76b155e14d9b182ce83d32ada2d0d7219ea8c8ddзатронута · git
- 0dd8a25f355b4df2d41c08df1716340854c7d4c5 и новее · до 719edd9f3372ce7fb3b157647c6658672946874bзатронута · git
- 0dd8a25f355b4df2d41c08df1716340854c7d4c5 и новее · до b5c94e4d947d15d521e935ff10c5a22a7883dea5затронута · git
- 0dd8a25f355b4df2d41c08df1716340854c7d4c5 и новее · до df3dff8ab6d79edc942464999d06fbaedf8cdd18затронута · git
- 4.19.214 и новее · до 4.19.324затронута · semver
Затронутые пакеты
Данные OSV и GitHub Advisory: экосистема, пакет и диапазон. Сопоставление SBOM использует эту таблицу.
| Экосистема | Пакет | Затронутый диапазон | Исправление |
|---|---|---|---|
| Debian:12 | linux | до 6.1.119-1 | 6.1.119-1 |
| Debian:13 | linux | до 6.11.9-1 | 6.11.9-1 |
Тот же продукт
linux: все записиДругие записи с наивысшей оценкой для того же основного продукта.
- CVE-2022-0847A flaw was found in the way the "flags" member of the new pipe buffer structure was lacking proper initialization in copy_page_to_iter_pipe KEV89Срочно
- CVE-2021-22555Heap Out-Of-Bounds Write in Netfilter IP6T_SO_SET_REPLACEKEV85Срочно
- CVE-2016-5195Race condition in mm/gup.c in the Linux kernel 2.x through 4.x before 4.8.3 allows local users to gain privileges by leveraging incorrect haKEV83Срочно
- CVE-2019-13272In the Linux kernel before 5.1.17, ptrace_link in kernel/ptrace.c mishandles the recording of the credentials of a process that wants to creKEV77На этой неделе
- CVE-2013-6282The (1) get_user and (2) put_user API functions in the Linux kernel before 3.5.5 on the v6k and v7 ARM platforms do not validate certain addKEV77На этой неделе
- CVE-2013-2094The perf_swevent_init function in kernel/events/core.c in the Linux kernel before 3.8.9 uses an incorrect integer data type, which allows loKEV77На этой неделе
Исправление
На какую версию обновиться
Версии с исправлением по данным вендора, реестров пакетов и Microsoft. Перед обновлением сверьтесь с бюллетенем вендора.
| Продукт / пакет | Исправленная версия | Источник |
|---|---|---|
| Linux Linux | 4.19.324 | Вендор (CNA) |
| Linux Linux | 5.10.230 | Вендор (CNA) |
| Linux Linux | 5.15 | Вендор (CNA) |
| Linux Linux | 5.4.286 | Вендор (CNA) |
| Linux Linux | 590a4b2d4e0b73586e88bce9b8135b593355ec09 | Вендор (CNA) |
| Linux Linux | 719edd9f3372ce7fb3b157647c6658672946874b | Вендор (CNA) |
| Linux Linux | 76b155e14d9b182ce83d32ada2d0d7219ea8c8dd | Вендор (CNA) |
| Linux Linux | 7ae4e56de7dbd0999578246a536cf52a63f4056d | Вендор (CNA) |
| Linux Linux | a0df055775f30850c0da8f7dab40d67c0fd63908 | Вендор (CNA) |
| Linux Linux | b5c94e4d947d15d521e935ff10c5a22a7883dea5 | Вендор (CNA) |
| Linux Linux | df3dff8ab6d79edc942464999d06fbaedf8cdd18 | Вендор (CNA) |
| Linux Linux | e36482b222e00cc7aeeea772fc0cf2943590bc4d | Вендор (CNA) |
| debian:linux | 6.1.119-1 · Debian:12 | Реестр пакетов (OSV) |
Статус эксплойта
Публичный эксплойт неизвестен
Публичный эксплойт пока не обнаружен. Это не значит, что вы в безопасности, лишь что порог чуть выше.
Контекст для исследователя
Для пентестеров и исследователей: профиль атаки, расхождение оценок, хронология, коммиты исправлений, авторы, кандидаты в варианты и цепочки, охват bug bounty. Всё выводится из имеющихся данных; без кода эксплойтов.
Хронология
От публикации до сегодня: proof of concept, модуль Metasploit, CISA KEV и запись об исправлении. Даты — как сообщают источники.
Кроме публикации датированных событий нет.
Ежедневная оценка FIRST EPSS; записываются только изменения от 0,01 (ступенчатый график).
Ссылки на патчи и коммиты
Коммиты, PR и diff среди источников. Отправная точка для patch-diff и поиска вариантов; это исправления, не эксплойты.
Среди источников нет ссылок на коммит или PR.
Авторы
Все исследователиНашедшие, сообщившие и аналитики, названные в записи CNA. Нажмите имя, чтобы увидеть другие записи исследователя.
В записи CNA нет авторов.
Кандидаты в варианты
Тот же продукт, тот же класс уязвимости, в пределах 18 месяцев. Если патч не закрыл первопричину, родственная ошибка здесь.
Ночной расчёт связей ничего не нашёл.
Кандидаты в цепочки
Обход аутентификации и уязвимость, требующая привилегий, в одном продукте и близко по времени: вместе они могут дать путь без аутентификации.
—
Охват bug bounty
Известной публичной программы нет.
Источник: bounty-targets-data (публичные списки HackerOne, Bugcrowd, Intigriti, YesWeHack).
Технические детали
Условия атаки
- Может быть вызвана пользователем с локальным доступом к системе.
- Достаточно учётной записи с низкими привилегиями.
- Действия пользователя не требуются.
- Особые условия не требуются; воспроизводится стабильно.
В случае успеха
- Конфиденциальность
- нет
- Целостность
- нет
- Доступность
- высокое · работа сервиса может быть нарушена
- Вектор атаки
- Локальный
- Сложность атаки
- Низкая
- Требуемые привилегии
- Низкие
- Взаимодействие с пользователем
- Не требуется
- Область действия
- Не изменяется
- Влияние на конфиденциальность
- Нет
- Влияние на целостность
- Нет
- Влияние на доступность
- Высокое
Класс уязвимости (CWE)
CWE-476 · NULL Pointer DereferenceВектор CVSS
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
nvd-primary
Контекст атаки
Шаблоны атак MITRE CAPEC и техники ATT&CK для этого класса уязвимости (CWE). Отправная точка для правил обнаружения и threat hunting.
У MITRE нет сопоставления CAPEC/ATT&CK для этого CWE.
Анализ Noroxi
Анализа Noroxi для этой записи пока нет
Мы не пишем анализ вручную для всех 385 000+ уязвимостей; это было бы нечестно. Для значимых уязвимостей с реальным влиянием наша команда описывает механизм, обнаружение и устранение.
Мы используем этот продукт, нужна помощьЖурнал изменений
- Исправление✗ → ✓
Для отслеживаемых записей эти изменения приходят и как уведомления. →
Источники
- git.kernel.org/stable/c/590a4b2d4e0b73586e88bce9b8135b593355ec09
- git.kernel.org/stable/c/719edd9f3372ce7fb3b157647c6658672946874b
- git.kernel.org/stable/c/76b155e14d9b182ce83d32ada2d0d7219ea8c8dd
- git.kernel.org/stable/c/7ae4e56de7dbd0999578246a536cf52a63f4056d
- git.kernel.org/stable/c/a0df055775f30850c0da8f7dab40d67c0fd63908
- git.kernel.org/stable/c/b5c94e4d947d15d521e935ff10c5a22a7883dea5
- git.kernel.org/stable/c/df3dff8ab6d79edc942464999d06fbaedf8cdd18
- git.kernel.org/stable/c/e36482b222e00cc7aeeea772fc0cf2943590bc4d
- lists.debian.org/debian-lts-announce/2025/01/msg00001.html
- lists.debian.org/debian-lts-announce/2025/03/msg00002.html
Рекомендации вендоров и официальные записи. Ссылки на эксплойты/PoC намеренно исключены.