В ядре Linux устранена следующая уязвимость:
ksmbd: исправлено использование после освобождения в Same_client_has_lease()
Same_client_has_lease() возвращает указатель opinfo из ci->m_op_list
после удаления ci->m_lock без получения ссылки.
smb_grant_oplock() затем разыменовывает этот указатель в copy_lease() и
при проверке Break_cnt. Одновременное закрытие может удалить старую аренду.
из ci->m_op_list и отбросьте последнюю ссылку перед тем, как вызывающая сторона использует
возвращаемый указатель, что приводит к использованию после освобождения.
Возьмите ссылку, когда Same_client_has_lease() выбирает существующую аренду,
отбросьте любое предыдущее совпадение во время сканирования и отпустите возвращенное
ссылка в smb_grant_oplock() после копирования состояния аренды.
Показать оригинальное описание (EN)
In the Linux kernel, the following vulnerability has been resolved: ksmbd: fix use-after-free in same_client_has_lease() same_client_has_lease() returns an opinfo pointer from ci->m_op_list after dropping ci->m_lock without taking a reference. smb_grant_oplock() then dereferences that pointer in copy_lease() and when checking breaking_cnt. A concurrent close can remove the old lease from ci->m_op_list and drop the last reference before the caller uses the returned pointer, leading to a use-after-free. Take a reference when same_client_has_lease() selects an existing lease, drop any previous match while scanning, and release the returned reference in smb_grant_oplock() after copying the lease state.
Характеристики атаки
Последствия
Строка CVSS v3.1
Уязвимые продукты 7
| Конфигурация | От (включительно) | До (исключительно) |
|---|---|---|
|
Linux Linux_Kernel
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
|
5.15
|
5.15.212
|
|
Linux Linux_Kernel
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
|
5.15
|
6.1.178
|
|
Linux Linux_Kernel
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
|
5.15
|
6.6.145
|
|
Linux Linux_Kernel
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
|
5.15
|
6.12.97
|
|
Linux Linux_Kernel
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
|
5.15
|
6.18.40
|
|
Linux Linux_Kernel
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
|
5.15
|
7.1.5
|
|
Linux Linux_Kernel
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
|
5.15
|
7.2-rc1
|