在systemd系统管理器中
Уязвимость вызвана обращением к уже освобождённой области памяти (use-after-free), возникающем при асинхронном выполнении запросов к Polkit во время обработки DBus-сообщений. Некоторые DBus-интерфейсы используют кэш для хранения объектов на короткое время и очищают элементы кэша как только шина DBus освободится для обработки других запросов. Если обработчик DBus-метода использует bus_verify_polkit_async(), ему возможно потребуется ожидать завершения действия в Polkit. После готовности Polkit обработчик вызывается повторно и обращается к уже ранее распределённым в памяти данным. Если запрос к Polkit выполняется слишком долго, то элементы в кэше успевают очистится до того, как обработчик DBus-метода будет вызван второй раз.
在允许利用该漏洞的服务中,值得注意的是systemd-machined,它提供了DBus API org.freedesktop.machine1.Image.Clone,导致数据在缓存中临时存储以及对Polkit的异步访问。 界面
org.freedesktop.machine1.Image.Clone 可供系统的所有非特权用户使用,这可能会导致 systemd 服务崩溃或可能导致代码以 root 身份执行(漏洞利用原型尚未演示)。 允许利用该漏洞的代码是
来源: opennet.ru