Kerentanan dalam libinput yang membawa kepada pelaksanaan kod apabila peranti berniat jahat disambungkan

Pustaka libinput 1.20.1, yang menyediakan tindanan input bersatu yang membolehkan anda menggunakan cara pemprosesan peristiwa yang sama daripada peranti input dalam persekitaran berdasarkan Wayland dan X.Org, telah menghapuskan kelemahan (CVE-2022-1215), yang membolehkan anda mengatur pelaksanaan kod anda apabila menyambungkan peranti input yang diubah suai/dicontohi khas ke sistem. Masalahnya nyata dalam persekitaran berdasarkan X.Org dan Wayland, dan boleh dieksploitasi apabila menyambungkan peranti secara setempat dan semasa memanipulasi peranti dengan antara muka Bluetooth. Jika pelayan X berjalan sebagai akar, kerentanan membenarkan kod dilaksanakan dengan keistimewaan yang tinggi.

Masalahnya disebabkan oleh ralat pemformatan baris dalam kod yang bertanggungjawab untuk mengeluarkan maklumat sambungan peranti ke log. Khususnya, fungsi evdev_log_msg, menggunakan panggilan ke snprintf, menukar rentetan format asal entri log, yang mana nama peranti telah ditambahkan sebagai awalan. Seterusnya, rentetan yang diubah suai dihantar ke fungsi log_msg_va, yang seterusnya menggunakan fungsi printf. Oleh itu, hujah pertama untuk printf, yang mana penghuraian aksara format digunakan, mengandungi data luaran yang tidak sah dan penyerang boleh memulakan rasuah tindanan dengan menyebabkan peranti mengembalikan nama yang mengandungi aksara format rentetan (contohnya, "Evil %s") .

Sumber: opennet.ru

Tambah komen