Maraming mga kahinaan ang nakita sa hotkey manager ng Wayland

Ilang araw na ang nakalilipas ang balita ay pinakawalan na ilang mga kahinaan ang natagpuan sa swhkd (Simple Wayland HotKey Daemon) na sanhi ng maling pangangasiwa ng mga pansamantalang file, mga opsyon sa command line at mga unix socket.

Ang program ay nakasulat sa Rust at pinangangasiwaan ang mga hotkey sa mga kapaligiran batay sa Wayland protocol (isang configuration file-compatible na analog ng proseso ng sxhkd na ginagamit sa X11-based na mga kapaligiran). Kasama sa package ang isang unprivileged na proseso ng swhks na nagsasagawa ng mga aksyon para sa mga hotkey at isang swhkd na proseso sa background na tumatakbo bilang root at nakikipag-ugnayan sa mga input device sa antas ng uinput API. Upang ayusin ang pakikipag-ugnayan sa pagitan ng swhks at swhkd, isang Unix socket ang ginagamit.

Ang mga patakaran ng Polkit ay nagpapahintulot sa sinumang lokal na user na patakbuhin ang /usr/bin/swhkd na proseso bilang ugat at ipasa ang mga arbitrary na parameter dito.

Ang pagsasama ng RPM package isinumite para sa openSUSE Ang Tumbleweed ay naglalaman ng mga hindi pangkaraniwang tuntunin ng Polkit sa definition file na nangangailangan ng pagsusuri ng SUSE security team.

Bilang resulta ng pagsusuri, maraming isyu sa seguridad ang natukoy. Ang mga indibidwal na isyu ay inilarawan sa detalyadong ulat sa ibaba.

Ng mga kahinaan na natukoy, ang mga sumusunod ay nabanggit:

CVE-2022-27815

Ang kahinaan na ito nagbibigay-daan upang i-save ang isang proseso PID sa isang file na may isang predictable pangalan at sa isang masusulat na direktoryo para sa iba pang mga user (/tmp/swhkd.pid), kung saan ang sinumang user ay maaaring lumikha ng isang /tmp/swhkd.pid file at ilagay ang pid ng isang umiiral na proseso dito, na gagawing imposibleng simulan ang swhkd.

Sa kawalan ng proteksyon laban sa paglikha ng mga simbolikong link sa /tmp, ang kahinaan ay maaaring gamitin upang lumikha o mag-overwrite ng mga file sa anumang direktoryo sa system (ang PID ay nakasulat sa file) o tukuyin ang nilalaman ng anumang file sa system (swhkd output ang buong nilalaman ng PID file sa stdout). Dapat tandaan na sa inilabas na pag-aayos, ang PID file ay hindi inilipat sa /run directory, ngunit sa /etc directory (/etc/swhkd/runtime/swhkd_{uid}.pid), kung saan hindi rin ito kabilang .

CVE-2022-27814

Ang kahinaan na ito ay nagbibigay-daan sa iyo na manipulahin ang "-c" na opsyon sa command line upang tukuyin ang isang configuration file maaaring matukoy ang pagkakaroon ng anumang file sa system.

Tulad ng kaso ng unang kahinaan, ang pag-aayos sa problema ay nakakalito: ang pag-aayos sa problema ay bumabagsak sa katotohanan na ang panlabas na "cat" na utility ('Command::new("/bin/cat").arg(path) ay ngayon ay inilunsad upang basahin ang config file.output()').

CVE-2022-27819

Itong problema ito ay may kaugnayan din sa paggamit ng "-c" na opsyon, na naglo-load at nag-parse ng buong configuration file nang hindi sinusuri ang laki at uri ng file.

Halimbawa, upang magdulot ng pagtanggi sa serbisyo dahil sa nauubusan ng libreng memory at paglikha ng stray I/O, maaari kang tumukoy ng block device sa pagsisimula ("pkexec /usr/bin/swhkd -d -c /dev/sda ») o isang character na device na naglalabas ng walang katapusang stream ng data.

Nalutas ang isyu sa pamamagitan ng pag-reset ng mga pribilehiyo bago buksan ang file, ngunit hindi kumpleto ang solusyon dahil ang User ID (UID) lang ang ni-reset, ngunit ang Group ID (GID) ay nananatiling pareho.

CVE-2022-27818

Ang kahinaan na ito nagbibigay-daan sa iyo na gumamit ng /tmp/swhkd.sock file upang lumikha ng Unix socket, na ginawa sa isang pampublikong masusulat na direktoryo, na nagdudulot ng mga katulad na isyu sa unang kahinaan (ang sinumang user ay maaaring lumikha ng /tmp/swhkd.sock at bumuo o humarang ng mga kaganapan sa keypress).

CVE-2022-27817

Sa kahinaang ito, natatanggap ang mga input event mula sa lahat ng device at sa lahat ng session, ibig sabihin, ang isang user sa ibang Wayland o console session ay maaaring maka-intercept ng mga event kapag pinindot ng ibang mga user ang mga hotkey.

CVE-2022-27816

Ang proseso ng swhks, tulad ng swhkd, ay gumagamit ng PID file /tmp/swhks.pid sa publicly writeable /tmp directory. Ang isyu ay katulad ng unang kahinaan, ngunit hindi kasing delikado, dahil ang swhks ay tumatakbo sa ilalim ng isang hindi privileged na user.

Panghuli, kung interesado kang malaman ang tungkol dito, maaari kang kumunsulta sa mga detalye sa sumusunod na link.


Iwanan ang iyong puna

Ang iyong email address ay hindi nai-publish. Mga kinakailangang patlang ay minarkahan ng *

*

*

  1. Responsable para sa data: AB Internet Networks 2008 SL
  2. Layunin ng data: Kontrolin ang SPAM, pamamahala ng komento.
  3. Legitimation: Ang iyong pahintulot
  4. Komunikasyon ng data: Ang data ay hindi maiparating sa mga third party maliban sa ligal na obligasyon.
  5. Imbakan ng data: Ang database na naka-host ng Occentus Networks (EU)
  6. Mga Karapatan: Sa anumang oras maaari mong limitahan, mabawi at tanggalin ang iyong impormasyon.