Beberapa kelemahan ditemui dalam pengurus hotkey Wayland

Beberapa hari yang lalu berita itu dikeluarkan bahawa beberapa kelemahan ditemui dalam swhkd (Simple Wayland HotKey Daemon) disebabkan oleh pengendalian fail sementara, pilihan baris arahan dan soket unix yang salah.

Program ini ditulis dalam Rust dan mengendalikan kekunci pintas dalam persekitaran berdasarkan protokol Wayland (analog serasi fail konfigurasi bagi proses sxhkd yang digunakan dalam persekitaran berasaskan X11). Pakej ini termasuk proses swhks tanpa hak yang melakukan tindakan untuk kekunci pintas dan proses latar belakang swhkd yang berjalan sebagai akar dan berinteraksi dengan peranti input pada peringkat API uinput. Untuk mengatur interaksi antara swhks dan swhkd, soket Unix digunakan.

Peraturan Polkit membenarkan mana-mana pengguna tempatan menjalankan proses /usr/bin/swhkd sebagai akar dan menghantar parameter sewenang-wenangnya kepadanya.

Penyepaduan pakej RPM dikemukakan untuk openSUSE Tumbleweed mengandungi peraturan Polkit yang luar biasa dalam fail definisi yang memerlukan semakan oleh pasukan keselamatan SUSE.

Hasil daripada semakan, pelbagai isu keselamatan telah dikenal pasti. Isu individu diterangkan dalam laporan terperinci di bawah.

Daripada kelemahan yang dikenal pasti, berikut disebutkan:

CVE-2022 27815-

Kerentanan ini membenarkan untuk menyimpan proses PID dalam fail dengan nama yang boleh diramal dan dalam direktori boleh tulis untuk pengguna lain (/tmp/swhkd.pid), di mana mana-mana pengguna boleh mencipta fail /tmp/swhkd.pid dan meletakkan pid proses sedia ada ke dalamnya, yang akan menjadikannya mustahil untuk memulakan swhkd.

Sekiranya tiada perlindungan daripada mencipta pautan simbolik dalam /tmp, kelemahan boleh digunakan untuk mencipta atau menulis ganti fail dalam mana-mana direktori pada sistem (PID ditulis pada fail) atau tentukan kandungan mana-mana fail pada sistem (swhkd mengeluarkan keseluruhan kandungan fail PID kepada stdout). Perlu diingatkan bahawa dalam pembetulan yang dikeluarkan, fail PID tidak dialihkan ke direktori /run, tetapi ke direktori /etc (/etc/swhkd/runtime/swhkd_{uid}.pid), di mana ia bukan milik sama ada .

CVE-2022 27814-

Kerentanan ini membolehkan anda memanipulasi pilihan baris arahan "-c" untuk menentukan fail konfigurasi boleh menentukan kewujudan mana-mana fail pada sistem.

Seperti dalam kes kelemahan pertama, menyelesaikan masalah adalah membingungkan: membetulkan masalah berpunca daripada fakta bahawa utiliti "kucing" luaran ('Command::new("/bin/cat").arg(path) ialah kini dilancarkan untuk membaca fail konfigurasi.output()').

CVE-2022 27819-

Masalah ini ia juga berkaitan dengan penggunaan pilihan "-c"., yang memuatkan dan menghuraikan keseluruhan fail konfigurasi tanpa menyemak saiz dan jenis fail.

Contohnya, untuk menyebabkan penafian perkhidmatan kerana kehabisan memori percuma dan mencipta I/O sesat, anda boleh menentukan peranti blok semasa permulaan ("pkexec /usr/bin/swhkd -d -c /dev/sda ») atau peranti aksara yang mengeluarkan aliran data yang tidak terhingga.

Isu telah diselesaikan dengan menetapkan semula keistimewaan sebelum membuka fail, tetapi penyelesaiannya tidak lengkap kerana hanya ID Pengguna (UID) ditetapkan semula, tetapi ID Kumpulan (GID) kekal sama.

CVE-2022 27818-

Kerentanan ini membolehkan anda menggunakan fail /tmp/swhkd.sock untuk mencipta soket Unix, yang dicipta dalam direktori boleh tulis awam, menyebabkan isu yang serupa dengan kerentanan pertama (mana-mana pengguna boleh mencipta /tmp/swhkd.sock dan menjana atau memintas peristiwa penekanan kekunci).

CVE-2022 27817-

Dalam kelemahan ini, peristiwa input diterima daripada semua peranti dan dalam semua sesi, iaitu, pengguna dalam Wayland atau sesi konsol lain boleh memintas acara apabila pengguna lain menekan kekunci pintas.

CVE-2022 27816-

Proses swhks, seperti swhkd, menggunakan fail PID /tmp/swhks.pid dalam direktori /tmp yang boleh ditulis secara terbuka. Isu ini serupa dengan kelemahan pertama, tetapi tidak begitu berbahaya, kerana swhks dijalankan di bawah pengguna yang tidak mempunyai keistimewaan.

Akhirnya, jika anda berminat untuk mengetahui lebih lanjut mengenainya, anda boleh berjumpa dengan perincian dalam pautan berikut.


Tinggalkan komen anda

Alamat email anda tidak akan disiarkan. Ruangan yang diperlukan ditanda dengan *

*

*

  1. Bertanggungjawab untuk data: AB Internet Networks 2008 SL
  2. Tujuan data: Mengendalikan SPAM, pengurusan komen.
  3. Perundangan: Persetujuan anda
  4. Komunikasi data: Data tidak akan disampaikan kepada pihak ketiga kecuali dengan kewajiban hukum.
  5. Penyimpanan data: Pangkalan data yang dihoskan oleh Occentus Networks (EU)
  6. Hak: Pada bila-bila masa anda boleh menghadkan, memulihkan dan menghapus maklumat anda.