Перейти к содержимому
Noroxi
CVE-2022-49465· NVD / CVE Program· CNA Linux

blk-throttle: Set BIO_THROTTLED when bio has been throttled

In the Linux kernel, the following vulnerability has been resolved: blk-throttle: Set BIO_THROTTLED when bio has been throttled 1.In current process, all bio will set the BIO_THROTTLED flag after __blk_throtl_bio(). 2.If bio needs to be throttled, it will start the timer and stop submit bio directly. Bio will submit in blk_throtl_dispatch_work_fn() when the timer expires.But in the current process, if bio is throttled. The BIO_THROTTLED will be set to bio after timer start. If the bio has been completed, it may cause use-after-free blow. BUG: KASAN: use-after-free in blk_throtl_bio+0x12f0/0x2c70 Read of size 2 at addr ffff88801b8902d4 by task fio/26380 dump_stack+0x9b/0xce print_address_description.constprop.6+0x3e/0x60 kasan_report.cold.9+0x22/0x3a blk_throtl_bio+0x12f0/0x2c70 submit_bio_checks+0x701/0x1550 submit_bio_noacct+0x83/0xc80 submit_bio+0xa7/0x330 mpage_readahead+0x380/0x500 read_pages+0x1c1/0xbf0 page_cache_ra_unbounded+0x471/0x6f0 do_page_cache_ra+0xda/0x110 ondemand_readahead+0x442/0xae0 page_cache_async_ra+0x210/0x300 generic_file_buffered_read+0x4d9/0x2130 generic_file_read_iter+0x315/0x490 blkdev_read_iter+0x113/0x1b0 aio_read+0x2ad/0x450 io_submit_one+0xc8e/0x1d60 __se_sys_io_submit+0x125/0x350 do_syscall_64+0x2d/0x40 entry_SYSCALL_64_after_hwframe+0x44/0xa9 Allocated by task 26380: kasan_save_stack+0x19/0x40 __kasan_kmalloc.constprop.2+0xc1/0xd0 kmem_cache_alloc+0x146/0x440 mempool_alloc+0x125/0x2f0 bio_alloc_bioset+0x353/0x590 mpage_alloc+0x3b/0x240 do_mpage_readpage+0xddf/0x1ef0 mpage_readahead+0x264/0x500 read_pages+0x1c1/0xbf0 page_cache_ra_unbounded+0x471/0x6f0 do_page_cache_ra+0xda/0x110 ondemand_readahead+0x442/0xae0 page_cache_async_ra+0x210/0x300 generic_file_buffered_read+0x4d9/0x2130 generic_file_read_iter+0x315/0x490 blkdev_read_iter+0x113/0x1b0 aio_read+0x2ad/0x450 io_submit_one+0xc8e/0x1d60 __se_sys_io_submit+0x125/0x350 do_syscall_64+0x2d/0x40 entry_SYSCALL_64_after_hwframe+0x44/0xa9 Freed by task 0: kasan_save_stack+0x19/0x40 kasan_set_track+0x1c/0x30 kasan_set_free_info+0x1b/0x30 __kasan_slab_free+0x111/0x160 kmem_cache_free+0x94/0x460 mempool_free+0xd6/0x320 bio_free+0xe0/0x130 bio_put+0xab/0xe0 bio_endio+0x3a6/0x5d0 blk_update_request+0x590/0x1370 scsi_end_request+0x7d/0x400 scsi_io_completion+0x1aa/0xe50 scsi_softirq_done+0x11b/0x240 blk_mq_complete_request+0xd4/0x120 scsi_mq_done+0xf0/0x200 virtscsi_vq_done+0xbc/0x150 vring_interrupt+0x179/0x390 __handle_irq_event_percpu+0xf7/0x490 handle_irq_event_percpu+0x7b/0x160 handle_irq_event+0xcc/0x170 handle_edge_irq+0x215/0xb20 common_interrupt+0x60/0x120 asm_common_interrupt+0x1e/0x40 Fix this by move BIO_THROTTLED set into the queue_lock.

ВысокаяCVSS 7.8 · v3.1—Эксплойта нет Есть исправление
Опубликовано
26 февр. 2025 г.
Обновлено
5 авг. 2026 г.
EPSS
0,3 % · 20-й процентиль
Следить за этой CVE

Войдите, чтобы следить · Вы получите уведомление, если запись попадёт в KEV, получит эксплойт или обновится.

Инструменты для отчёта

JSON

Оценка срочности

31

Наблюдать

Пока низкий приоритет.

CVSS
31 / 40 · 7.8 / 10
CISA KEV
0 / 30 · Нет в списке
EPSS
0 / 30 · 0,3 %

Решение CISA SSVC

Эксплуатация
нет
Автоматизируемо
нет
Техническое влияние
полное

Vulnrichment: входные данные дерева решений CISA.

Оценка CNA и NVD

NVD
—
CNA · Linux
7,8
NVD ещё не выставил свою оценку; показана оценка CNA.

Оценка присваивающего органа и независимая оценка NVD. Разрыв означает, что критичность спорна.

Анализ Noroxi

Анализа Noroxi для этой записи пока нет

Мы не пишем анализ вручную для сотен тысяч уязвимостей в базе; это было бы нечестно. Для значимых уязвимостей с реальным влиянием наша команда описывает механизм, обнаружение и устранение.

Мы используем этот продукт, нужна помощь

Затронутые системы

ВендорПродукт
linuxlinux kernel

Затронутые версии

Диапазоны версий NVD (для продуктов из каталога). Добавьте продукт в стек с версией, и сопоставление будет по ним.

  • linux linux kernelдо 5.10.248
  • linux linux kernel5.11 и новее · до 5.15.198
  • linux linux kernel5.16 и новее · до 5.17.14
  • linux linux kernel5.18 и новее · до 5.18.3

Версии, заявленные вендором

Диапазоны затронутых версий, заявленные назначающей организацией (Linux). Не зависят от анализа CPE в NVD и обычно опережают его.

  • Linux Linux

    • 3.11затронута
    • 2a0f61e6ecd08d260054bde4b096ff207ce5350f и новее · до 24ba80efaf6e772f6132465fad08e20fb4767da7затронута · git
    • 2a0f61e6ecd08d260054bde4b096ff207ce5350f и новее · до 047ea38d41d90d748bca812a43339632f52ba715затронута · git
    • 2a0f61e6ecd08d260054bde4b096ff207ce5350f и новее · до 0cfc8a0fb07cde61915e4a77c4794c47de3114a4затронута · git
    • 2a0f61e6ecd08d260054bde4b096ff207ce5350f и новее · до 935fa666534d7b7185e8c6b0191cd06281be4290затронута · git
    • 2a0f61e6ecd08d260054bde4b096ff207ce5350f и новее · до 5a011f889b4832aa80c2a872a5aade5c48d2756fзатронута · git
    • до 3.11не затронута · semver
    • 5.10.248 и новее · до 5.10.* включительноне затронута · semver
    • 5.15.198 и новее · до 5.15.* включительноне затронута · semver
    • 5.17.14 и новее · до 5.17.* включительноне затронута · semver

Затронутые пакеты

Данные OSV и GitHub Advisory: экосистема, пакет и диапазон. Сопоставление SBOM использует эту таблицу.

ЭкосистемаПакетЗатронутый диапазонИсправление
Debian:11linuxдо 5.10.249-15.10.249-1
Debian:12linuxдо 5.18.5-15.18.5-1
SUSE:Linux Enterprise High Performance Computing 15 SP4-ESPOSkernel-64kbдо 5.14.21-150400.24.161.15.14.21-150400.24.161.1
SUSE:Linux Enterprise High Performance Computing 15 SP4-ESPOSkernel-docsдо 5.14.21-150400.24.161.15.14.21-150400.24.161.1
SUSE:Linux Enterprise High Performance Computing 15 SP4-ESPOSkernel-obs-buildдо 5.14.21-150400.24.161.15.14.21-150400.24.161.1
SUSE:Linux Enterprise High Performance Computing 15 SP4-ESPOSkernel-sourceдо 5.14.21-150400.24.161.15.14.21-150400.24.161.1
SUSE:Linux Enterprise High Performance Computing 15 SP4-ESPOSkernel-symsдо 5.14.21-150400.24.161.15.14.21-150400.24.161.1
SUSE:Linux Enterprise Live Patching 12 SP5kgraft-patch-SLE12-SP5_Update_57до 16-2.116-2.1
SUSE:Linux Enterprise Live Patching 12 SP5kgraft-patch-SLE12-SP5_Update_58до 14-2.114-2.1
SUSE:Linux Enterprise Live Patching 12 SP5kgraft-patch-SLE12-SP5_Update_59до 13-2.113-2.1
SUSE:Linux Enterprise Live Patching 12 SP5kgraft-patch-SLE12-SP5_Update_60до 12-2.112-2.1
SUSE:Linux Enterprise Live Patching 12 SP5kgraft-patch-SLE12-SP5_Update_61до 18-4.118-4.1
SUSE:Linux Enterprise Live Patching 12 SP5kgraft-patch-SLE12-SP5_Update_61до 11-2.111-2.1
SUSE:Linux Enterprise Live Patching 12 SP5kgraft-patch-SLE12-SP5_Update_63до 7-2.17-2.1
SUSE:Linux Enterprise Live Patching 12 SP5kgraft-patch-SLE12-SP5_Update_64до 6-2.16-2.1
SUSE:Linux Enterprise Live Patching 12 SP5kgraft-patch-SLE12-SP5_Update_65до 4-2.14-2.1
SUSE:Linux Enterprise Live Patching 15 SP3kernel-livepatch-SLE15-SP3_Update_45до 17-150300.2.117-150300.2.1
SUSE:Linux Enterprise Live Patching 15 SP3kernel-livepatch-SLE15-SP3_Update_46до 16-150300.2.116-150300.2.1
SUSE:Linux Enterprise Live Patching 15 SP3kernel-livepatch-SLE15-SP3_Update_48до 13-150300.2.113-150300.2.1
SUSE:Linux Enterprise Live Patching 15 SP3kernel-livepatch-SLE15-SP3_Update_49до 12-150300.2.112-150300.2.1
SUSE:Linux Enterprise Live Patching 15 SP3kernel-livepatch-SLE15-SP3_Update_51до 8-150300.2.18-150300.2.1
SUSE:Linux Enterprise Live Patching 15 SP3kernel-livepatch-SLE15-SP3_Update_52до 7-150300.2.17-150300.2.1
SUSE:Linux Enterprise Live Patching 15 SP3kernel-livepatch-SLE15-SP3_Update_54до 4-150300.2.14-150300.2.1
SUSE:Linux Enterprise Live Patching 15 SP3kernel-livepatch-SLE15-SP3_Update_55до 4-150300.2.14-150300.2.1

+14

Тот же продукт

linux: все записи

Другие записи с наивысшей оценкой для того же основного продукта.

  • 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 KEV
    89Срочно
  • CVE-2021-22555Heap Out-Of-Bounds Write in Netfilter IP6T_SO_SET_REPLACEKEV
    85Срочно
  • CVE-2016-5195Race condition in mm/gup.c in the Linux kernel 2.x through 4.x before 4.8.3 allows local users to gain privileges by leveraging incorrect haKEV
    83Срочно
  • CVE-2019-13272In the Linux kernel before 5.1.17, ptrace_link in kernel/ptrace.c mishandles the recording of the credentials of a process that wants to creKEV
    77На этой неделе
  • CVE-2013-6282The (1) get_user and (2) put_user API functions in the Linux kernel before 3.5.5 on the v6k and v7 ARM platforms do not validate certain addKEV
    77На этой неделе
  • CVE-2013-2094The perf_swevent_init function in kernel/events/core.c in the Linux kernel before 3.8.9 uses an incorrect integer data type, which allows loKEV
    77На этой неделе

Исправление

На какую версию обновиться

Версии с исправлением по данным вендора, реестров пакетов и Microsoft. Перед обновлением сверьтесь с бюллетенем вендора.

Продукт / пакетИсправленная версияИсточник
Linux Linux047ea38d41d90d748bca812a43339632f52ba715Вендор (CNA)
Linux Linux0cfc8a0fb07cde61915e4a77c4794c47de3114a4Вендор (CNA)
Linux Linux24ba80efaf6e772f6132465fad08e20fb4767da7Вендор (CNA)
Linux Linux5a011f889b4832aa80c2a872a5aade5c48d2756fВендор (CNA)
Linux Linux935fa666534d7b7185e8c6b0191cd06281be4290Вендор (CNA)
debian:linux5.18.5-1 · Debian:12Реестр пакетов (OSV)
suse:kernel-livepatch-SLE15-SP3_Update_4517-150300.2.1 · SUSE:Linux Enterprise Live Patching 15 SP3Реестр пакетов (OSV)
suse:kernel-livepatch-SLE15-SP3_Update_4616-150300.2.1 · SUSE:Linux Enterprise Live Patching 15 SP3Реестр пакетов (OSV)
suse:kernel-livepatch-SLE15-SP3_Update_527-150300.2.1 · SUSE:Linux Enterprise Live Patching 15 SP3Реестр пакетов (OSV)
suse:kernel-livepatch-SLE15-SP3_Update_544-150300.2.1 · SUSE:Linux Enterprise Live Patching 15 SP3Реестр пакетов (OSV)
suse:kernel-livepatch-SLE15-SP4_Update_3211-150400.2.1 · SUSE:Linux Enterprise Live Patching 15 SP4Реестр пакетов (OSV)
suse:kernel-livepatch-SLE15-SP4_Update_3310-150400.2.1 · SUSE:Linux Enterprise Live Patching 15 SP4Реестр пакетов (OSV)
suse:kgraft-patch-SLE12-SP5_Update_5814-2.1 · SUSE:Linux Enterprise Live Patching 12 SP5Реестр пакетов (OSV)
suse:kgraft-patch-SLE12-SP5_Update_5913-2.1 · SUSE:Linux Enterprise Live Patching 12 SP5Реестр пакетов (OSV)
suse:kgraft-patch-SLE12-SP5_Update_6111-2.1 · SUSE:Linux Enterprise Live Patching 12 SP5Реестр пакетов (OSV)
suse:kgraft-patch-SLE12-SP5_Update_637-2.1 · SUSE:Linux Enterprise Live Patching 12 SP5Реестр пакетов (OSV)
suse:kgraft-patch-SLE12-SP5_Update_646-2.1 · SUSE:Linux Enterprise Live Patching 12 SP5Реестр пакетов (OSV)
suse:kgraft-patch-SLE12-SP5_Update_654-2.1 · SUSE:Linux Enterprise Live Patching 12 SP5Реестр пакетов (OSV)

Статус эксплойта

Публичный эксплойт неизвестен

Публичный эксплойт пока не обнаружен. Это не значит, что вы в безопасности, лишь что порог чуть выше.

Контекст для исследователя

Для пентестеров и исследователей: профиль атаки, расхождение оценок, хронология, коммиты исправлений, авторы, кандидаты в варианты и цепочки, охват bug bounty. Всё выводится из имеющихся данных; без кода эксплойтов.

Хронология

От публикации до сегодня: proof of concept, модуль Metasploit, CISA KEV и запись об исправлении. Даты — как сообщают источники.

Кроме публикации датированных событий нет.

EPSS за 120 дней

Ежедневная оценка FIRST EPSS; записываются только изменения от 0,01 (ступенчатый график).

Ссылки на патчи и коммиты

Коммиты, PR и diff среди источников. Отправная точка для patch-diff и поиска вариантов; это исправления, не эксплойты.

Среди источников нет ссылок на коммит или PR.

Нашедшие, сообщившие и аналитики, названные в записи CNA. Нажмите имя, чтобы увидеть другие записи исследователя.

В записи CNA нет авторов.

Кандидаты в варианты

Тот же продукт, тот же класс уязвимости, в пределах 18 месяцев. Если патч не закрыл первопричину, родственная ошибка здесь.

Ночной расчёт связей ничего не нашёл.

Кандидаты в цепочки

Обход аутентификации и уязвимость, требующая привилегий, в одном продукте и близко по времени: вместе они могут дать путь без аутентификации.

—

Охват bug bounty

Известной публичной программы нет.

Источник: bounty-targets-data (публичные списки HackerOne, Bugcrowd, Intigriti, YesWeHack).

Технические детали

Условия атаки

  • Может быть вызвана пользователем с локальным доступом к системе.
  • Достаточно учётной записи с низкими привилегиями.
  • Действия пользователя не требуются.
  • Особые условия не требуются; воспроизводится стабильно.

В случае успеха

Конфиденциальность
высокое · данные могут быть прочитаны
Целостность
высокое · данные или конфигурация могут быть изменены
Доступность
высокое · работа сервиса может быть нарушена
Вектор атаки
Локальный
Сложность атаки
Низкая
Требуемые привилегии
Низкие
Взаимодействие с пользователем
Не требуется
Область действия
Не изменяется
Влияние на конфиденциальность
Высокое
Влияние на целостность
Высокое
Влияние на доступность
Высокое

Класс уязвимости (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-secondary

Первопричина

После освобождения области памяти продолжает использоваться другая ссылка на неё. К этому моменту та же область может быть выделена под другие данные.

Ошибка в коде

Весь класс CWE-416

Показательный пример этого класса уязвимостей. Это не исходный код вендора; показан ошибочный шаблон и его исправление.

Уязвимый код

c
free(dev->buf);/* ... другой поток всё ещё работает ... */process(dev->buf);

Исправленный код

c
lock(&dev->lock);free(dev->buf);dev->buf = NULL;unlock(&dev->lock);

Контекст атаки

Шаблоны атак MITRE CAPEC и техники ATT&CK для этого класса уязвимости (CWE). Отправная точка для правил обнаружения и threat hunting.

У MITRE нет сопоставления CAPEC/ATT&CK для этого CWE.

Журнал изменений

  1. Исправление✗ → ✓

Для отслеживаемых записей эти изменения приходят и как уведомления. →

Источники

Все записи