vfio: prevent infinite loop in vfio_mig_get_next_state() on blocked arc
In the Linux kernel, the following vulnerability has been resolved: vfio: prevent infinite loop in vfio_mig_get_next_state() on blocked arc vfio_mig_get_next_state() walks vfio_from_fsm_table[] one step at a time, looping to skip optional states the device does not support until *next_fsm is supported. A blocked transition is encoded as VFIO_DEVICE_STATE_ERROR, which the trailing return reports as -EINVAL. The skip loop does not account for the ERROR sentinel. state_flags_table[ERROR] is ~0U and vfio_from_fsm_table[ERROR][*] is ERROR, so once *next_fsm becomes ERROR the loop condition stays true and *next_fsm never changes. The blocked arcs STOP_COPY -> PRE_COPY and STOP_COPY -> PRE_COPY_P2P map to ERROR yet pass the support check on a precopy-capable device, causing the loop to spin forever while holding the driver state mutex. This can result in a soft lockup, and a panic with softlockup_panic set. Terminate the skip loop on the ERROR sentinel so a blocked transition falls through to the existing return and reports -EINVAL.
- Опубликовано
- 25 июл. 2026 г.
- Обновлено
- 17 авг. 2026 г.
- EPSS
- 0,2 % · 10-й процентиль
- CWE
- —
Войдите, чтобы следить · Вы получите уведомление, если запись попадёт в KEV, получит эксплойт или обновится.
Инструменты для отчёта
Оценка срочности
0
Наблюдать
Пока низкий приоритет.
- CVSS
- 0 / 40 · —
- CISA KEV
- 0 / 30 · Нет в списке
- EPSS
- 0 / 30 · 0,2 %
Затронутые системы
—
Версии, заявленные вендором
Диапазоны затронутых версий, заявленные назначающей организацией (Linux). Не зависят от анализа CPE в NVD и обычно опережают его.
Linux Linux
- 6.2затронута
- 4db52602a6074e9cc523500b8304600ff63e7b85 и новее · до 8e872c07e40d51a66dee7b280a23a460a2e1e3faзатронута · git
- 4db52602a6074e9cc523500b8304600ff63e7b85 и новее · до ed7d5599e6c398da74845767cd1e6a8370a160fcзатронута · git
- 4db52602a6074e9cc523500b8304600ff63e7b85 и новее · до 7f2d6b31089e48db4653df832c9a6afdde9a1c29затронута · git
- 4db52602a6074e9cc523500b8304600ff63e7b85 и новее · до a3a8afa2f6e7f0dc266d08f02be3f3054241ba47затронута · git
- 4db52602a6074e9cc523500b8304600ff63e7b85 и новее · до a26b499b757cfc8bbff1088bb1b844639e250893затронута · git
- до 6.2не затронута · semver
- 6.6.145 и новее · до 6.6.* включительноне затронута · semver
- 6.12.96 и новее · до 6.12.* включительноне затронута · semver
- 6.18.39 и новее · до 6.18.* включительноне затронута · semver
Затронутые пакеты
Данные OSV и GitHub Advisory: экосистема, пакет и диапазон. Сопоставление SBOM использует эту таблицу.
| Экосистема | Пакет | Затронутый диапазон | Исправление |
|---|---|---|---|
| Debian:12 | linux-6.12 | до 6.12.100-1~deb12u1 | 6.12.100-1~deb12u1 |
| Debian:13 | linux | до 6.12.96-1 | 6.12.96-1 |
| Debian:14 | linux | до 7.1.4-1 | 7.1.4-1 |
Тот же продукт
linux: все записиДругие записи с наивысшей оценкой для того же основного продукта.
- CVE-2026-74705udp: fix potential use-after-free in tunnel segmentation40В плане
- CVE-2026-74612veth: fix skb length accounting after XDP frag adjustment40В плане
- CVE-2026-74475vxlan: use neigh_ha_snapshot() in route_shortcircuit()40В плане
- CVE-2026-74309vdpa/octeon_ep: fix IRQ-to-ring mapping in interrupt handler40В плане
- CVE-2026-74280crypto: marvell/octeontx - fix DMA cleanup using wrong loop index40В плане
- CVE-2026-74279crypto: cavium/cpt - fix DMA cleanup using wrong loop index40В плане
Исправление
На какую версию обновиться
Версии с исправлением по данным вендора, реестров пакетов и Microsoft. Перед обновлением сверьтесь с бюллетенем вендора.
| Продукт / пакет | Исправленная версия | Источник |
|---|---|---|
| Linux Linux | 7f2d6b31089e48db4653df832c9a6afdde9a1c29 | Вендор (CNA) |
| Linux Linux | 8e872c07e40d51a66dee7b280a23a460a2e1e3fa | Вендор (CNA) |
| Linux Linux | a26b499b757cfc8bbff1088bb1b844639e250893 | Вендор (CNA) |
| Linux Linux | a3a8afa2f6e7f0dc266d08f02be3f3054241ba47 | Вендор (CNA) |
| Linux Linux | ed7d5599e6c398da74845767cd1e6a8370a160fc | Вендор (CNA) |
| azl3 kernel 6.6.144.1-1 on Azure Linux 3.0 | 6.6.145.2-1 · CBL-Mariner Releases | Microsoft (MSRC) |
| debian:linux | 6.12.96-1 · Debian:13 | Реестр пакетов (OSV) |
| debian:linux-6.12 | 6.12.100-1~deb12u1 · 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).
Технические детали
Для этой записи нет вектора CVSS, условия атаки вывести нельзя.
Класс уязвимости (CWE)
—
Контекст атаки
Шаблоны атак MITRE CAPEC и техники ATT&CK для этого класса уязвимости (CWE). Отправная точка для правил обнаружения и threat hunting.
У MITRE нет сопоставления CAPEC/ATT&CK для этого CWE.
Анализ Noroxi
Анализа Noroxi для этой записи пока нет
Мы не пишем анализ вручную для всех 385 000+ уязвимостей; это было бы нечестно. Для значимых уязвимостей с реальным влиянием наша команда описывает механизм, обнаружение и устранение.
Мы используем этот продукт, нужна помощьЖурнал изменений
- Исправление✗ → ✓
Для отслеживаемых записей эти изменения приходят и как уведомления. →
Источники
- git.kernel.org/stable/c/7f2d6b31089e48db4653df832c9a6afdde9a1c29
- git.kernel.org/stable/c/8e872c07e40d51a66dee7b280a23a460a2e1e3fa
- git.kernel.org/stable/c/a26b499b757cfc8bbff1088bb1b844639e250893
- git.kernel.org/stable/c/a3a8afa2f6e7f0dc266d08f02be3f3054241ba47
- git.kernel.org/stable/c/ed7d5599e6c398da74845767cd1e6a8370a160fc
Рекомендации вендоров и официальные записи. Ссылки на эксплойты/PoC намеренно исключены.