CVE-2026-43420: ceph: fix i_nlink underrun during async unlink
Оценка Noroxi
Приоритет: Наблюдать (оценка срочности 18/100)
- В отслеживаемых источниках (CISA KEV, Exploit-DB, Metasploit, Nuclei, GitHub) нет публичного эксплойта или записей об эксплуатации.
- Вероятность эксплуатации в ближайшие 30 дней: 0,09% (FIRST EPSS).
- Может быть вызвана пользователем с локальным доступом к системе. Достаточно учётной записи с низкими привилегиями. Действия пользователя не требуются. Требуются особые условия, например определённое время или конфигурация.
- Исправленная версия: Linux Linux 6d5fd8bb574bef039eb3b738e523870433a2aeb9, 7db008e85a5d17b64bc5390b828bf457ae91a415, 8975b85b0d45ca811ace6fac5907652f2310e5ac.
- Упоминается в национальных бюллетенях кибербезопасности Турции (siberguvenlik.gov.tr): 1.
Пока низкий приоритет. Обновитесь до Linux Linux 6d5fd8bb574bef039eb3b738e523870433a2aeb9, 7db008e85a5d17b64bc5390b828bf457ae91a415, 8975b85b0d45ca811ace6fac5907652f2310e5ac или новее.
Формируется автоматически по данным записи: CVSS (NVD и CNA), CISA KEV и SSVC, FIRST EPSS, источники эксплойтов, исправленные версии. Как мы считаем
Первоисточники: NVD · CVE.org · FIRST EPSS
In the Linux kernel, the following vulnerability has been resolved: ceph: fix i_nlink underrun during async unlink During async unlink, we drop the `i_nlink` counter before we receive the completion (that will eventually update the `i_nlink`) because "we assume that the unlink will succeed". That is not a bad idea, but it races against deletions by other clients (or against the completion of our own unlink) and can lead to an underrun which emits a WARNING like this one: WARNING: CPU: 85 PID: 25093 at fs/inode.c:407 drop_nlink+0x50/0x68 Modules linked in: CPU: 85 UID: 3221252029 PID: 25093 Comm: php-cgi8.1 Not tainted 6.14.11-cm4all1-ampere #655 Hardware name: Supermicro ARS-110M-NR/R12SPD-A, BIOS 1.1b 10/17/2023 pstate: 60400009 (nZCv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=--) pc : drop_nlink+0x50/0x68 lr : ceph_unlink+0x6c4/0x720 sp : ffff80012173bc90 x29: ffff80012173bc90 x28: ffff086d0a45aaf8 x27: ffff0871d0eb5680 x26: ffff087f2a64a718 x25: 0000020000000180 x24: 0000000061c88647 x23: 0000000000000002 x22: ffff07ff9236d800 x21: 0000000000001203 x20: ffff07ff9237b000 x19: ffff088b8296afc0 x18: 00000000f3c93365 x17: 0000000000070000 x16: ffff08faffcbdfe8 x15: ffff08faffcbdfec x14: 0000000000000000 x13: 45445f65645f3037 x12: 34385f6369706f74 x11: 0000a2653104bb20 x10: ffffd85f26d73290 x9 : ffffd85f25664f94 x8 : 00000000000000c0 x7 : 0000000000000000 x6 : 0000000000000002 x5 : 0000000000000081 x4 : 0000000000000481 x3 : 0000000000000000 x2 : 0000000000000000 x1 : 0000000000000000 x0 : ffff08727d3f91e8 Call trace: drop_nlink+0x50/0x68 (P) vfs_unlink+0xb0/0x2e8 do_unlinkat+0x204/0x288 __arm64_sys_unlinkat+0x3c/0x80 invoke_syscall.constprop.0+0x54/0xe8 do_el0_svc+0xa4/0xc8 el0_svc+0x18/0x58 el0t_64_sync_handler+0x104/0x130 el0t_64_sync+0x154/0x158 In ceph_unlink(), a call to ceph_mdsc_submit_request() submits the CEPH_MDS_OP_UNLINK to the MDS, but does not wait for completion. Meanwhile, between this call and the following drop_nlink() call, a worker thread may process a CEPH_CAP_OP_IMPORT, CEPH_CAP_OP_GRANT or just a CEPH_MSG_CLIENT_REPLY (the latter of which could be our own completion). These will lead to a set_nlink() call, updating the `i_nlink` counter to the value received from the MDS. If that new `i_nlink` value happens to be zero, it is illegal to decrement it further. But that is exactly what ceph_unlink() will do then. The WARNING can be reproduced this way: 1. Force async unlink; only the async code path is affected. Having no real clue about Ceph internals, I was unable to find out why the MDS wouldn't give me the "Fxr" capabilities, so I patched get_caps_for_async_unlink() to always succeed. (Note that the WARNING dump above was found on an unpatched kernel, without this kludge - this is not a theoretical bug.) 2. Add a sleep call after ceph_mdsc_submit_request() so the unlink completion gets handled by a worker thread before drop_nlink() is called. This guarantees that the `i_nlink` is already zero before drop_nlink() runs. The solution is to skip the counter decrement when it is already zero, but doing so without a lock is still racy (TOCTOU). Since ceph_fill_inode() and handle_cap_grant() both hold the `ceph_inode_info.i_ceph_lock` spinlock while set_nlink() runs, this seems like the proper lock to protect the `i_nlink` updates. I found prior art in NFS and SMB (using `inode.i_lock`) and AFS (using `afs_vnode.cb_lock`). All three have the zero check as well.
- Опубликовано
- 8 мая 2026 г.
- Обновлено
- 17 июн. 2026 г.
- EPSS
- 0,0 % · 0-й процентиль
- CWE
- CWE-367
Инструменты для отчёта
Оценка срочности
18
Наблюдать
Пока низкий приоритет.
- CVSS
- 18 / 40 · 4.7 / 10
- CISA KEV
- 0 / 30 · Нет в списке
- EPSS
- 0 / 30 · 0,0 %
Узнайте, когда запись изменится
- Нет в KEV: эксплуатация в реальных атаках не зафиксирована
- Публичного эксплойта нет
- Исправление выпущено
Если что-то из этого изменится, сообщим в ежедневной сводке.
У вас WordPress? Проверьте сайт бесплатно в WP Lens
Анализ Noroxi
Что это значит для вашей инфраструктуры?
Оценка выше формируется автоматически по данным записи и не знает вашей среды. Наша команда проверит на ваших системах, действительно ли уязвимость эксплуатируема и какой меры достаточно.
Мы используем этот продукт, нужна помощьЗатронутые системы
Затронута ли ваша версия?
Выберите продукт и введите свою версию. Она сравнивается с диапазонами этой записи прямо в браузере и никуда не отправляется.
| Вендор | Продукт | CPE |
|---|---|---|
| linux | linux kernel | cpe:2.3:o:linux:linux_kernel |
Затронутые версии
Диапазоны версий NVD (для продуктов из каталога). Добавьте продукт в стек с версией, и сопоставление будет по ним.
- linux linux kernel5.7 и новее · до 5.10.253
- linux linux kernel5.11 и новее · до 5.15.203
- linux linux kernel5.16 и новее · до 6.1.167
- linux linux kernel6.2 и новее · до 6.6.130
- linux linux kernel6.7 и новее · до 6.12.78
- linux linux kernel6.13 и новее · до 6.18.19
- linux linux kernel6.19 и новее · до 6.19.9
- linux linux kernel7.0
Версии, заявленные вендором
Диапазоны затронутых версий, заявленные назначающей организацией (Linux). Не зависят от анализа CPE в NVD и обычно опережают его.
Linux Linux
- 5.7затронута
- 2ccb45462aeaf0831397b90d31d3d50a7704fa1f и новее · до 9b31e88ac5623d15c8bc46f69dfe1d3b43a8f67cзатронута · git
- 2ccb45462aeaf0831397b90d31d3d50a7704fa1f и новее · до 6d5fd8bb574bef039eb3b738e523870433a2aeb9затронута · git
- 2ccb45462aeaf0831397b90d31d3d50a7704fa1f и новее · до fcc477a6e8856c8a42b3c9e171724d8d6dfadd06затронута · git
- 2ccb45462aeaf0831397b90d31d3d50a7704fa1f и новее · до b3f5513141ecc6b277a8f7b7efe58a0cf9a5e859затронута · git
- 2ccb45462aeaf0831397b90d31d3d50a7704fa1f и новее · до aedd29386b23f3e1e6818943e11abfff2953732fзатронута · git
- 2ccb45462aeaf0831397b90d31d3d50a7704fa1f и новее · до 7db008e85a5d17b64bc5390b828bf457ae91a415затронута · git
- 2ccb45462aeaf0831397b90d31d3d50a7704fa1f и новее · до 8975b85b0d45ca811ace6fac5907652f2310e5acзатронута · git
- 2ccb45462aeaf0831397b90d31d3d50a7704fa1f и новее · до ce0123cbb4a40a2f1bbb815f292b26e96088639fзатронута · git
- до 5.7не затронута · semver
Затронутые пакеты
Данные OSV и GitHub Advisory: экосистема, пакет и диапазон. Сопоставление SBOM использует эту таблицу.
| Экосистема | Пакет | Затронутый диапазон | Исправление |
|---|---|---|---|
| Debian:12 | linux | до 6.1.170-1 | 6.1.170-1 |
| Debian:13 | linux | до 6.12.85-1 | 6.12.85-1 |
| Debian:14 | linux | до 6.19.10-1 | 6.19.10-1 |
| SUSE:Linux Enterprise Module for Legacy 15 SP7 | cephfs | до 1.0-150700.15.7.1 | 1.0-150700.15.7.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-2026-434178 мая 2026 г. · sched/mmcid: Handle vfork()/CLONE_VM correctly22Наблюдать
- ← РаньшеCVE-2026-434188 мая 2026 г. · sched/mmcid: Prevent CID stalls due to concurrent forks22Наблюдать
- Позже →CVE-2026-434248 мая 2026 г. · usb: gadget: f_tcm: Fix NULL pointer dereferences in nexus handling22Наблюдать
Исправление
На какую версию обновиться
Версии с исправлением по данным вендора, реестров пакетов и Microsoft. Перед обновлением сверьтесь с бюллетенем вендора.
| Продукт / пакет | Исправленная версия | Источник |
|---|---|---|
| Linux Linux | 6d5fd8bb574bef039eb3b738e523870433a2aeb9 | Вендор (CNA) |
| Linux Linux | 7db008e85a5d17b64bc5390b828bf457ae91a415 | Вендор (CNA) |
| Linux Linux | 8975b85b0d45ca811ace6fac5907652f2310e5ac | Вендор (CNA) |
| Linux Linux | 9b31e88ac5623d15c8bc46f69dfe1d3b43a8f67c | Вендор (CNA) |
| Linux Linux | aedd29386b23f3e1e6818943e11abfff2953732f | Вендор (CNA) |
| Linux Linux | b3f5513141ecc6b277a8f7b7efe58a0cf9a5e859 | Вендор (CNA) |
| Linux Linux | ce0123cbb4a40a2f1bbb815f292b26e96088639f | Вендор (CNA) |
| Linux Linux | fcc477a6e8856c8a42b3c9e171724d8d6dfadd06 | Вендор (CNA) |
| debian:linux | 6.1.170-1 · Debian:12 | Реестр пакетов (OSV) |
| suse:cephfs | 1.0-150700.15.7.1 · SUSE:Linux Enterprise Module for Legacy 15 SP7 | Реестр пакетов (OSV) |
Статус эксплойта
Публичный эксплойт неизвестен
Публичный эксплойт пока не обнаружен. Это не значит, что вы в безопасности, лишь что порог чуть выше.
Контекст для исследователя
Для пентестеров и исследователей: профиль атаки, расхождение оценок, хронология, коммиты исправлений, авторы, кандидаты в варианты и цепочки, охват bug bounty. Всё выводится из имеющихся данных; без кода эксплойтов.
Хронология
От публикации до сегодня: proof of concept, модуль Metasploit, CISA KEV и запись об исправлении. Даты — как сообщают источники.
Кроме публикации датированных событий нет.
Истории пока нет (накапливается ежедневным заданием EPSS).
Ссылки на патчи и коммиты
Коммиты, PR и diff среди источников. Отправная точка для patch-diff и поиска вариантов; это исправления, не эксплойты.
Среди источников нет ссылок на коммит или PR.
Авторы
Все исследователиНашедшие, сообщившие и аналитики, названные в записи CNA. Нажмите имя, чтобы увидеть другие записи исследователя.
В записи CNA нет авторов.
Кандидаты в варианты
Тот же продукт, тот же класс уязвимости, в пределах 18 месяцев. Если патч не закрыл первопричину, родственная ошибка здесь.
- CVE-2025-38352с разницей 290 дн.posix-cpu-timers: fix race between handle_posix_cpu_timers() and posix_cpu_timer_del()KEV61На этой неделе
- CVE-2026-64091с разницей 72 дн.batman-adv: tt: fix TOCTOU race for reported vlans39Наблюдать
- CVE-2026-64034с разницей 72 дн.net: mana: Fix TOCTOU double-fetch of hwc_msg_id from DMA buffer37Наблюдать
- CVE-2026-63937с разницей 72 дн.KVM: SEV: Use READ_ONCE() when reading entries/indices from PSC buffer35Наблюдать
- CVE-2026-63867с разницей 72 дн.mptcp: close TOCTOU race while computing rcv_wnd32Наблюдать
- CVE-2026-43433с разницей 0 дн.rust_binder: avoid reading the written value in offsets array31Наблюдать
Кандидаты в цепочки
Обход аутентификации и уязвимость, требующая привилегий, в одном продукте и близко по времени: вместе они могут дать путь без аутентификации.
—
Охват bug bounty
Известной публичной программы нет.
Источник: bounty-targets-data (публичные списки HackerOne, Bugcrowd, Intigriti, YesWeHack).
Национальное уведомление (Управление кибербезопасности Турции / USOM)
Официальные уведомления, ссылающиеся на эту запись; рекомендации — на странице ведомства.
- TR-26-0213 · 12 мая 2026 г.(Linux Kernel Güvenlik Bildirimi)
Технические детали
Условия атаки
- Может быть вызвана пользователем с локальным доступом к системе.
- Достаточно учётной записи с низкими привилегиями.
- Действия пользователя не требуются.
- Требуются особые условия, например определённое время или конфигурация.
В случае успеха
- Конфиденциальность
- нет
- Целостность
- нет
- Доступность
- высокое · работа сервиса может быть нарушена
- Вектор атаки
- Локальный
- Сложность атаки
- Высокая
- Требуемые привилегии
- Низкие
- Взаимодействие с пользователем
- Не требуется
- Область действия
- Не изменяется
- Влияние на конфиденциальность
- Нет
- Влияние на целостность
- Нет
- Влияние на доступность
- Высокое
Класс уязвимости (CWE)
CWE-367 · Time-of-check Time-of-use (TOCTOU) Race ConditionВектор CVSS
CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:H
nvd-primary
Контекст атаки
Шаблоны атак MITRE CAPEC и техники ATT&CK для этого класса уязвимости (CWE). Отправная точка для правил обнаружения и threat hunting.
Журнал изменений
- Исправление✗ → ✓
Для отслеживаемых записей эти изменения приходят и как уведомления. →
Источники
Показать все источники (ещё 7)Свернуть
- git.kernel.org/stable/c/7db008e85a5d17b64bc5390b828bf457ae91a415
- git.kernel.org/stable/c/8975b85b0d45ca811ace6fac5907652f2310e5ac
- git.kernel.org/stable/c/9b31e88ac5623d15c8bc46f69dfe1d3b43a8f67c
- git.kernel.org/stable/c/aedd29386b23f3e1e6818943e11abfff2953732f
- git.kernel.org/stable/c/b3f5513141ecc6b277a8f7b7efe58a0cf9a5e859
- git.kernel.org/stable/c/ce0123cbb4a40a2f1bbb815f292b26e96088639f
- git.kernel.org/stable/c/fcc477a6e8856c8a42b3c9e171724d8d6dfadd06
Рекомендации вендоров и официальные записи. Ссылки на эксплойты/PoC намеренно исключены.