hfsplus: fix missing hfs_bnode_get() in __hfs_bnode_create
Оценка Noroxi
Приоритет: Наблюдать (оценка срочности 30/100)
- В отслеживаемых источниках (CISA KEV, Exploit-DB, Metasploit, Nuclei, GitHub) нет публичного эксплойта или записей об эксплуатации.
- Вероятность эксплуатации в ближайшие 30 дней: 0,58% (FIRST EPSS).
- Может быть вызвана любым, у кого есть доступ через интернет. Учётная запись или пароль не требуются. Действия пользователя не требуются. Особые условия не требуются; воспроизводится стабильно.
- Исправленная версия: Linux Linux 152af114287851583cf7e0abc10129941f19466a, 39e149d58ef4d7883cbf87448d39d51292fd342d, 3b0fc7af50b896d0f3d104e70787ba1973bc0b56; azl3 kernel 6.6.119.3-3 on Azure Linux 3.0 6.6.121.1-1.
Пока низкий приоритет. Обновитесь до Linux Linux 152af114287851583cf7e0abc10129941f19466a, 39e149d58ef4d7883cbf87448d39d51292fd342d, 3b0fc7af50b896d0f3d104e70787ba1973bc0b56; azl3 kernel 6.6.119.3-3 on Azure Linux 3.0 6.6.121.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: hfsplus: fix missing hfs_bnode_get() in __hfs_bnode_create When sync() and link() are called concurrently, both threads may enter hfs_bnode_find() without finding the node in the hash table and proceed to create it. Thread A: hfsplus_write_inode() -> hfsplus_write_system_inode() -> hfs_btree_write() -> hfs_bnode_find(tree, 0) -> __hfs_bnode_create(tree, 0) Thread B: hfsplus_create_cat() -> hfs_brec_insert() -> hfs_bnode_split() -> hfs_bmap_alloc() -> hfs_bnode_find(tree, 0) -> __hfs_bnode_create(tree, 0) In this case, thread A creates the bnode, sets refcnt=1, and hashes it. Thread B also tries to create the same bnode, notices it has already been inserted, drops its own instance, and uses the hashed one without getting the node. ``` node2 = hfs_bnode_findhash(tree, cnid); if (!node2) { <- Thread A hash = hfs_bnode_hash(cnid); node->next_hash = tree->node_hash[hash]; tree->node_hash[hash] = node; tree->node_hash_cnt++; } else { <- Thread B spin_unlock(&tree->hash_lock); kfree(node); wait_event(node2->lock_wq, !test_bit(HFS_BNODE_NEW, &node2->flags)); return node2; } ``` However, hfs_bnode_find() requires each call to take a reference. Here both threads end up setting refcnt=1. When they later put the node, this triggers: BUG_ON(!atomic_read(&node->refcnt)) In this scenario, Thread B in fact finds the node in the hash table rather than creating a new one, and thus must take a reference. Fix this by calling hfs_bnode_get() when reusing a bnode newly created by another thread to ensure the refcount is updated correctly. A similar bug was fixed in HFS long ago in commit a9dc087fd3c4 ("fix missing hfs_bnode_get() in __hfs_bnode_create") but the same issue remained in HFS+ until now.
- Опубликовано
- 13 янв. 2026 г.
- Обновлено
- 5 авг. 2026 г.
- EPSS
- 0,5 % · 47-й процентиль
- CWE
- —
Инструменты для отчёта
Оценка срочности
30
Наблюдать
Пока низкий приоритет.
- CVSS
- 30 / 40 · 7.5 / 10
- CISA KEV
- 0 / 30 · Нет в списке
- EPSS
- 0 / 30 · 0,5 %
Оценка CNA и NVD
- NVD
- —
- CNA · Linux
- 7,5
- NVD ещё не выставил свою оценку; показана оценка CNA.
Оценка присваивающего органа и независимая оценка NVD. Разрыв означает, что критичность спорна.
Узнайте, когда запись изменится
- Нет в KEV: эксплуатация в реальных атаках не зафиксирована
- Публичного эксплойта нет
- Исправление выпущено
Если что-то из этого изменится, сообщим в ежедневной сводке.
У вас WordPress? Проверьте сайт бесплатно в WP Lens
Анализ Noroxi
Что это значит для вашей инфраструктуры?
Оценка выше формируется автоматически по данным записи и не знает вашей среды. Наша команда проверит на ваших системах, действительно ли уязвимость эксплуатируема и какой меры достаточно.
Мы используем этот продукт, нужна помощьЗатронутые системы
Затронута ли ваша версия?
Выберите продукт и введите свою версию. Она сравнивается с диапазонами этой записи прямо в браузере и никуда не отправляется.
—
Версии, заявленные вендором
Диапазоны затронутых версий, заявленные назначающей организацией (Linux). Не зависят от анализа CPE в NVD и обычно опережают его.
Linux Linux
- 2.6.12затронута
- 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 и новее · до 3b0fc7af50b896d0f3d104e70787ba1973bc0b56затронута · git
- 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 и новее · до 39e149d58ef4d7883cbf87448d39d51292fd342dзатронута · git
- 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 и новее · до b68dc4134b18a3922cd33439ec614aad4172bc86затронута · git
- 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 и новее · до b9d1c6bb5f19460074ce9862cb80be86b5fb0a50затронута · git
- 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 и новее · до 457f795e7abd7770de10216d7f9994a3f12a56d6затронута · git
- 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 и новее · до 5882e7c8cdbb5e254a69628b780acff89c78071eзатронута · git
- 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 и новее · до 152af114287851583cf7e0abc10129941f19466aзатронута · git
- до 2.6.12не затронута · semver
- 5.10.248 и новее · до 5.10.* включительноне затронута · semver
Затронутые пакеты
Данные OSV и GitHub Advisory: экосистема, пакет и диапазон. Сопоставление SBOM использует эту таблицу.
| Экосистема | Пакет | Затронутый диапазон | Исправление |
|---|---|---|---|
| Debian:12 | linux | до 6.1.162-1 | 6.1.162-1 |
| Debian:13 | linux | до 6.12.69-1 | 6.12.69-1 |
| Debian:14 | linux | до 6.18.3-1 | 6.18.3-1 |
Тот же продукт
linux: все записиДругие записи с наивысшей оценкой для того же основного продукта.
- CVE-2026-74705udp: fix potential use-after-free in tunnel segmentation40В плане
- CVE-2026-74612veth: fix skb length accounting after XDP frag adjustment40В плане
- CVE-2026-74475vxlan: use neigh_ha_snapshot() in route_shortcircuit()40В плане
Опубликованы до и после этой записи в том же продукте
- ← РаньшеCVE-2025-6877113 янв. 2026 г. · ocfs2: fix kernel BUG in ocfs2_find_victim_chain0Наблюдать
- ← РаньшеCVE-2025-6877213 янв. 2026 г. · f2fs: fix to avoid updating compression context during writeback0Наблюдать
- Позже →CVE-2025-6877713 янв. 2026 г. · Input: ti_am335x_tsc - fix off-by-one error in wire_order validation0Наблюдать
Исправление
На какую версию обновиться
Версии с исправлением по данным вендора, реестров пакетов и Microsoft. Перед обновлением сверьтесь с бюллетенем вендора.
| Продукт / пакет | Исправленная версия | Источник |
|---|---|---|
| Linux Linux | 152af114287851583cf7e0abc10129941f19466a | Вендор (CNA) |
| Linux Linux | 39e149d58ef4d7883cbf87448d39d51292fd342d | Вендор (CNA) |
| Linux Linux | 3b0fc7af50b896d0f3d104e70787ba1973bc0b56 | Вендор (CNA) |
| Linux Linux | 457f795e7abd7770de10216d7f9994a3f12a56d6 | Вендор (CNA) |
| Linux Linux | 5882e7c8cdbb5e254a69628b780acff89c78071e | Вендор (CNA) |
| Linux Linux | b68dc4134b18a3922cd33439ec614aad4172bc86 | Вендор (CNA) |
| Linux Linux | b9d1c6bb5f19460074ce9862cb80be86b5fb0a50 | Вендор (CNA) |
| azl3 kernel 6.6.119.3-3 on Azure Linux 3.0 | 6.6.121.1-1 · CBL-Mariner Releases | Microsoft (MSRC) |
| debian:linux | 6.1.162-1 · Debian:12 | Реестр пакетов (OSV) |
Статус эксплойта
Публичный эксплойт неизвестен
Публичный эксплойт пока не обнаружен. Это не значит, что вы в безопасности, лишь что порог чуть выше.
Контекст для исследователя
Для пентестеров и исследователей: профиль атаки, расхождение оценок, хронология, коммиты исправлений, авторы, кандидаты в варианты и цепочки, охват bug bounty. Всё выводится из имеющихся данных; без кода эксплойтов.
Хронология
От публикации до сегодня: proof of concept, модуль Metasploit, CISA KEV и запись об исправлении. Даты — как сообщают источники.
Кроме публикации датированных событий нет.
Ежедневная оценка 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:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
nvd-secondary
Контекст атаки
Шаблоны атак MITRE CAPEC и техники ATT&CK для этого класса уязвимости (CWE). Отправная точка для правил обнаружения и threat hunting.
У MITRE нет сопоставления CAPEC/ATT&CK для этого CWE.
Журнал изменений
- Исправление✗ → ✓
Для отслеживаемых записей эти изменения приходят и как уведомления. →
Источники
Показать все источники (ещё 6)Свернуть
- git.kernel.org/stable/c/39e149d58ef4d7883cbf87448d39d51292fd342d
- git.kernel.org/stable/c/3b0fc7af50b896d0f3d104e70787ba1973bc0b56
- git.kernel.org/stable/c/457f795e7abd7770de10216d7f9994a3f12a56d6
- git.kernel.org/stable/c/5882e7c8cdbb5e254a69628b780acff89c78071e
- git.kernel.org/stable/c/b68dc4134b18a3922cd33439ec614aad4172bc86
- git.kernel.org/stable/c/b9d1c6bb5f19460074ce9862cb80be86b5fb0a50
Рекомендации вендоров и официальные записи. Ссылки на эксплойты/PoC намеренно исключены.