Сизге артыкчылыктарыңызды жогорулатууга мүмкүндүк берүүчү системадагы аялуу

Системалык система менеджеринде аныкталган аялуу (CVE-2020-1712), бул DBus автобусу аркылуу атайын иштелип чыккан суроо-талапты жөнөтүү аркылуу кодуңузду жогорулатылган артыкчылыктар менен аткарууга мүмкүндүк берет. Көйгөй сыноо релизинде чечилет systemd 245-rc1 (маселени чечүүчү тактар: 1, 2, 3). Алсыздык бөлүштүрүүдө оңдолду Ubuntu, Fedora, RHEL (RHEL 8де пайда болот, бирок RHEL 7ге таасирин тийгизбейт), CentOS и SUSE/openSUSE, бирок жазып жаткан учурда жаңылыктар оңдолбогон бойдон калууда Debian и Arch Linux.

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

Алсыздыкты колдонууга мүмкүндүк берген кызматтардын арасында DBus API org.freedesktop.machine1.Image.Clone менен камсыз кылган systemd-machined белгиленип, кэште маалыматтарды убактылуу сактоого жана Polkitге асинхрондук кирүүгө алып келет. Интерфейс
org.freedesktop.machine1.Image.Clone тутумдун бардык артыкчылыктары жок колдонуучулары үчүн жеткиликтүү, ал система кызматтарын бузуп же коддун түпкү катары аткарылышына алып келиши мүмкүн (эксплейттин прототипи али көрсөтүлө элек). Алсыздыкты пайдаланууга жол берген код кошулду 2015-жылы systemd менен иштетилген версиясында 220 (RHEL 7.x systemd 219 колдонот).

Source: opennet.ru

Комментарий кошуу