Vulnerabilidade en systemd que podería permitirche aumentar os teus privilexios

No xestor do sistema systemd identificado vulnerabilidade (CVE-2020-1712), que potencialmente lle permite executar o seu código con privilexios elevados enviando unha solicitude especialmente deseñada a través do bus DBus. O problema solucionouse na versión de proba systemd 245-rc1 (parches que solucionan o problema: 1, 2, 3). A vulnerabilidade foi corrixida nas distribucións Ubuntu, Fedora, RHEL (aparece en RHEL 8, pero non afecta a RHEL 7), CentOS и SUSE/openSUSE, pero no momento de escribir a noticia segue sen corrixirse en Debian и Arch Linux.

A vulnerabilidade prodúcese polo acceso a unha área de memoria xa liberada (use-after-free), que ocorre cando se executan de forma asíncrona solicitudes a Polkit mentres se procesan mensaxes DBus. Algunhas interfaces DBus usan unha caché para almacenar obxectos durante un tempo curto e limpar as entradas da caché en canto o bus DBus estea libre para procesar outras solicitudes. Se un controlador de método DBus usa bus_verify_polkit_async(), pode ter que esperar a que se complete a acción de Polkit. Despois de que Polkit estea listo, o manejador é chamado de novo e accede aos datos xa distribuídos na memoria. Se unha solicitude a Polkit leva demasiado tempo, os elementos da caché borraranse antes de que se chame ao manejador do método DBus unha segunda vez.

Entre os servizos que permiten a explotación da vulnerabilidade, destácase systemd-machined, que proporciona a API DBus org.freedesktop.machine1.Image.Clone, que leva ao almacenamento temporal de datos na caché e ao acceso asíncrono a Polkit. Interface
org.freedesktop.machine1.Image.Clone está dispoñible para todos os usuarios sen privilexios do sistema, que poden fallar os servizos do sistema ou provocar que o código se execute como root (o prototipo de exploit aínda non se demostrou). O código que permitiu a explotación da vulnerabilidade foi engadido en systemd-machined na versión 2015 systemd 220 (RHEL 7.x usa systemd 219).

Fonte: opennet.ru

Engadir un comentario