В плъгина NetworkManager-libreswan, който добавя функционалност за свързване с VPN, съвместим с сервери, базирани на Libreswan и Cisco IPsec, е открита уязвимост (CVE-2024-9050), която може да се използва за повишаване на привилегиите на локален потребител. Уязвимостта е отстранена в обновлението на NetworkManager-libreswan 1.2.24. Можете да следите за наличието на актуализации в дистрибутивите на следните страници: Debian, Ubuntu, RHEL, SUSE/openSUSE, Fedora.
Проблемът е причинен от неправилна проверка на конфигурацията VPN, определяна от локален непривилегиран потребител и предавана директно в Libreswan при опит за активиране на връзка. По-специално, в плъгина не е извършвана проверка на използването на escape-символи, като нов ред „\n“, които могат да се използват за разделяне на отделни настройки, посочени в един ред.
Съответно, атакуващият можеше да зададе в един от разрешените параметри параметъра „leftupdown“, който е забранен за непривилегировани потребители и задава скрипт, изпълняван с правата на root по време на установяването на връзката. Например, за стартиране на програмата /bin/true към разрешения параметър „hostaddrfamily“ могат да се прикрепят следните настройки: hostaddrfamily=ipv4\n leftupdown=/bin/true\n ikev2=never\n leftxauthclient=yes\n leftusername=username\n phase2alg=aes256-sha1\n authby=secret\n left=faultroute\n leftmodecfgclient=yes\n right=172.31.79.2\nconn ign
Още една уязвимост е открита в фоновия процес guix-daemon, използван в дистрибутивите, базирани на пакетния мениджър GNU Guix. Уязвимостта представлява опасност за многопотребителски системи и позволява на локален потребител да получи привилегии на всеки потребител, извършващ сборка на пакети (build user), и да направи промени в резултата от сборката. Същността на уязвимостта е, че атакуващият може да стартира производна сборка и ако процесът на сборка бъде прекъснат, вече създадените suid-файлове ще останат достъпни за другите потребители на системата. След това атакуващият може да се възползва от създадения suid-файл, за да спре процеса на сборка, да отвори всеки файл чрез /proc/$PID/fd с правата на потребителя, извършващ сборката, и да презапише файловете с резултатите от сборката.
Източник: opennet.ru
