CVE-2025-37964: x86/mm: Eliminate window where TLB flushes may be inadvertently skipped
Оценка Noroxi
Приоритет: Наблюдать (оценка срочности 22/100)
- В отслеживаемых источниках (CISA KEV, Exploit-DB, Metasploit, Nuclei, GitHub) нет публичного эксплойта или записей об эксплуатации.
- Вероятность эксплуатации в ближайшие 30 дней: 0,20% (FIRST EPSS).
- Может быть вызвана пользователем с локальным доступом к системе. Достаточно учётной записи с низкими привилегиями. Действия пользователя не требуются. Особые условия не требуются; воспроизводится стабильно.
- Исправленная версия: Linux Linux 02ad4ce144bd27f71f583f667fdf3b3ba0753477, 12f703811af043d32b1c8a30001b2fa04d5cd0ac, 399ec9ca8fc4999e676ff89a90184ec40031cf59.
- Критичность спорная: CNA оценивает в 7.8, NVD — в 5.5.
Пока низкий приоритет. Обновитесь до Linux Linux 02ad4ce144bd27f71f583f667fdf3b3ba0753477, 12f703811af043d32b1c8a30001b2fa04d5cd0ac, 399ec9ca8fc4999e676ff89a90184ec40031cf59 или новее.
Формируется автоматически по данным записи: CVSS (NVD и CNA), CISA KEV и SSVC, FIRST EPSS, источники эксплойтов, исправленные версии. Как мы считаем
Первоисточники: NVD · CVE.org · FIRST EPSS
In the Linux kernel, the following vulnerability has been resolved: x86/mm: Eliminate window where TLB flushes may be inadvertently skipped tl;dr: There is a window in the mm switching code where the new CR3 is set and the CPU should be getting TLB flushes for the new mm. But should_flush_tlb() has a bug and suppresses the flush. Fix it by widening the window where should_flush_tlb() sends an IPI. Long Version: === History === There were a few things leading up to this. First, updating mm_cpumask() was observed to be too expensive, so it was made lazier. But being lazy caused too many unnecessary IPIs to CPUs due to the now-lazy mm_cpumask(). So code was added to cull mm_cpumask() periodically[2]. But that culling was a bit too aggressive and skipped sending TLB flushes to CPUs that need them. So here we are again. === Problem === The too-aggressive code in should_flush_tlb() strikes in this window: // Turn on IPIs for this CPU/mm combination, but only // if should_flush_tlb() agrees: cpumask_set_cpu(cpu, mm_cpumask(next)); next_tlb_gen = atomic64_read(&next->context.tlb_gen); choose_new_asid(next, next_tlb_gen, &new_asid, &need_flush); load_new_mm_cr3(need_flush); // ^ After 'need_flush' is set to false, IPIs *MUST* // be sent to this CPU and not be ignored. this_cpu_write(cpu_tlbstate.loaded_mm, next); // ^ Not until this point does should_flush_tlb() // become true! should_flush_tlb() will suppress TLB flushes between load_new_mm_cr3() and writing to 'loaded_mm', which is a window where they should not be suppressed. Whoops. === Solution === Thankfully, the fuzzy "just about to write CR3" window is already marked with loaded_mm==LOADED_MM_SWITCHING. Simply checking for that state in should_flush_tlb() is sufficient to ensure that the CPU is targeted with an IPI. This will cause more TLB flush IPIs. But the window is relatively small and I do not expect this to cause any kind of measurable performance impact. Update the comment where LOADED_MM_SWITCHING is written since it grew yet another user. Peter Z also raised a concern that should_flush_tlb() might not observe 'loaded_mm' and 'is_lazy' in the same order that switch_mm_irqs_off() writes them. Add a barrier to ensure that they are observed in the order they are written.
- Опубликовано
- 20 мая 2025 г.
- Обновлено
- 15 окт. 2026 г.
- EPSS
- 0,2 % · 11-й процентиль
- CWE
- —
Инструменты для отчёта
Оценка срочности
22
Наблюдать
Пока низкий приоритет.
- CVSS
- 22 / 40 · 5.5 / 10
- CISA KEV
- 0 / 30 · Нет в списке
- EPSS
- 0 / 30 · 0,2 %
Оценка CNA и NVD
- NVD
- 5,5
- CNA · Linux
- 7,8
- разница 2,3 балла
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Оценка присваивающего органа и независимая оценка NVD. Разрыв означает, что критичность спорна.
Узнайте, когда запись изменится
- Нет в KEV: эксплуатация в реальных атаках не зафиксирована
- Публичного эксплойта нет
- Исправление выпущено
Если что-то из этого изменится, сообщим в ежедневной сводке.
У вас WordPress? Проверьте сайт бесплатно в WP Lens
Анализ Noroxi
Что это значит для вашей инфраструктуры?
Оценка выше формируется автоматически по данным записи и не знает вашей среды. Наша команда проверит на ваших системах, действительно ли уязвимость эксплуатируема и какой меры достаточно.
Мы используем этот продукт, нужна помощьЗатронутые системы
Затронута ли ваша версия?
Выберите продукт и введите свою версию. Она сравнивается с диапазонами этой записи прямо в браузере и никуда не отправляется.
| Вендор | Продукт | CPE |
|---|---|---|
| linux | linux kernel | cpe:2.3:o:linux:linux_kernel |
| debian | debian linux | cpe:2.3:o:debian:debian_linux |
Затронутые версии
Диапазоны версий NVD (для продуктов из каталога). Добавьте продукт в стек с версией, и сопоставление будет по ним.
- debian debian linux11.0
- linux linux kernel6.1.129 и новее · до 6.1.139
- linux linux kernel6.6.79 и новее · до 6.6.91
- linux linux kernel5.15.179 и новее · до 5.15.183
- linux linux kernel6.13.4 и новее · до 6.14.7
- linux linux kernel6.12.16 и новее · до 6.12.29
- linux linux kernel6.15
Версии, заявленные вендором
Диапазоны затронутых версий, заявленные назначающей организацией (Linux). Не зависят от анализа CPE в NVD и обычно опережают его.
Linux Linux
- d1347977661342cb09a304a17701eb2d4aa21dec, 6.14затронута
- 848b5815177582de0e1d0118725378e0fbadca20 и новее · до 12f703811af043d32b1c8a30001b2fa04d5cd0acзатронута · git
- b47002ed65ade940839b7f439ff4a194e7d5ec28 и новее · до 02ad4ce144bd27f71f583f667fdf3b3ba0753477затронута · git
- a04fe3bfc71e28009e20357b79df1e8ef7c9d600 и новее · до d41072906abec8bb8e01ed16afefbaa558908c89затронута · git
- 3dbe889a1b829b4c07e0836ff853fe649e51ce4f и новее · до d87392094f96e162fa5fa5a8640d70cc0952806fзатронута · git
- 6db2526c1d694c91c6e05e2f186c085e9460f202 и новее · до 399ec9ca8fc4999e676ff89a90184ec40031cf59затронута · git
- 6db2526c1d694c91c6e05e2f186c085e9460f202 и новее · до fea4e317f9e7e1f449ce90dedc27a2d2a95bee5aзатронута · git
- 5.15.179 и новее · до 5.15.183затронута · semver
- 6.1.129 и новее · до 6.1.139затронута · semver
- 6.6.79 и новее · до 6.6.91затронута · semver
Затронутые пакеты
Данные OSV и GitHub Advisory: экосистема, пакет и диапазон. Сопоставление SBOM использует эту таблицу.
| Экосистема | Пакет | Затронутый диапазон | Исправление |
|---|---|---|---|
| Debian:12 | linux | до 6.1.140-1 | 6.1.140-1 |
| Debian:13 | linux | до 6.12.29-1 | 6.12.29-1 |
Тот же продукт
linux: все записиДругие записи с наивысшей оценкой для того же основного продукта.
- CVE-2026-31431crypto: algif_aead - Revert to operating out-of-placeKEV90Срочно
- 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-2025-3795720 мая 2025 г. · KVM: SVM: Forcibly leave SMM mode on SHUTDOWN interception31Наблюдать
- ← РаньшеCVE-2025-3795920 мая 2025 г. · bpf: Scrub packet on bpf_redirect_peer22Наблюдать
- Позже →CVE-2025-3797220 мая 2025 г. · Input: mtk-pmic-keys - fix possible null pointer dereference22Наблюдать
Исправление
На какую версию обновиться
Версии с исправлением по данным вендора, реестров пакетов и Microsoft. Перед обновлением сверьтесь с бюллетенем вендора.
| Продукт / пакет | Исправленная версия | Источник |
|---|---|---|
| Linux Linux | 02ad4ce144bd27f71f583f667fdf3b3ba0753477 | Вендор (CNA) |
| Linux Linux | 12f703811af043d32b1c8a30001b2fa04d5cd0ac | Вендор (CNA) |
| Linux Linux | 399ec9ca8fc4999e676ff89a90184ec40031cf59 | Вендор (CNA) |
| Linux Linux | 5.15.183 | Вендор (CNA) |
| Linux Linux | 6.1.139 | Вендор (CNA) |
| Linux Linux | 6.12.29 | Вендор (CNA) |
| Linux Linux | 6.14 | Вендор (CNA) |
| Linux Linux | 6.6.91 | Вендор (CNA) |
| Linux Linux | d41072906abec8bb8e01ed16afefbaa558908c89 | Вендор (CNA) |
| Linux Linux | d87392094f96e162fa5fa5a8640d70cc0952806f | Вендор (CNA) |
| Linux Linux | fea4e317f9e7e1f449ce90dedc27a2d2a95bee5a | Вендор (CNA) |
| debian:linux | 6.1.140-1 · Debian:12 | Реестр пакетов (OSV) |
Статус эксплойта
Публичный эксплойт неизвестен
Публичный эксплойт пока не обнаружен. Это не значит, что вы в безопасности, лишь что порог чуть выше.
Контекст для исследователя
Для пентестеров и исследователей: профиль атаки, расхождение оценок, хронология, коммиты исправлений, авторы, кандидаты в варианты и цепочки, охват bug bounty. Всё выводится из имеющихся данных; без кода эксплойтов.
Хронология
От публикации до сегодня: proof of concept, модуль Metasploit, CISA KEV и запись об исправлении. Даты — как сообщают источники.
Кроме публикации датированных событий нет.
Истории пока нет (накапливается ежедневным заданием EPSS).
Ссылки на патчи и коммиты
Коммиты, PR и diff среди источников. Отправная точка для patch-diff и поиска вариантов; это исправления, не эксплойты.
Среди источников нет ссылок на коммит или PR.
Авторы
Все исследователиНашедшие, сообщившие и аналитики, названные в записи CNA. Нажмите имя, чтобы увидеть другие записи исследователя.
В записи CNA нет авторов.
Кандидаты в варианты
Тот же продукт, тот же класс уязвимости, в пределах 18 месяцев. Если патч не закрыл первопричину, родственная ошибка здесь.
Ночной расчёт связей ничего не нашёл.
Кандидаты в цепочки
Обход аутентификации и уязвимость, требующая привилегий, в одном продукте и близко по времени: вместе они могут дать путь без аутентификации.
—
Охват bug bounty
Известной публичной программы нет.
Источник: bounty-targets-data (публичные списки HackerOne, Bugcrowd, Intigriti, YesWeHack).
Технические детали
Условия атаки
- Может быть вызвана пользователем с локальным доступом к системе.
- Достаточно учётной записи с низкими привилегиями.
- Действия пользователя не требуются.
- Особые условия не требуются; воспроизводится стабильно.
В случае успеха
- Конфиденциальность
- нет
- Целостность
- нет
- Доступность
- высокое · работа сервиса может быть нарушена
- Вектор атаки
- Локальный
- Сложность атаки
- Низкая
- Требуемые привилегии
- Низкие
- Взаимодействие с пользователем
- Не требуется
- Область действия
- Не изменяется
- Влияние на конфиденциальность
- Нет
- Влияние на целостность
- Нет
- Влияние на доступность
- Высокое
Класс уязвимости (CWE)
—
Вектор 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.
Журнал изменений
- Исправление✗ → ✓
Для отслеживаемых записей эти изменения приходят и как уведомления. →
Источники
Показать все источники (ещё 8)Свернуть
- git.kernel.org/stable/c/12f703811af043d32b1c8a30001b2fa04d5cd0ac
- git.kernel.org/stable/c/399ec9ca8fc4999e676ff89a90184ec40031cf59
- git.kernel.org/stable/c/d41072906abec8bb8e01ed16afefbaa558908c89
- git.kernel.org/stable/c/d87392094f96e162fa5fa5a8640d70cc0952806f
- git.kernel.org/stable/c/fea4e317f9e7e1f449ce90dedc27a2d2a95bee5a
- lists.debian.org/debian-lts-announce/2025/08/msg00010.html
- cert-portal.siemens.com/productcert/html/ssa-019113.html
- cert-portal.siemens.com/productcert/html/ssa-457936.html
Рекомендации вендоров и официальные записи. Ссылки на эксплойты/PoC намеренно исключены.