В ядре Linux устранена следующая уязвимость: net: nexthop: исправить percpu use-after-free в remove_nh_grp_entry При удалении следующего пе…
В ядре Linux устранена следующая уязвимость: net: nexthop: исправить percpu use-after-free в remove_nh_grp_entry При удалении следующего пелка из группы remove_nh_grp_entry() публикуется новая группа через rcu_assign_pointer() затем немедленно освобождает удаленная статистика percpu поступок с free_percpu(). Тем не менее, synchronize_net() льготный период в звонире remove_nexthop_from_groups() Бегает за свободными. Читатели RCU, которые вошли до публикации еще увидеть старую группу и может отнестись к освобожденной статистике через nh_grp_entry_tts_inc() -> get_cpu_ptr(nhge->stats), вызывающий use-after-free на перкупо-памяти. Исправьте, отложив free_percpu() до тех пор, пока после synchronize_net() в звонивший. Удаленные записи прикованы через nh_list на местный отложенный Бесплатный список. После того, как льготный период завершится, и все читатели RCU имеют Законченная, статистика перку безопасно освобождается.
Продукт повторно использует или ссылается на память после её освобождения. В какой-то момент эта память может быть выделена повторно и сохранена в другом указателе, тогда как исходный указатель на освобождённую память используется вновь. Поскольку теперь по этому адресу может храниться посторонний объект, исходное использование указателя может привести к повреждению памяти или иным непреднамеренным последствиям. Если новая структура данных содержит указатель на функцию, то при исполнении может быть вызван код, контролируемый злоумышленником.
https://cwe.mitre.org/data/definitions/416.html →Открыть в коллекции CWE →| Продукт | Вендор | Статус |
|---|---|---|
| linux | Отслеживается | |
| linux | Отслеживается | |
| linux | Отслеживается | |
| linux | Отслеживается | |
| linux_kernel | * | Отслеживается |
| kernel-doc-6.12 | Отслеживается | |
| kernel-doc-6.12 | Отслеживается | |
| kernel-doc-6.12 | Отслеживается | |
| kernel-doc-6.18 | Отслеживается | |
| kernel-doc-6.18 | Отслеживается | |
| kernel-headers-6.12 | Отслеживается | |
| kernel-headers-6.12 | Отслеживается | |
| kernel-headers-6.12 | Отслеживается | |
| kernel-headers-6.18 | Отслеживается | |
| kernel-headers-6.18 | Отслеживается | |
| kernel-headers-modules-6.12 | Отслеживается | |
| kernel-headers-modules-6.12 | Отслеживается | |
| kernel-headers-modules-6.12 | Отслеживается | |
| kernel-headers-modules-6.18 | Отслеживается | |
| kernel-headers-modules-6.18 | Отслеживается |