В ядре Linux устранена следующая уязвимость: net: shaper: защитить поздний доступ для чтения к иерархии Мы ищем netdev во время подготовки операций Netlink (предварительные обратные вызовы). и возьмите ссылку на него. Затем позже в теле обратного вызова мы берем его замок или RCU, которые являются настоящей защитой. Это неправильно, преобразование из рефа в заблокированный netdev должен включать проверку работоспособности (проверка, не был ли netdev уже не зарегистрирован).
Исправлены случаи чтения (те, что под RCU). Для записи требуется отдельное изменение, чтобы защитить от создания иерархия после того, как сброс уже запущен.
Показать оригинальное описание (EN)
In the Linux kernel, the following vulnerability has been resolved: net: shaper: protect late read accesses to the hierarchy We look up a netdev during prep of Netlink ops (pre- callbacks) and take a ref to it. Then later in the body of the callback we take its lock or RCU which are the actual protections. This is not proper, a conversion from a ref to a locked netdev must include a liveness check (a check if the netdev hasn't been unregistered already). Fix the read cases (those under RCU). Writes needs a separate change to protect from creating the hierarchy after flush has already run.