CVE-2021-47222: net: bridge: fix vlan tunnel dst refcnt when egressing
Оценка Noroxi
Приоритет: Наблюдать (оценка срочности 31/100)
- В отслеживаемых источниках (CISA KEV, Exploit-DB, Metasploit, Nuclei, GitHub) нет публичного эксплойта или записей об эксплуатации.
- Вероятность эксплуатации в ближайшие 30 дней: 0,24% (FIRST EPSS).
- Может быть вызвана пользователем с локальным доступом к системе. Достаточно учётной записи с низкими привилегиями. Действия пользователя не требуются. Особые условия не требуются; воспроизводится стабильно.
- Исправленная версия: Linux Linux 25053a8404ba17ca48f5553d487afc1882e9f56c, 42020f7f37a90d24b9551f5f7eba3f7c7c102968, 79855be6445b6592bddb7bd7167083ec8cdbd73f.
- Упоминается в национальных бюллетенях кибербезопасности Турции (siberguvenlik.gov.tr): 1.
Пока низкий приоритет. Обновитесь до Linux Linux 25053a8404ba17ca48f5553d487afc1882e9f56c, 42020f7f37a90d24b9551f5f7eba3f7c7c102968, 79855be6445b6592bddb7bd7167083ec8cdbd73f или новее.
Формируется автоматически по данным записи: CVSS (NVD и CNA), CISA KEV и SSVC, FIRST EPSS, источники эксплойтов, исправленные версии. Как мы считаем
Первоисточники: NVD · CVE.org · FIRST EPSS
In the Linux kernel, the following vulnerability has been resolved: net: bridge: fix vlan tunnel dst refcnt when egressing The egress tunnel code uses dst_clone() and directly sets the result which is wrong because the entry might have 0 refcnt or be already deleted, causing number of problems. It also triggers the WARN_ON() in dst_hold()[1] when a refcnt couldn't be taken. Fix it by using dst_hold_safe() and checking if a reference was actually taken before setting the dst. [1] dmesg WARN_ON log and following refcnt errors WARNING: CPU: 5 PID: 38 at include/net/dst.h:230 br_handle_egress_vlan_tunnel+0x10b/0x134 [bridge] Modules linked in: 8021q garp mrp bridge stp llc bonding ipv6 virtio_net CPU: 5 PID: 38 Comm: ksoftirqd/5 Kdump: loaded Tainted: G W 5.13.0-rc3+ #360 Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.14.0-1.fc33 04/01/2014 RIP: 0010:br_handle_egress_vlan_tunnel+0x10b/0x134 [bridge] Code: e8 85 bc 01 e1 45 84 f6 74 90 45 31 f6 85 db 48 c7 c7 a0 02 19 a0 41 0f 94 c6 31 c9 31 d2 44 89 f6 e8 64 bc 01 e1 85 db 75 02 <0f> 0b 31 c9 31 d2 44 89 f6 48 c7 c7 70 02 19 a0 e8 4b bc 01 e1 49 RSP: 0018:ffff8881003d39e8 EFLAGS: 00010246 RAX: 0000000000000000 RBX: 0000000000000000 RCX: 0000000000000000 RDX: 0000000000000000 RSI: 0000000000000001 RDI: ffffffffa01902a0 RBP: ffff8881040c6700 R08: 0000000000000000 R09: 0000000000000001 R10: 2ce93d0054fe0d00 R11: 54fe0d00000e0000 R12: ffff888109515000 R13: 0000000000000000 R14: 0000000000000001 R15: 0000000000000401 FS: 0000000000000000(0000) GS:ffff88822bf40000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 00007f42ba70f030 CR3: 0000000109926000 CR4: 00000000000006e0 Call Trace: br_handle_vlan+0xbc/0xca [bridge] __br_forward+0x23/0x164 [bridge] deliver_clone+0x41/0x48 [bridge] br_handle_frame_finish+0x36f/0x3aa [bridge] ? skb_dst+0x2e/0x38 [bridge] ? br_handle_ingress_vlan_tunnel+0x3e/0x1c8 [bridge] ? br_handle_frame_finish+0x3aa/0x3aa [bridge] br_handle_frame+0x2c3/0x377 [bridge] ? __skb_pull+0x33/0x51 ? vlan_do_receive+0x4f/0x36a ? br_handle_frame_finish+0x3aa/0x3aa [bridge] __netif_receive_skb_core+0x539/0x7c6 ? __list_del_entry_valid+0x16e/0x1c2 __netif_receive_skb_list_core+0x6d/0xd6 netif_receive_skb_list_internal+0x1d9/0x1fa gro_normal_list+0x22/0x3e dev_gro_receive+0x55b/0x600 ? detach_buf_split+0x58/0x140 napi_gro_receive+0x94/0x12e virtnet_poll+0x15d/0x315 [virtio_net] __napi_poll+0x2c/0x1c9 net_rx_action+0xe6/0x1fb __do_softirq+0x115/0x2d8 run_ksoftirqd+0x18/0x20 smpboot_thread_fn+0x183/0x19c ? smpboot_unregister_percpu_thread+0x66/0x66 kthread+0x10a/0x10f ? kthread_mod_delayed_work+0xb6/0xb6 ret_from_fork+0x22/0x30 ---[ end trace 49f61b07f775fd2b ]--- dst_release: dst:00000000c02d677a refcnt:-1 dst_release underflow
- Опубликовано
- 21 мая 2024 г.
- Обновлено
- 5 авг. 2026 г.
- EPSS
- 0,2 % · 16-й процентиль
- CWE
- CWE-416
Инструменты для отчёта
Оценка срочности
31
Наблюдать
Пока низкий приоритет.
- CVSS
- 31 / 40 · 7.8 / 10
- CISA KEV
- 0 / 30 · Нет в списке
- EPSS
- 0 / 30 · 0,2 %
Решение CISA SSVC
- Эксплуатация
- нет
- Автоматизируемо
- нет
- Техническое влияние
- частичное
Vulnrichment: входные данные дерева решений CISA.
Оценка CNA и NVD
- NVD
- 7,8
- CNA · Linux
- 7,8
- совпадают
Оценка присваивающего органа и независимая оценка NVD. Разрыв означает, что критичность спорна.
Узнайте, когда запись изменится
- Нет в KEV: эксплуатация в реальных атаках не зафиксирована
- Публичного эксплойта нет
- Исправление выпущено
Если что-то из этого изменится, сообщим в ежедневной сводке.
У вас WordPress? Проверьте сайт бесплатно в WP Lens
Анализ Noroxi
Что это значит для вашей инфраструктуры?
Оценка выше формируется автоматически по данным записи и не знает вашей среды. Наша команда проверит на ваших системах, действительно ли уязвимость эксплуатируема и какой меры достаточно.
Мы используем этот продукт, нужна помощьЗатронутые системы
Затронута ли ваша версия?
Выберите продукт и введите свою версию. Она сравнивается с диапазонами этой записи прямо в браузере и никуда не отправляется.
| Вендор | Продукт | CPE |
|---|---|---|
| linux | linux kernel | cpe:2.3:o:linux:linux_kernel |
Затронутые версии
Диапазоны версий NVD (для продуктов из каталога). Добавьте продукт в стек с версией, и сопоставление будет по ним.
- linux linux kernel4.11 и новее · до 4.14.238
- linux linux kernel4.15 и новее · до 4.19.196
- linux linux kernel4.20 и новее · до 5.4.128
- linux linux kernel5.5 и новее · до 5.10.46
- linux linux kernel5.11 и новее · до 5.12.13
- linux linux kernel5.13
Версии, заявленные вендором
Диапазоны затронутых версий, заявленные назначающей организацией (Linux). Не зависят от анализа CPE в NVD и обычно опережают его.
Linux Linux
- 4.11затронута
- 11538d039ac6efcf4f1a6c536e1b87cd3668a9fd и новее · до 42020f7f37a90d24b9551f5f7eba3f7c7c102968затронута · git
- 11538d039ac6efcf4f1a6c536e1b87cd3668a9fd и новее · до 84fc1c944e45ab317e2e70a0e7f76fa2a5e43b6eзатронута · git
- 11538d039ac6efcf4f1a6c536e1b87cd3668a9fd и новее · до 79855be6445b6592bddb7bd7167083ec8cdbd73fзатронута · git
- 11538d039ac6efcf4f1a6c536e1b87cd3668a9fd и новее · до fc7fdd8c5c2ad2fe3e297698be9d4dbe4a4e0579затронута · git
- 11538d039ac6efcf4f1a6c536e1b87cd3668a9fd и новее · до 25053a8404ba17ca48f5553d487afc1882e9f56cзатронута · git
- 11538d039ac6efcf4f1a6c536e1b87cd3668a9fd и новее · до cfc579f9d89af4ada58c69b03bcaa4887840f3b3затронута · git
- до 4.11не затронута · semver
- 4.14.238 и новее · до 4.14.* включительноне затронута · semver
- 4.19.196 и новее · до 4.19.* включительноне затронута · semver
Затронутые пакеты
Данные OSV и GitHub Advisory: экосистема, пакет и диапазон. Сопоставление SBOM использует эту таблицу.
| Экосистема | Пакет | Затронутый диапазон | Исправление |
|---|---|---|---|
| Debian:12 | linux | до 5.10.46-1 | 5.10.46-1 |
| SUSE:Linux Enterprise Live Patching 12 SP5 | kernel-default | до 4.12.14-122.247.1 | 4.12.14-122.247.1 |
| SUSE:Linux Enterprise Live Patching 12 SP5 | kgraft-patch-SLE12-SP5_Update_65 | до 1-8.3.1 | 1-8.3.1 |
| SUSE:Linux Enterprise Server 12 SP5-LTSS | kernel-source | до 4.12.14-122.247.1 | 4.12.14-122.247.1 |
| SUSE:Linux Enterprise Server 12 SP5-LTSS | kernel-syms | до 4.12.14-122.247.1 | 4.12.14-122.247.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-2020-3678821 мая 2024 г. · drm/nouveau: avoid a use-after-free when BO init fails31Наблюдать
- ← РаньшеCVE-2021-4722121 мая 2024 г. · mm/slub: actually fix freelist pointer vs redzoning22Наблюдать
- Позже →CVE-2021-4722321 мая 2024 г. · net: bridge: fix vlan tunnel dst null pointer dereference22Наблюдать
Исправление
На какую версию обновиться
Версии с исправлением по данным вендора, реестров пакетов и Microsoft. Перед обновлением сверьтесь с бюллетенем вендора.
| Продукт / пакет | Исправленная версия | Источник |
|---|---|---|
| Linux Linux | 25053a8404ba17ca48f5553d487afc1882e9f56c | Вендор (CNA) |
| Linux Linux | 42020f7f37a90d24b9551f5f7eba3f7c7c102968 | Вендор (CNA) |
| Linux Linux | 79855be6445b6592bddb7bd7167083ec8cdbd73f | Вендор (CNA) |
| Linux Linux | 84fc1c944e45ab317e2e70a0e7f76fa2a5e43b6e | Вендор (CNA) |
| Linux Linux | cfc579f9d89af4ada58c69b03bcaa4887840f3b3 | Вендор (CNA) |
| Linux Linux | fc7fdd8c5c2ad2fe3e297698be9d4dbe4a4e0579 | Вендор (CNA) |
| debian:linux | 5.10.46-1 · Debian:12 | Реестр пакетов (OSV) |
| suse:kernel-default | 4.12.14-122.247.1 · SUSE:Linux Enterprise Live Patching 12 SP5 | Реестр пакетов (OSV) |
| suse:kernel-source | 4.12.14-122.247.1 · SUSE:Linux Enterprise Server 12 SP5-LTSS | Реестр пакетов (OSV) |
| suse:kernel-syms | 4.12.14-122.247.1 · SUSE:Linux Enterprise Server 12 SP5-LTSS | Реестр пакетов (OSV) |
| suse:kgraft-patch-SLE12-SP5_Update_65 | 1-8.3.1 · SUSE:Linux Enterprise Live Patching 12 SP5 | Реестр пакетов (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).
Национальное уведомление (Управление кибербезопасности Турции / USOM)
Официальные уведомления, ссылающиеся на эту запись; рекомендации — на странице ведомства.
- TR-24-0519 · 22 мая 2024 г.(Linux Kernel Güncellemesi)
Технические детали
Условия атаки
- Может быть вызвана пользователем с локальным доступом к системе.
- Достаточно учётной записи с низкими привилегиями.
- Действия пользователя не требуются.
- Особые условия не требуются; воспроизводится стабильно.
В случае успеха
- Конфиденциальность
- высокое · данные могут быть прочитаны
- Целостность
- высокое · данные или конфигурация могут быть изменены
- Доступность
- высокое · работа сервиса может быть нарушена
- Вектор атаки
- Локальный
- Сложность атаки
- Низкая
- Требуемые привилегии
- Низкие
- Взаимодействие с пользователем
- Не требуется
- Область действия
- Не изменяется
- Влияние на конфиденциальность
- Высокое
- Влияние на целостность
- Высокое
- Влияние на доступность
- Высокое
Класс уязвимости (CWE)
CWE-416 · Use After FreeВектор CVSS
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
nvd-primary
Первопричина
После освобождения области памяти продолжает использоваться другая ссылка на неё. К этому моменту та же область может быть выделена под другие данные.
Ошибка в коде
Весь класс CWE-416Показательный пример этого класса уязвимостей. Это не исходный код вендора; показан ошибочный шаблон и его исправление.
Уязвимый код
free(dev->buf);
/* ... другой поток всё ещё работает ... */
process(dev->buf);Исправленный код
lock(&dev->lock);
free(dev->buf);
dev->buf = NULL;
unlock(&dev->lock);Контекст атаки
Шаблоны атак MITRE CAPEC и техники ATT&CK для этого класса уязвимости (CWE). Отправная точка для правил обнаружения и threat hunting.
У MITRE нет сопоставления CAPEC/ATT&CK для этого CWE.
Журнал изменений
- Исправление✗ → ✓
Для отслеживаемых записей эти изменения приходят и как уведомления. →
Источники
Показать все источники (ещё 5)Свернуть
- git.kernel.org/stable/c/42020f7f37a90d24b9551f5f7eba3f7c7c102968
- git.kernel.org/stable/c/79855be6445b6592bddb7bd7167083ec8cdbd73f
- git.kernel.org/stable/c/84fc1c944e45ab317e2e70a0e7f76fa2a5e43b6e
- git.kernel.org/stable/c/cfc579f9d89af4ada58c69b03bcaa4887840f3b3
- git.kernel.org/stable/c/fc7fdd8c5c2ad2fe3e297698be9d4dbe4a4e0579
Рекомендации вендоров и официальные записи. Ссылки на эксплойты/PoC намеренно исключены.