Перейти к содержимому
Noroxi
CVE-2025-40040· NVD / CVE Program· CNA Linux

mm/ksm: fix flag-dropping behavior in ksm_madvise

Оценка Noroxi

Приоритет: Наблюдать (оценка срочности 22/100)

  • Есть публичный код proof-of-concept (GitHub); записей об эксплуатации в реальных атаках нет.
  • Вероятность эксплуатации в ближайшие 30 дней: 0,37% (FIRST EPSS).
  • Может быть вызвана пользователем с локальным доступом к системе. Достаточно учётной записи с низкими привилегиями. Действия пользователя не требуются. Особые условия не требуются; воспроизводится стабильно.
  • Исправленная версия: Linux Linux 41cb9fd904fe0c39d52e82dd84dc3c96b7aa9693, 76385629f45740b7888f8fcd83bde955b10f61fe, 788e5385d0ff69cdba1cabccb9dab8d9647b9239; azl3 kernel 6.6.112.1-2 on Azure Linux 3.0 6.6.117.1-1; cbl2 kernel 5.15.186.1-1 on CBL Mariner 2.0 5.15.200.1-1.
  • Критичность спорная: CNA оценивает в 7.8, NVD — в 5.5.

Пока низкий приоритет. Обновитесь до Linux Linux 41cb9fd904fe0c39d52e82dd84dc3c96b7aa9693, 76385629f45740b7888f8fcd83bde955b10f61fe, 788e5385d0ff69cdba1cabccb9dab8d9647b9239; azl3 kernel 6.6.112.1-2 on Azure Linux 3.0 6.6.117.1-1; cbl2 kernel 5.15.186.1-1 on CBL Mariner 2.0 5.15.200.1-1 или новее.

Формируется автоматически по данным записи: CVSS (NVD и CNA), CISA KEV и SSVC, FIRST EPSS, источники эксплойтов, исправленные версии. Как мы считаем

Первоисточники: NVD · CVE.org · FIRST EPSS

In the Linux kernel, the following vulnerability has been resolved: mm/ksm: fix flag-dropping behavior in ksm_madvise syzkaller discovered the following crash: (kernel BUG) [ 44.607039] ------------[ cut here ]------------ [ 44.607422] kernel BUG at mm/userfaultfd.c:2067! [ 44.608148] Oops: invalid opcode: 0000 [#1] SMP DEBUG_PAGEALLOC KASAN NOPTI [ 44.608814] CPU: 1 UID: 0 PID: 2475 Comm: reproducer Not tainted 6.16.0-rc6 #1 PREEMPT(none) [ 44.609635] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS rel-1.16.3-0-ga6ed6b701f0a-prebuilt.qemu.org 04/01/2014 [ 44.610695] RIP: 0010:userfaultfd_release_all+0x3a8/0x460 <snip other registers, drop unreliable trace> [ 44.617726] Call Trace: [ 44.617926] <TASK> [ 44.619284] userfaultfd_release+0xef/0x1b0 [ 44.620976] __fput+0x3f9/0xb60 [ 44.621240] fput_close_sync+0x110/0x210 [ 44.622222] __x64_sys_close+0x8f/0x120 [ 44.622530] do_syscall_64+0x5b/0x2f0 [ 44.622840] entry_SYSCALL_64_after_hwframe+0x76/0x7e [ 44.623244] RIP: 0033:0x7f365bb3f227 Kernel panics because it detects UFFD inconsistency during userfaultfd_release_all(). Specifically, a VMA which has a valid pointer to vma->vm_userfaultfd_ctx, but no UFFD flags in vma->vm_flags. The inconsistency is caused in ksm_madvise(): when user calls madvise() with MADV_UNMEARGEABLE on a VMA that is registered for UFFD in MINOR mode, it accidentally clears all flags stored in the upper 32 bits of vma->vm_flags. Assuming x86_64 kernel build, unsigned long is 64-bit and unsigned int and int are 32-bit wide. This setup causes the following mishap during the &= ~VM_MERGEABLE assignment. VM_MERGEABLE is a 32-bit constant of type unsigned int, 0x8000'0000. After ~ is applied, it becomes 0x7fff'ffff unsigned int, which is then promoted to unsigned long before the & operation. This promotion fills upper 32 bits with leading 0s, as we're doing unsigned conversion (and even for a signed conversion, this wouldn't help as the leading bit is 0). & operation thus ends up AND-ing vm_flags with 0x0000'0000'7fff'ffff instead of intended 0xffff'ffff'7fff'ffff and hence accidentally clears the upper 32-bits of its value. Fix it by changing `VM_MERGEABLE` constant to unsigned long, using the BIT() macro. Note: other VM_* flags are not affected: This only happens to the VM_MERGEABLE flag, as the other VM_* flags are all constants of type int and after ~ operation, they end up with leading 1 and are thus converted to unsigned long with leading 1s. Note 2: After commit 31defc3b01d9 ("userfaultfd: remove (VM_)BUG_ON()s"), this is no longer a kernel BUG, but a WARNING at the same place: [ 45.595973] WARNING: CPU: 1 PID: 2474 at mm/userfaultfd.c:2067 but the root-cause (flag-drop) remains the same. [akpm@linux-foundation.org: rust bindgen wasn't able to handle BIT(), from Miguel]

СредняяCVSS 5.5 · v3.1—Proof of concept Есть исправление
Опубликовано
28 окт. 2025 г.
Обновлено
19 окт. 2026 г.
EPSS
0,3 % · 30-й процентиль
CWE
—

Инструменты для отчёта

JSON

Оценка срочности

22

Наблюдать

Пока низкий приоритет.

CVSS
22 / 40 · 5.5 / 10
CISA KEV
0 / 30 · Нет в списке
EPSS
0 / 30 · 0,3 %

Решение CISA SSVC

Эксплуатация
нет
Автоматизируемо
нет
Техническое влияние
полное

Vulnrichment: входные данные дерева решений CISA.

Оценка 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: эксплуатация в реальных атаках не зафиксирована
  • Есть PoC, боевого модуля нет
  • Исправление выпущено

Если что-то из этого изменится, сообщим в ежедневной сводке.

Следить за CVE-2025-40040

Когда мы напишем

  • когда запись попадёт в CISA KEV
  • когда появится или станет боевым эксплойт
  • когда запись обновится (в том числе исправленная версия)
  • когда EPSS вырастет на 20 пунктов за неделю

Одна сводка в день по почте (06:00 UTC); с вебхуком попадание в KEV и боевые эксплойты — сразу.

С бесплатным аккаунтом также

У вас WordPress? Проверьте сайт бесплатно в WP Lens

  • Оповещения по стеку: добавьте свои продукты и версии — новые CVE для них придут вам
  • Мониторинг сайта: 1 сайт, письмо сразу при недоступности
  • Добавьте домен: поддомены и риск захвата проверяются каждую неделю (1 домен)
  • 10 проверок в час в инструментах безопасности (без аккаунта — 3 в день), API-ключ и MCP
  • Все сканирования в одной панели: находки, изменения с прошлого сканирования, отчёт по домену или клиенту (PDF, ссылка для просмотра)
Все бесплатные инструменты

Регистрация по почте · Уже есть аккаунт? Войти

Бесплатный аккаунт, без карты. Отписаться можно в любой момент.

У вас WordPress? Проверьте сайт бесплатно в WP Lens

Затронута ли ваша версия? Проверьте

Анализ Noroxi

Что это значит для вашей инфраструктуры?

Оценка выше формируется автоматически по данным записи и не знает вашей среды. Наша команда проверит на ваших системах, действительно ли уязвимость эксплуатируема и какой меры достаточно.

Мы используем этот продукт, нужна помощь

Затронутые системы

Затронута ли ваша версия?

Выберите продукт и введите свою версию. Она сравнивается с диапазонами этой записи прямо в браузере и никуда не отправляется.

ВендорПродукт
linuxlinux kernel

Затронутые версии

Диапазоны версий NVD (для продуктов из каталога). Добавьте продукт в стек с версией, и сопоставление будет по ним.

  • linux linux kernel4.6 и новее · до 5.4.302
  • linux linux kernel5.5 и новее · до 5.10.247
  • linux linux kernel5.11 и новее · до 5.15.197
  • linux linux kernel5.16 и новее · до 6.1.158
  • linux linux kernel6.2 и новее · до 6.6.114
  • linux linux kernel6.7 и новее · до 6.12.55
  • linux linux kernel6.13 и новее · до 6.17.3

Версии, заявленные вендором

Диапазоны затронутых версий, заявленные назначающей организацией (Linux). Не зависят от анализа CPE в NVD и обычно опережают его.

  • Linux Linux

    • 4.6затронута
    • 63c17fb8e5a46a16e10e82005748837fd11a2024 и новее · до 850f1ea245bdc0ce6a3fd36bfb80d8cf9647cb71затронута · git
    • 63c17fb8e5a46a16e10e82005748837fd11a2024 и новее · до 788e5385d0ff69cdba1cabccb9dab8d9647b9239затронута · git
    • 63c17fb8e5a46a16e10e82005748837fd11a2024 и новее · до b69f19244c2b6475c8a6eb72f0fb0d53509e48cdзатронута · git
    • 63c17fb8e5a46a16e10e82005748837fd11a2024 и новее · до 41cb9fd904fe0c39d52e82dd84dc3c96b7aa9693затронута · git
    • 63c17fb8e5a46a16e10e82005748837fd11a2024 и новее · до 92b82e232b8d8b116ac6e57aeae7a6033db92c60затронута · git
    • 63c17fb8e5a46a16e10e82005748837fd11a2024 и новее · до ac50c6e0a8f91a02b681af81abb2362fbb67cc18затронута · git
    • 63c17fb8e5a46a16e10e82005748837fd11a2024 и новее · до 76385629f45740b7888f8fcd83bde955b10f61feзатронута · git
    • 63c17fb8e5a46a16e10e82005748837fd11a2024 и новее · до f04aad36a07cc17b7a5d5b9a2d386ce6fae63e93затронута · git
    • до 4.6не затронута · semver

Затронутые пакеты

Данные OSV и GitHub Advisory: экосистема, пакет и диапазон. Сопоставление SBOM использует эту таблицу.

ЭкосистемаПакетЗатронутый диапазонИсправление
Debian:12linuxдо 6.1.158-16.1.158-1
Debian:13linuxдо 6.12.57-16.12.57-1
Debian:14linuxдо 6.17.6-16.17.6-1
openSUSE:Leap 15.6dtb-aarch64до 6.4.0-150600.23.81.16.4.0-150600.23.81.1
openSUSE:Leap 15.6kernel-64kbдо 6.4.0-150600.23.81.36.4.0-150600.23.81.3
openSUSE:Leap 15.6kernel-azureдо 6.4.0-150600.8.58.16.4.0-150600.8.58.1
openSUSE:Leap 15.6kernel-debugдо 6.4.0-150600.23.81.36.4.0-150600.23.81.3
openSUSE:Leap 15.6kernel-defaultдо 6.4.0-150600.23.81.36.4.0-150600.23.81.3
openSUSE:Leap 15.6kernel-default-baseдо 6.4.0-150600.23.81.3.150600.12.36.36.4.0-150600.23.81.3.150600.12.36.3
openSUSE:Leap 15.6kernel-docsдо 6.4.0-150600.23.81.16.4.0-150600.23.81.1
openSUSE:Leap 15.6kernel-kvmsmallдо 6.4.0-150600.23.81.36.4.0-150600.23.81.3
openSUSE:Leap 15.6kernel-obs-buildдо 6.4.0-150600.23.81.36.4.0-150600.23.81.3
openSUSE:Leap 15.6kernel-obs-qaдо 6.4.0-150600.23.81.16.4.0-150600.23.81.1
openSUSE:Leap 15.6kernel-rtдо 6.4.0-150600.10.61.16.4.0-150600.10.61.1
openSUSE:Leap 15.6kernel-rt_debugдо 6.4.0-150600.10.61.16.4.0-150600.10.61.1
openSUSE:Leap 15.6kernel-sourceдо 6.4.0-150600.23.81.26.4.0-150600.23.81.2
openSUSE:Leap 15.6kernel-source-azureдо 6.4.0-150600.8.58.16.4.0-150600.8.58.1
openSUSE:Leap 15.6kernel-source-rtдо 6.4.0-150600.10.61.16.4.0-150600.10.61.1
openSUSE:Leap 15.6kernel-symsдо 6.4.0-150600.23.81.16.4.0-150600.23.81.1
openSUSE:Leap 15.6kernel-syms-azureдо 6.4.0-150600.8.58.16.4.0-150600.8.58.1
openSUSE:Leap 15.6kernel-syms-rtдо 6.4.0-150600.10.61.16.4.0-150600.10.61.1
openSUSE:Leap 15.6kernel-zfcpdumpдо 6.4.0-150600.23.81.36.4.0-150600.23.81.3
openSUSE:Tumbleweedkernel-sourceдо 6.17.7-1.16.17.7-1.1
SUSE:Linux Enterprise High Performance Computing 15 SP3-LTSSkernel-64kbдо 5.3.18-150300.59.229.35.3.18-150300.59.229.3

+72

Тот же продукт

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 KEV
    89Срочно
  • CVE-2021-22555Heap Out-Of-Bounds Write in Netfilter IP6T_SO_SET_REPLACEKEV
    85Срочно
  • 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 haKEV
    83Срочно

Опубликованы до и после этой записи в том же продукте

  • ← РаньшеCVE-2025-4000520 окт. 2025 г. · spi: cadence-quadspi: Implement refcount to handle unbind during busy
    22Наблюдать
  • ← РаньшеCVE-2025-4003928 окт. 2025 г. · ksmbd: Fix race condition in RPC handle list access
    18Наблюдать
  • Позже →CVE-2025-4008228 окт. 2025 г. · hfsplus: fix slab-out-of-bounds read in hfsplus_uni2asc()
    28Наблюдать

Исправление

На какую версию обновиться

Версии с исправлением по данным вендора, реестров пакетов и Microsoft. Перед обновлением сверьтесь с бюллетенем вендора.

Продукт / пакетИсправленная версияИсточник
Linux Linux41cb9fd904fe0c39d52e82dd84dc3c96b7aa9693Вендор (CNA)
Linux Linux76385629f45740b7888f8fcd83bde955b10f61feВендор (CNA)
Linux Linux788e5385d0ff69cdba1cabccb9dab8d9647b9239Вендор (CNA)
Linux Linux850f1ea245bdc0ce6a3fd36bfb80d8cf9647cb71Вендор (CNA)
Linux Linux92b82e232b8d8b116ac6e57aeae7a6033db92c60Вендор (CNA)
Linux Linuxac50c6e0a8f91a02b681af81abb2362fbb67cc18Вендор (CNA)
Linux Linuxb69f19244c2b6475c8a6eb72f0fb0d53509e48cdВендор (CNA)
Linux Linuxf04aad36a07cc17b7a5d5b9a2d386ce6fae63e93Вендор (CNA)
azl3 kernel 6.6.112.1-2 on Azure Linux 3.06.6.117.1-1 · CBL-Mariner ReleasesMicrosoft (MSRC)
cbl2 kernel 5.15.186.1-1 on CBL Mariner 2.05.15.200.1-1 · CBL-Mariner ReleasesMicrosoft (MSRC)
debian:linux6.1.158-1 · Debian:12Реестр пакетов (OSV)
opensuse:dtb-aarch646.4.0-150600.23.81.1 · openSUSE:Leap 15.6Реестр пакетов (OSV)
opensuse:kernel-64kb6.4.0-150600.23.81.3 · openSUSE:Leap 15.6Реестр пакетов (OSV)
opensuse:kernel-debug6.4.0-150600.23.81.3 · openSUSE:Leap 15.6Реестр пакетов (OSV)
opensuse:kernel-default6.4.0-150600.23.81.3 · openSUSE:Leap 15.6Реестр пакетов (OSV)
opensuse:kernel-default-base6.4.0-150600.23.81.3.150600.12.36.3 · openSUSE:Leap 15.6Реестр пакетов (OSV)
opensuse:kernel-docs6.4.0-150600.23.81.1 · openSUSE:Leap 15.6Реестр пакетов (OSV)
opensuse:kernel-kvmsmall6.4.0-150600.23.81.3 · openSUSE:Leap 15.6Реестр пакетов (OSV)
opensuse:kernel-obs-build6.4.0-150600.23.81.3 · openSUSE:Leap 15.6Реестр пакетов (OSV)
opensuse:kernel-obs-qa6.4.0-150600.23.81.1 · openSUSE:Leap 15.6Реестр пакетов (OSV)
opensuse:kernel-source6.4.0-150600.23.81.2 · openSUSE:Leap 15.6Реестр пакетов (OSV)
opensuse:kernel-syms6.4.0-150600.23.81.1 · openSUSE:Leap 15.6Реестр пакетов (OSV)
opensuse:kernel-zfcpdump6.4.0-150600.23.81.3 · openSUSE:Leap 15.6Реестр пакетов (OSV)
suse:kernel-64kb6.4.0-150600.23.81.3 · SUSE:Linux Enterprise Module for Basesystem 15 SP6Реестр пакетов (OSV)
suse:kernel-64kb6.4.0-150700.53.25.1 · SUSE:Linux Enterprise Module for Basesystem 15 SP7Реестр пакетов (OSV)
suse:kernel-azure6.4.0-150600.8.58.1 · SUSE:Linux Enterprise Module for Public Cloud 15 SP6Реестр пакетов (OSV)
suse:kernel-default6.4.0-150600.23.81.3 · SUSE:Linux Enterprise Module for Basesystem 15 SP6Реестр пакетов (OSV)
suse:kernel-default6.4.0-150700.53.25.1 · SUSE:Linux Enterprise Module for Basesystem 15 SP7Реестр пакетов (OSV)
suse:kernel-default-base6.4.0-150600.23.81.3.150600.12.36.3 · SUSE:Linux Enterprise Module for Basesystem 15 SP6Реестр пакетов (OSV)
suse:kernel-default-base6.4.0-150700.53.25.1.150700.17.17.1 · SUSE:Linux Enterprise Module for Basesystem 15 SP7Реестр пакетов (OSV)

+13

Статус эксплойта

Есть proof of concept

Существует публичный PoC или сигнатура обнаружения. Знание об эксплойте доступно; не откладывайте установку исправлений.

Доказательство

  • Репозиторий PoC на GitHub ×1

Noroxi не размещает код эксплойтов и не даёт на них ссылок. Показываются имена модулей Metasploit и идентификаторы шаблонов Nuclei (имена, не код); записи Exploit-DB и репозитории PoC даются только числом.

Публичные свидетельства эксплойта
ИсточникТипДата
Репозиторий PoC на GitHubstars:122025-12-01

Контекст для исследователя

Для пентестеров и исследователей: профиль атаки, расхождение оценок, хронология, коммиты исправлений, авторы, кандидаты в варианты и цепочки, охват bug bounty. Всё выводится из имеющихся данных; без кода эксплойтов.

Хронология

От публикации до сегодня: proof of concept, модуль Metasploit, CISA KEV и запись об исправлении. Даты — как сообщают источники.

  1. Публикация
  2. Первый PoC+33 дн.
  3. Сегодня23 окт. 2026 г.+360 дн.
EPSS за 120 дней

Ежедневная оценка FIRST EPSS; записываются только изменения от 0,01 (ступенчатый график).

Ссылки на патчи и коммиты

Коммиты, 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.

Журнал изменений

  1. Эксплуатация SSVC— → none
  2. Исправление✗ → ✓

Для отслеживаемых записей эти изменения приходят и как уведомления. →

Источники

Все записи