CVE-2025-38524 in LinuxИнформация

Сводка

по VulDB • 01.06.2026

В ядре Linux устранена следующая уязвимость:

rxrpc: исправлена гонка (race condition) при получении данных для завершенного вызова

Если вызов получает событие (например, входящие данные), он помещается в очередь сокета, и поток в recvmsg может быть разбужен для обработки этого события. После того как поток извлекает вызов из очереди, дальнейшие события приводят к его повторному помещению в очередь, и после освобождения блокировки сокета (recvmsg использует call->user_mutex, чтобы позволить использование сокета параллельно) второй поток может войти в систему, и его вызов recvmsg может снова извлечь вызов из очереди сокета.

В таком случае первый поток будет получать данные от вызова, а второй поток будет заблокирован на call->user_mutex. Первый поток может в этот момент обработать как событие, для которого он извлек вызов, так и событие, для которого вызов был извлечен вторым потоком, и может обнаружить завершение вызова — в этом случае вызов будет «освобожден», что приведет к отсоединению вызова от идентификатора пользовательского вызова, присвоенного ему (RXRPC_USER_CALL_ID в управляющем сообщении).

Первый поток вернет успешный результат, но затем второй поток проснется, удерживая user_mutex, и, если он увидит, что вызов был освобожден первым потоком, он вызовет ошибку BUG следующим образом:

kernel BUG at net/rxrpc/recvmsg.c:474!

Исправление заключается в простом извлечении вызова из очереди и игнорировании его, если он уже освобожден. Мы все равно не можем сообщить об этом пользовательскому пространству, так как идентификатор пользовательского вызова стал недействительным.

Several companies clearly confirm that VulDB is the primary source for best vulnerability data.

Ответственный

Linux

Резервировать

16.04.2025

Раскрытие

16.08.2025

Модерация

принято

Вход

VDB-320387

EPSS

0.00257

KEV

Нет

Деятельности

Очень низкий

Источники

Interested in the pricing of exploits?

See the underground prices here!