CVE-2025-22090: x86/mm/pat: Fix VM_PAT handling when fork() fails in copy_page_range()
Оценка Noroxi
Приоритет: Наблюдать (оценка срочности 22/100)
- В отслеживаемых источниках (CISA KEV, Exploit-DB, Metasploit, Nuclei, GitHub) нет публичного эксплойта или записей об эксплуатации.
- Вероятность эксплуатации в ближайшие 30 дней: 0,21% (FIRST EPSS).
- Может быть вызвана пользователем с локальным доступом к системе. Достаточно учётной записи с низкими привилегиями. Действия пользователя не требуются. Особые условия не требуются; воспроизводится стабильно.
- Исправленная версия: Linux Linux 8d6373f83f367dbed316ddeb178130a3a64b5b67, a6623712ba8449876f0b3de9462831523fb851e4, b07398e8a5da517083f5c3f2daa8f6681b48ab28.
Пока низкий приоритет. Обновитесь до Linux Linux 8d6373f83f367dbed316ddeb178130a3a64b5b67, a6623712ba8449876f0b3de9462831523fb851e4, b07398e8a5da517083f5c3f2daa8f6681b48ab28 или новее.
Формируется автоматически по данным записи: 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/pat: Fix VM_PAT handling when fork() fails in copy_page_range() If track_pfn_copy() fails, we already added the dst VMA to the maple tree. As fork() fails, we'll cleanup the maple tree, and stumble over the dst VMA for which we neither performed any reservation nor copied any page tables. Consequently untrack_pfn() will see VM_PAT and try obtaining the PAT information from the page table -- which fails because the page table was not copied. The easiest fix would be to simply clear the VM_PAT flag of the dst VMA if track_pfn_copy() fails. However, the whole thing is about "simply" clearing the VM_PAT flag is shaky as well: if we passed track_pfn_copy() and performed a reservation, but copying the page tables fails, we'll simply clear the VM_PAT flag, not properly undoing the reservation ... which is also wrong. So let's fix it properly: set the VM_PAT flag only if the reservation succeeded (leaving it clear initially), and undo the reservation if anything goes wrong while copying the page tables: clearing the VM_PAT flag after undoing the reservation. Note that any copied page table entries will get zapped when the VMA will get removed later, after copy_page_range() succeeded; as VM_PAT is not set then, we won't try cleaning VM_PAT up once more and untrack_pfn() will be happy. Note that leaving these page tables in place without a reservation is not a problem, as we are aborting fork(); this process will never run. A reproducer can trigger this usually at the first try: https://gitlab.com/davidhildenbrand/scratchspace/-/raw/main/reproducers/pat_fork.c WARNING: CPU: 26 PID: 11650 at arch/x86/mm/pat/memtype.c:983 get_pat_info+0xf6/0x110 Modules linked in: ... CPU: 26 UID: 0 PID: 11650 Comm: repro3 Not tainted 6.12.0-rc5+ #92 Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-2.fc40 04/01/2014 RIP: 0010:get_pat_info+0xf6/0x110 ... Call Trace: <TASK> ... untrack_pfn+0x52/0x110 unmap_single_vma+0xa6/0xe0 unmap_vmas+0x105/0x1f0 exit_mmap+0xf6/0x460 __mmput+0x4b/0x120 copy_process+0x1bf6/0x2aa0 kernel_clone+0xab/0x440 __do_sys_clone+0x66/0x90 do_syscall_64+0x95/0x180 Likely this case was missed in: d155df53f310 ("x86/mm/pat: clear VM_PAT if copy_p4d_range failed") ... and instead of undoing the reservation we simply cleared the VM_PAT flag. Keep the documentation of these functions in include/linux/pgtable.h, one place is more than sufficient -- we should clean that up for the other functions like track_pfn_remap/untrack_pfn separately.
- Опубликовано
- 16 апр. 2025 г.
- Обновлено
- 15 окт. 2026 г.
- EPSS
- 0,2 % · 11-й процентиль
- CWE
- —
Инструменты для отчёта
Оценка срочности
22
Наблюдать
Пока низкий приоритет.
- CVSS
- 22 / 40 · 5.5 / 10
- CISA KEV
- 0 / 30 · Нет в списке
- EPSS
- 0 / 30 · 0,2 %
Решение CISA SSVC
- Эксплуатация
- нет
- Автоматизируемо
- нет
- Техническое влияние
- частичное
Vulnrichment: входные данные дерева решений CISA.
Оценка CNA и NVD
- NVD
- 5,5
- CNA · Linux
- 7,3
- разница 1,8 балла
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:L/I:H/A:H
Оценка присваивающего органа и независимая оценка NVD. Разрыв означает, что критичность спорна.
Узнайте, когда запись изменится
- Нет в KEV: эксплуатация в реальных атаках не зафиксирована
- Публичного эксплойта нет
- Исправление выпущено
Если что-то из этого изменится, сообщим в ежедневной сводке.
У вас WordPress? Проверьте сайт бесплатно в WP Lens
Анализ Noroxi
Что это значит для вашей инфраструктуры?
Оценка выше формируется автоматически по данным записи и не знает вашей среды. Наша команда проверит на ваших системах, действительно ли уязвимость эксплуатируема и какой меры достаточно.
Мы используем этот продукт, нужна помощьЗатронутые системы
Затронута ли ваша версия?
Выберите продукт и введите свою версию. Она сравнивается с диапазонами этой записи прямо в браузере и никуда не отправляется.
| Вендор | Продукт | CPE |
|---|---|---|
| linux | linux kernel | cpe:2.3:o:linux:linux_kernel |
Затронутые версии
Диапазоны версий NVD (для продуктов из каталога). Добавьте продукт в стек с версией, и сопоставление будет по ним.
- linux linux kernel2.6.29 и новее · до 6.6.87
- linux linux kernel6.7 и новее · до 6.12.23
- linux linux kernel6.13 и новее · до 6.13.11
- linux linux kernel6.14 и новее · до 6.14.2
Версии, заявленные вендором
Диапазоны затронутых версий, заявленные назначающей организацией (Linux). Не зависят от анализа CPE в NVD и обычно опережают его.
Linux Linux
- 2.6.29затронута
- 2ab640379a0ab4cef746ced1d7e04a0941774bcb и новее · до a6623712ba8449876f0b3de9462831523fb851e4затронута · git
- 2ab640379a0ab4cef746ced1d7e04a0941774bcb и новее · до b07398e8a5da517083f5c3f2daa8f6681b48ab28затронута · git
- 2ab640379a0ab4cef746ced1d7e04a0941774bcb и новее · до 8d6373f83f367dbed316ddeb178130a3a64b5b67затронута · git
- 2ab640379a0ab4cef746ced1d7e04a0941774bcb и новее · до da381c33f3aa6406406c9fdf07b8b0b63e0ce722затронута · git
- 2ab640379a0ab4cef746ced1d7e04a0941774bcb и новее · до de6185b8892d88142ef69768fe4077cbf40109c0затронута · git
- 2ab640379a0ab4cef746ced1d7e04a0941774bcb и новее · до dc84bc2aba85a1508f04a936f9f9a15f64ebfb31затронута · git
- до 2.6.29не затронута · semver
- 6.1.160 и новее · до 6.1.* включительноне затронута · semver
- 6.6.87 и новее · до 6.6.* включительноне затронута · semver
Затронутые пакеты
Данные OSV и GitHub Advisory: экосистема, пакет и диапазон. Сопоставление SBOM использует эту таблицу.
| Экосистема | Пакет | Затронутый диапазон | Исправление |
|---|---|---|---|
| Debian:11 | linux-6.1 | до 6.1.162-1~deb11u1 | 6.1.162-1~deb11u1 |
| Debian:12 | linux | до 6.1.162-1 | 6.1.162-1 |
| Debian:13 | linux | до 6.12.25-1 | 6.12.25-1 |
| openSUSE:Leap 15.6 | dtb-aarch64 | до 6.4.0-150600.23.65.1 | 6.4.0-150600.23.65.1 |
| openSUSE:Leap 15.6 | kernel-64kb | до 6.4.0-150600.23.65.1 | 6.4.0-150600.23.65.1 |
| openSUSE:Leap 15.6 | kernel-azure | до 6.4.0-150600.8.48.1 | 6.4.0-150600.8.48.1 |
| openSUSE:Leap 15.6 | kernel-debug | до 6.4.0-150600.23.65.1 | 6.4.0-150600.23.65.1 |
| openSUSE:Leap 15.6 | kernel-default | до 6.4.0-150600.23.65.1 | 6.4.0-150600.23.65.1 |
| openSUSE:Leap 15.6 | kernel-default-base | до 6.4.0-150600.23.65.1.150600.12.28.4 | 6.4.0-150600.23.65.1.150600.12.28.4 |
| openSUSE:Leap 15.6 | kernel-docs | до 6.4.0-150600.23.65.1 | 6.4.0-150600.23.65.1 |
| openSUSE:Leap 15.6 | kernel-kvmsmall | до 6.4.0-150600.23.65.1 | 6.4.0-150600.23.65.1 |
| openSUSE:Leap 15.6 | kernel-obs-build | до 6.4.0-150600.23.65.1 | 6.4.0-150600.23.65.1 |
| openSUSE:Leap 15.6 | kernel-obs-qa | до 6.4.0-150600.23.65.1 | 6.4.0-150600.23.65.1 |
| openSUSE:Leap 15.6 | kernel-source | до 6.4.0-150600.23.65.1 | 6.4.0-150600.23.65.1 |
| openSUSE:Leap 15.6 | kernel-source-azure | до 6.4.0-150600.8.48.1 | 6.4.0-150600.8.48.1 |
| openSUSE:Leap 15.6 | kernel-syms | до 6.4.0-150600.23.65.1 | 6.4.0-150600.23.65.1 |
| openSUSE:Leap 15.6 | kernel-syms-azure | до 6.4.0-150600.8.48.1 | 6.4.0-150600.8.48.1 |
| openSUSE:Leap 15.6 | kernel-zfcpdump | до 6.4.0-150600.23.65.1 | 6.4.0-150600.23.65.1 |
| SUSE:Linux Enterprise Live Patching 15 SP6 | kernel-livepatch-SLE15-SP6_Update_14 | до 1-150600.13.3.4 | 1-150600.13.3.4 |
| SUSE:Linux Enterprise Live Patching 15 SP7 | kernel-livepatch-SLE15-SP7_Update_3 | до 1-150700.15.3.4 | 1-150700.15.3.4 |
| SUSE:Linux Enterprise Module for Basesystem 15 SP6 | kernel-64kb | до 6.4.0-150600.23.65.1 | 6.4.0-150600.23.65.1 |
| SUSE:Linux Enterprise Module for Basesystem 15 SP6 | kernel-default | до 6.4.0-150600.23.65.1 | 6.4.0-150600.23.65.1 |
| SUSE:Linux Enterprise Module for Basesystem 15 SP6 | kernel-default-base | до 6.4.0-150600.23.65.1.150600.12.28.4 | 6.4.0-150600.23.65.1.150600.12.28.4 |
| SUSE:Linux Enterprise Module for Basesystem 15 SP6 | kernel-source | до 6.4.0-150600.23.65.1 | 6.4.0-150600.23.65.1 |
+18
Тот же продукт
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-2207716 апр. 2025 г. · Revert "smb: client: fix TCP timers deadlock after rmmod"22Наблюдать
- ← РаньшеCVE-2025-2208316 апр. 2025 г. · vhost-scsi: Fix handling of multiple calls to vhost_scsi_set_endpoint31Наблюдать
- Позже →CVE-2025-2209516 апр. 2025 г. · PCI: brcmstb: Fix error path after a call to regulator_bulk_get()22Наблюдать
Исправление
На какую версию обновиться
Версии с исправлением по данным вендора, реестров пакетов и Microsoft. Перед обновлением сверьтесь с бюллетенем вендора.
| Продукт / пакет | Исправленная версия | Источник |
|---|---|---|
| Linux Linux | 8d6373f83f367dbed316ddeb178130a3a64b5b67 | Вендор (CNA) |
| Linux Linux | a6623712ba8449876f0b3de9462831523fb851e4 | Вендор (CNA) |
| Linux Linux | b07398e8a5da517083f5c3f2daa8f6681b48ab28 | Вендор (CNA) |
| Linux Linux | da381c33f3aa6406406c9fdf07b8b0b63e0ce722 | Вендор (CNA) |
| Linux Linux | dc84bc2aba85a1508f04a936f9f9a15f64ebfb31 | Вендор (CNA) |
| Linux Linux | de6185b8892d88142ef69768fe4077cbf40109c0 | Вендор (CNA) |
| cbl2 kernel 5.15.202.1-1 on CBL-Mariner 2.0 | — | Microsoft (MSRC) |
| debian:linux | 6.1.162-1 · Debian:12 | Реестр пакетов (OSV) |
| debian:linux-6.1 | 6.1.162-1~deb11u1 · Debian:11 | Реестр пакетов (OSV) |
| opensuse:dtb-aarch64 | 6.4.0-150600.23.65.1 · openSUSE:Leap 15.6 | Реестр пакетов (OSV) |
| opensuse:kernel-64kb | 6.4.0-150600.23.65.1 · openSUSE:Leap 15.6 | Реестр пакетов (OSV) |
| opensuse:kernel-azure | 6.4.0-150600.8.48.1 · openSUSE:Leap 15.6 | Реестр пакетов (OSV) |
| opensuse:kernel-debug | 6.4.0-150600.23.65.1 · openSUSE:Leap 15.6 | Реестр пакетов (OSV) |
| opensuse:kernel-default | 6.4.0-150600.23.65.1 · openSUSE:Leap 15.6 | Реестр пакетов (OSV) |
| opensuse:kernel-default-base | 6.4.0-150600.23.65.1.150600.12.28.4 · openSUSE:Leap 15.6 | Реестр пакетов (OSV) |
| opensuse:kernel-docs | 6.4.0-150600.23.65.1 · openSUSE:Leap 15.6 | Реестр пакетов (OSV) |
| opensuse:kernel-kvmsmall | 6.4.0-150600.23.65.1 · openSUSE:Leap 15.6 | Реестр пакетов (OSV) |
| opensuse:kernel-obs-build | 6.4.0-150600.23.65.1 · openSUSE:Leap 15.6 | Реестр пакетов (OSV) |
| opensuse:kernel-obs-qa | 6.4.0-150600.23.65.1 · openSUSE:Leap 15.6 | Реестр пакетов (OSV) |
| opensuse:kernel-source-azure | 6.4.0-150600.8.48.1 · openSUSE:Leap 15.6 | Реестр пакетов (OSV) |
| opensuse:kernel-syms-azure | 6.4.0-150600.8.48.1 · openSUSE:Leap 15.6 | Реестр пакетов (OSV) |
| suse:kernel-64kb | 6.4.0-150600.23.65.1 · SUSE:Linux Enterprise Module for Basesystem 15 SP6 | Реестр пакетов (OSV) |
| suse:kernel-azure | 6.4.0-150600.8.48.1 · SUSE:Linux Enterprise Module for Public Cloud 15 SP6 | Реестр пакетов (OSV) |
| suse:kernel-default | 6.4.0-150600.23.65.1 · SUSE:Linux Enterprise Module for Basesystem 15 SP6 | Реестр пакетов (OSV) |
| suse:kernel-default-base | 6.4.0-150600.23.65.1.150600.12.28.4 · SUSE:Linux Enterprise Module for Basesystem 15 SP6 | Реестр пакетов (OSV) |
| suse:kernel-docs | 6.4.0-150600.23.65.1 · SUSE:Linux Enterprise Module for Development Tools 15 SP6 | Реестр пакетов (OSV) |
| suse:kernel-livepatch-SLE15-SP6_Update_14 | 1-150600.13.3.4 · SUSE:Linux Enterprise Live Patching 15 SP6 | Реестр пакетов (OSV) |
| suse:kernel-obs-build | 6.4.0-150600.23.65.1 · SUSE:Linux Enterprise Module for Development Tools 15 SP6 | Реестр пакетов (OSV) |
| suse:kernel-source | 6.4.0-150600.23.65.1 · SUSE:Linux Enterprise Module for Basesystem 15 SP6 | Реестр пакетов (OSV) |
| suse:kernel-source-azure | 6.4.0-150600.8.48.1 · SUSE:Linux Enterprise Module for Public Cloud 15 SP6 | Реестр пакетов (OSV) |
+3
Статус эксплойта
Публичный эксплойт неизвестен
Публичный эксплойт пока не обнаружен. Это не значит, что вы в безопасности, лишь что порог чуть выше.
Контекст для исследователя
Для пентестеров и исследователей: профиль атаки, расхождение оценок, хронология, коммиты исправлений, авторы, кандидаты в варианты и цепочки, охват 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.
Журнал изменений
- Эксплуатация SSVC— → none
- Исправление✗ → ✓
Для отслеживаемых записей эти изменения приходят и как уведомления. →
Источники
Показать все источники (ещё 7)Свернуть
- git.kernel.org/stable/c/a6623712ba8449876f0b3de9462831523fb851e4
- git.kernel.org/stable/c/b07398e8a5da517083f5c3f2daa8f6681b48ab28
- git.kernel.org/stable/c/da381c33f3aa6406406c9fdf07b8b0b63e0ce722
- git.kernel.org/stable/c/dc84bc2aba85a1508f04a936f9f9a15f64ebfb31
- git.kernel.org/stable/c/de6185b8892d88142ef69768fe4077cbf40109c0
- cert-portal.siemens.com/productcert/html/ssa-019113.html
- cert-portal.siemens.com/productcert/html/ssa-457936.html
Рекомендации вендоров и официальные записи. Ссылки на эксплойты/PoC намеренно исключены.