Red Hati arendatavates taustsüsteemides tuned, mis automaatselt optimeerib riistvara ja tuumaseadeid vastavalt praegusele koormusele, on tuvastatud haavatavus (CVE-2024-52336), mis võimaldab kohalikel, mitteprivilegeeritud kasutajatel käivitada komandeid root-õigustega.
Probleem esineb DBus meetodi "com.redhat.tuned.instance_create" rakenduses, mis on mõeldud pluginainete eksemplaride loomiseks ja kuhu saab edastada "script_pre" ja "script_post" parameetreid skriptide määramiseks, mis käivitatakse enne või pärast plugina eksemplari loomist. Probleemi olemus seisneb selles, et Polkit'i seaded võimaldavad igal sissetuleval kohalikel kasutajal ilma autentimiseta saata DBus-päringu sellele meetodile, samas kui tundetu protsess töötab root-õigustega ning käivitab "script_pre" ja "script_post" parameetrites määratud skriptid samuti root-õigustega. Näiteks, et käivitada skripti /path/to/myscript.sh root-õigustega, piisab kasutajal käivitada käsk: gdbus call -y -d com.redhat.tuned -o /Tuned \ -m com.redhat.tuned.control.instance_create cpu myinstance \ ‘{«script_pre»: «/path/to/myscript.sh», «devices»: «*»}’
DBus-Meetodis „com.redhat.tuned.instance_create“ on samuti vähem ohtlik haavatavus (CVE-2024-52337), mis tuleneb plugina instantsi nime väärtuse puhastamise puudumisest logi väljundis. Ründaja võib lisada nime, mis sisaldab reavahetust ja escape-märke terminali emulaatoris, mida saab kasutada logi struktuuri rikkumiseks ning tegevuste täitmiseks, kui käsku „tuned-adm get_instances“ terminalis väljundina näidatakse. EVIL=`echo -e "this is\nevil\033[?1047h"` gdbus call -y -d com.redhat.tuned -o /Tuned -m com.redhat.tuned.control.instance_create cpu "$EVIL" '{"devices": "*"}'
Haavatavused ilmnevad alates versioonist tuned 2.23, mis ilmus juuni alguses 2024, ning on parandatud väljaandes tuned 2.24.1. Suuremates distributsioonides on probleemid parandatud RHEL 9, Fedora 40, Arch Linuxi ja Gentoo puhul. Ubuntu, Debian ja SUSE/openSUSE stabiilsetes harudes haavatavusi ei esine, kuna need pakuvad vanemaid versioone tuned (<2.23), mis ei ole haavatavad.
Allikas: opennet.ru
