Vulnerabilitatea în systemd care ar putea să vă permită să vă escaladați privilegiile

În managerul de sistem systemd identificat vulnerabilitate (CVE-2020-1712), care vă permite potențial să executați codul cu privilegii ridicate prin trimiterea unei cereri special concepute prin magistrala DBus. Problema este rezolvată în versiunea de testare systemd 245-rc1 (patch-uri care rezolvă problema: 1, 2, 3). Vulnerabilitatea a fost remediată în distribuții Ubuntu, Fedora, RHEL (apare în RHEL 8, dar nu afectează RHEL 7), CentOS и SUSE/openSUSE, dar la momentul scrierii știrii rămâne necorectate în Debian и Arch Linux.

Уязвимость вызвана обращением к уже освобождённой области памяти (use-after-free), возникающем при асинхронном выполнении запросов к Polkit во время обработки DBus-сообщений. Некоторые DBus-интерфейсы используют кэш для хранения объектов на короткое время и очищают элементы кэша как только шина DBus освободится для обработки других запросов. Если обработчик DBus-метода использует bus_verify_polkit_async(), ему возможно потребуется ожидать завершения действия в Polkit. После готовности Polkit обработчик вызывается повторно и обращается к уже ранее распределённым в памяти данным. Если запрос к Polkit выполняется слишком долго, то элементы в кэше успевают очистится до того, как обработчик DBus-метода будет вызван второй раз.

Printre serviciile care permit exploatarea vulnerabilității se remarcă systemd-machined, care furnizează API-ul DBus org.freedesktop.machine1.Image.Clone, ducând la stocarea temporară a datelor în cache și accesul asincron la Polkit. Interfață
org.freedesktop.machine1.Image.Clone este disponibil pentru toți utilizatorii neprivilegiati ai sistemului, care pot bloca serviciile de sistem sau pot provoca executarea codului ca root (prototipul de exploatare nu a fost încă demonstrat). Codul care a permis exploatarea vulnerabilității a fost adăugat în systemd-machined în versiunea 2015 sistemd 220 (RHEL 7.x folosește systemd 219).

Sursa: opennet.ru

Adauga un comentariu