CVE-2025-21881: uprobes: Reject the shared zeropage in uprobe_write_opcode()
Оценка Noroxi
Приоритет: Наблюдать (оценка срочности 22/100)
- В отслеживаемых источниках (CISA KEV, Exploit-DB, Metasploit, Nuclei, GitHub) нет публичного эксплойта или записей об эксплуатации.
- Вероятность эксплуатации в ближайшие 30 дней: 0,21% (FIRST EPSS).
- Может быть вызвана пользователем с локальным доступом к системе. Достаточно учётной записи с низкими привилегиями. Действия пользователя не требуются. Особые условия не требуются; воспроизводится стабильно.
- Исправленная версия: Linux Linux 0b6f19714588cf2366b0364234f97ba963688f63, 13cca2b73e2b0ec3ea6d6615d615395621d22752, 54011fc94422f094eaf47555284de70a4bc32bb9.
Пока низкий приоритет. Обновитесь до Linux Linux 0b6f19714588cf2366b0364234f97ba963688f63, 13cca2b73e2b0ec3ea6d6615d615395621d22752, 54011fc94422f094eaf47555284de70a4bc32bb9 или новее.
Формируется автоматически по данным записи: CVSS (NVD и CNA), CISA KEV и SSVC, FIRST EPSS, источники эксплойтов, исправленные версии. Как мы считаем
Первоисточники: NVD · CVE.org · FIRST EPSS
In the Linux kernel, the following vulnerability has been resolved: uprobes: Reject the shared zeropage in uprobe_write_opcode() We triggered the following crash in syzkaller tests: BUG: Bad page state in process syz.7.38 pfn:1eff3 page: refcount:0 mapcount:0 mapping:0000000000000000 index:0x0 pfn:0x1eff3 flags: 0x3fffff00004004(referenced|reserved|node=0|zone=1|lastcpupid=0x1fffff) raw: 003fffff00004004 ffffe6c6c07bfcc8 ffffe6c6c07bfcc8 0000000000000000 raw: 0000000000000000 0000000000000000 00000000fffffffe 0000000000000000 page dumped because: PAGE_FLAGS_CHECK_AT_FREE flag(s) set Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.13.0-1ubuntu1.1 04/01/2014 Call Trace: <TASK> dump_stack_lvl+0x32/0x50 bad_page+0x69/0xf0 free_unref_page_prepare+0x401/0x500 free_unref_page+0x6d/0x1b0 uprobe_write_opcode+0x460/0x8e0 install_breakpoint.part.0+0x51/0x80 register_for_each_vma+0x1d9/0x2b0 __uprobe_register+0x245/0x300 bpf_uprobe_multi_link_attach+0x29b/0x4f0 link_create+0x1e2/0x280 __sys_bpf+0x75f/0xac0 __x64_sys_bpf+0x1a/0x30 do_syscall_64+0x56/0x100 entry_SYSCALL_64_after_hwframe+0x78/0xe2 BUG: Bad rss-counter state mm:00000000452453e0 type:MM_FILEPAGES val:-1 The following syzkaller test case can be used to reproduce: r2 = creat(&(0x7f0000000000)='./file0\x00', 0x8) write$nbd(r2, &(0x7f0000000580)=ANY=[], 0x10) r4 = openat(0xffffffffffffff9c, &(0x7f0000000040)='./file0\x00', 0x42, 0x0) mmap$IORING_OFF_SQ_RING(&(0x7f0000ffd000/0x3000)=nil, 0x3000, 0x0, 0x12, r4, 0x0) r5 = userfaultfd(0x80801) ioctl$UFFDIO_API(r5, 0xc018aa3f, &(0x7f0000000040)={0xaa, 0x20}) r6 = userfaultfd(0x80801) ioctl$UFFDIO_API(r6, 0xc018aa3f, &(0x7f0000000140)) ioctl$UFFDIO_REGISTER(r6, 0xc020aa00, &(0x7f0000000100)={{&(0x7f0000ffc000/0x4000)=nil, 0x4000}, 0x2}) ioctl$UFFDIO_ZEROPAGE(r5, 0xc020aa04, &(0x7f0000000000)={{&(0x7f0000ffd000/0x1000)=nil, 0x1000}}) r7 = bpf$PROG_LOAD(0x5, &(0x7f0000000140)={0x2, 0x3, &(0x7f0000000200)=ANY=[@ANYBLOB="1800000000120000000000000000000095"], &(0x7f0000000000)='GPL\x00', 0x7, 0x0, 0x0, 0x0, 0x0, '\x00', 0x0, @fallback=0x30, 0xffffffffffffffff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x10, 0x0, @void, @value}, 0x94) bpf$BPF_LINK_CREATE_XDP(0x1c, &(0x7f0000000040)={r7, 0x0, 0x30, 0x1e, @val=@uprobe_multi={&(0x7f0000000080)='./file0\x00', &(0x7f0000000100)=[0x2], 0x0, 0x0, 0x1}}, 0x40) The cause is that zero pfn is set to the PTE without increasing the RSS count in mfill_atomic_pte_zeropage() and the refcount of zero folio does not increase accordingly. Then, the operation on the same pfn is performed in uprobe_write_opcode()->__replace_page() to unconditional decrease the RSS count and old_folio's refcount. Therefore, two bugs are introduced: 1. The RSS count is incorrect, when process exit, the check_mm() report error "Bad rss-count". 2. The reserved folio (zero folio) is freed when folio->refcount is zero, then free_pages_prepare->free_page_is_bad() report error "Bad page state". There is more, the following warning could also theoretically be triggered: __replace_page() -> ... -> folio_remove_rmap_pte() -> VM_WARN_ON_FOLIO(is_zero_folio(folio), folio) Considering that uprobe hit on the zero folio is a very rare case, just reject zero old folio immediately after get_user_page_vma_remote(). [ mingo: Cleaned up the changelog ]
- Опубликовано
- 27 мар. 2025 г.
- Обновлено
- 5 нояб. 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.
Узнайте, когда запись изменится
- Нет в KEV: эксплуатация в реальных атаках не зафиксирована
- Публичного эксплойта нет
- Исправление выпущено
Если что-то из этого изменится, сообщим в ежедневной сводке.
У вас WordPress? Проверьте сайт бесплатно в WP Lens
Анализ Noroxi
Что это значит для вашей инфраструктуры?
Оценка выше формируется автоматически по данным записи и не знает вашей среды. Наша команда проверит на ваших системах, действительно ли уязвимость эксплуатируема и какой меры достаточно.
Мы используем этот продукт, нужна помощьЗатронутые системы
Затронута ли ваша версия?
Выберите продукт и введите свою версию. Она сравнивается с диапазонами этой записи прямо в браузере и никуда не отправляется.
| Вендор | Продукт | CPE |
|---|---|---|
| linux | linux kernel | cpe:2.3:o:linux:linux_kernel |
Затронутые версии
Диапазоны версий NVD (для продуктов из каталога). Добавьте продукт в стек с версией, и сопоставление будет по ним.
- linux linux kernel3.5 и новее · до 6.1.130
- linux linux kernel6.2 и новее · до 6.6.81
- linux linux kernel6.7 и новее · до 6.12.18
- linux linux kernel6.13 и новее · до 6.13.6
- linux linux kernel6.14
Версии, заявленные вендором
Диапазоны затронутых версий, заявленные назначающей организацией (Linux). Не зависят от анализа CPE в NVD и обычно опережают его.
Linux Linux
- 3.5затронута
- 2b144498350860b6ee9dc57ff27a93ad488de5dc и новее · до c4cb2bfa99513311886c1eb5c1c2ac26f3338a6eзатронута · git
- 2b144498350860b6ee9dc57ff27a93ad488de5dc и новее · до 0b6f19714588cf2366b0364234f97ba963688f63затронута · git
- 2b144498350860b6ee9dc57ff27a93ad488de5dc и новее · до 13cca2b73e2b0ec3ea6d6615d615395621d22752затронута · git
- 2b144498350860b6ee9dc57ff27a93ad488de5dc и новее · до 54011fc94422f094eaf47555284de70a4bc32bb9затронута · git
- 2b144498350860b6ee9dc57ff27a93ad488de5dc и новее · до bddf10d26e6e5114e7415a0e442ec6f51a559468затронута · git
- до 3.5не затронута · semver
- 6.1.130 и новее · до 6.1.* включительноне затронута · semver
- 6.6.81 и новее · до 6.6.* включительноне затронута · semver
- 6.12.18 и новее · до 6.12.* включительноне затронута · semver
Затронутые пакеты
Данные OSV и GitHub Advisory: экосистема, пакет и диапазон. Сопоставление SBOM использует эту таблицу.
| Экосистема | Пакет | Затронутый диапазон | Исправление |
|---|---|---|---|
| Debian:12 | linux | до 6.1.133-1 | 6.1.133-1 |
| Debian:13 | linux | до 6.12.19-1 | 6.12.19-1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP4-ESPOS | kernel-64kb | до 5.14.21-150400.24.173.1 | 5.14.21-150400.24.173.1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP4-ESPOS | kernel-docs | до 5.14.21-150400.24.173.1 | 5.14.21-150400.24.173.1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP4-ESPOS | kernel-obs-build | до 5.14.21-150400.24.173.1 | 5.14.21-150400.24.173.1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP4-ESPOS | kernel-source | до 5.14.21-150400.24.173.1 | 5.14.21-150400.24.173.1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP4-ESPOS | kernel-syms | до 5.14.21-150400.24.173.1 | 5.14.21-150400.24.173.1 |
| SUSE:Linux Enterprise Live Patching 15 SP4 | kernel-livepatch-SLE15-SP4_Update_43 | до 1-150400.9.3.1 | 1-150400.9.3.1 |
| SUSE:Linux Enterprise Micro 5.3 | kernel-default | до 5.14.21-150400.24.173.1 | 5.14.21-150400.24.173.1 |
| SUSE:Linux Enterprise Micro 5.3 | kernel-default-base | до 5.14.21-150400.24.173.1.150400.24.88.1 | 5.14.21-150400.24.173.1.150400.24.88.1 |
| SUSE:Linux Enterprise Micro 5.3 | kernel-rt | до 5.14.21-150400.15.127.1 | 5.14.21-150400.15.127.1 |
| SUSE:Linux Enterprise Micro 5.3 | kernel-source-rt | до 5.14.21-150400.15.127.1 | 5.14.21-150400.15.127.1 |
| SUSE:Linux Enterprise Server 15 SP4-LTSS | kernel-zfcpdump | до 5.14.21-150400.24.173.1 | 5.14.21-150400.24.173.1 |
| SUSE:Linux Micro 6.0 | kernel-livepatch-MICRO-6-0-RT_Update_7 | до 1-1.3 | 1-1.3 |
| SUSE:Linux Micro 6.0 | kernel-rt | до 6.4.0-30.1 | 6.4.0-30.1 |
| SUSE:Linux Micro 6.0 | kernel-source-rt | до 6.4.0-30.1 | 6.4.0-30.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-2187727 мар. 2025 г. · usbnet: gl620a: fix endpoint checking in genelink_bind()22Наблюдать
- ← РаньшеCVE-2025-2188027 мар. 2025 г. · drm/xe/userptr: fix EFAULT handling22Наблюдать
- Позже →CVE-2025-2188427 мар. 2025 г. · net: better track kernel sockets lifetime22Наблюдать
Исправление
На какую версию обновиться
Версии с исправлением по данным вендора, реестров пакетов и Microsoft. Перед обновлением сверьтесь с бюллетенем вендора.
| Продукт / пакет | Исправленная версия | Источник |
|---|---|---|
| Linux Linux | 0b6f19714588cf2366b0364234f97ba963688f63 | Вендор (CNA) |
| Linux Linux | 13cca2b73e2b0ec3ea6d6615d615395621d22752 | Вендор (CNA) |
| Linux Linux | 54011fc94422f094eaf47555284de70a4bc32bb9 | Вендор (CNA) |
| Linux Linux | bddf10d26e6e5114e7415a0e442ec6f51a559468 | Вендор (CNA) |
| Linux Linux | c4cb2bfa99513311886c1eb5c1c2ac26f3338a6e | Вендор (CNA) |
| debian:linux | 6.1.133-1 · Debian:12 | Реестр пакетов (OSV) |
| suse:kernel-64kb | 5.14.21-150400.24.173.1 · SUSE:Linux Enterprise High Performance Computing 15 SP4-ESPOS | Реестр пакетов (OSV) |
| suse:kernel-default | 5.14.21-150400.24.173.1 · SUSE:Linux Enterprise Micro 5.3 | Реестр пакетов (OSV) |
| suse:kernel-default-base | 5.14.21-150400.24.173.1.150400.24.88.1 · SUSE:Linux Enterprise Micro 5.3 | Реестр пакетов (OSV) |
| suse:kernel-docs | 5.14.21-150400.24.173.1 · SUSE:Linux Enterprise High Performance Computing 15 SP4-ESPOS | Реестр пакетов (OSV) |
| suse:kernel-livepatch-MICRO-6-0-RT_Update_7 | 1-1.3 · SUSE:Linux Micro 6.0 | Реестр пакетов (OSV) |
| suse:kernel-livepatch-SLE15-SP4_Update_43 | 1-150400.9.3.1 · SUSE:Linux Enterprise Live Patching 15 SP4 | Реестр пакетов (OSV) |
| suse:kernel-obs-build | 5.14.21-150400.24.173.1 · SUSE:Linux Enterprise High Performance Computing 15 SP4-ESPOS | Реестр пакетов (OSV) |
| suse:kernel-rt | 5.14.21-150400.15.127.1 · SUSE:Linux Enterprise Micro 5.3 | Реестр пакетов (OSV) |
| suse:kernel-source | 5.14.21-150400.24.173.1 · SUSE:Linux Enterprise High Performance Computing 15 SP4-ESPOS | Реестр пакетов (OSV) |
| suse:kernel-source-rt | 5.14.21-150400.15.127.1 · SUSE:Linux Enterprise Micro 5.3 | Реестр пакетов (OSV) |
| suse:kernel-syms | 5.14.21-150400.24.173.1 · SUSE:Linux Enterprise High Performance Computing 15 SP4-ESPOS | Реестр пакетов (OSV) |
| suse:kernel-zfcpdump | 5.14.21-150400.24.173.1 · SUSE:Linux Enterprise Server 15 SP4-LTSS | Реестр пакетов (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.
Журнал изменений
- Эксплуатация SSVC— → none
- Исправление✗ → ✓
Для отслеживаемых записей эти изменения приходят и как уведомления. →
Источники
Показать все источники (ещё 5)Свернуть
- git.kernel.org/stable/c/13cca2b73e2b0ec3ea6d6615d615395621d22752
- git.kernel.org/stable/c/54011fc94422f094eaf47555284de70a4bc32bb9
- git.kernel.org/stable/c/bddf10d26e6e5114e7415a0e442ec6f51a559468
- git.kernel.org/stable/c/c4cb2bfa99513311886c1eb5c1c2ac26f3338a6e
- lists.debian.org/debian-lts-announce/2025/05/msg00045.html
Рекомендации вендоров и официальные записи. Ссылки на эксплойты/PoC намеренно исключены.