Keselamatan Linux menghadapi satu lagi cabaran susulan penemuan kerentanan CVE-2026-31431, digelar "Salin Gagal" oleh para penyelidik di Xint Code. Jauh daripada menjadi kecacatan teori, masalah reka bentuk ini Ia membolehkan pengguna setempat tanpa keistimewaan untuk meningkatkan kebenaran mereka dan mendapat akses penuh. sebagai pengguna super dengan cara yang boleh diramal dan senyap.
Para penyelidik menyebut bahawa kelemahan ini telah berjaya dieksploitasi dalam pengedaran terkemuka seperti Ubuntu, Amazon Linux, RHEL dan SUSE, mengesahkan bahawa mana-mana sistem yang menjalankan kernel selepas versi 4.14 dan teruskan Mendayakan sokongan untuk soket AF_ALG berpotensi terdedah terhadap serangan ini.
Operasi Di Tempat dan Limpahan Cache Halaman
Berkenaan dengan keputusan tersebut, disebut bahawa ini Ia bermula kembali kepada pengoptimuman yang diperkenalkan pada tahun 2017 dalam API kriptografi kernel (AF_ALG). Pengubahsuaian ini Saya sedang berusaha untuk menghapuskan penimbalan yang tidak perlu. melaksanakan operasi penyulitan yang disahkan (AEAD) secara langsung dalam ruang memori yang sama, yang dikenali sebagai operasi "di tempat".
El Masalah kritikal timbul apabila menggabungkan pengoptimuman ini dengan fungsi splice(), Kaedah ini memindahkan data antara deskriptor fail dengan memindahkan rujukan langsung ke cache halaman kernel dan bukannya menyalin data secara fizikal. Apabila meminta penyahsulitan, struktur memori dikonfigurasikan supaya penimbal destinasi, yang sepatutnya menjadi ruang sementara untuk pengguna, akhirnya dipautkan secara langsung ke halaman cache yang mengandungi data fail sistem.
Pengesahan dan penulisan di luar had ingatan
El Pencetus terakhir kerentanan terletak pada tingkah laku anomali algoritma authen. Tidak seperti rutin kriptografi lain yang mematuhi sempadan penimbal destinasi mereka dengan ketat, Algoritma khusus ini menggunakan ruang memori pengguna sebagai kawasan kerja sementara (pad gores) untuk menyusun semula jujukan bait semasa pengiraan tag pengesahan.
Dalam proses ini, algoritma menulis empat bait melebihi had yang ditetapkan untuk rantau output. Disebabkan oleh pengoptimuman di tempat dan rantaian rujukan yang dicipta oleh splice(),Tulisan yang nampaknya tidak berbahaya ini melintasi sempadan ingatan pengguna dan mendarat terus pada halaman cache kernel yang berkaitan dengan fail yang sedang diproses.
Rantaian kegagalan logik ini Ia memberikan penyerang keupayaan untuk menulis ganti empat bait secara sewenang-wenangnya dalam kedudukan cache tertentu halaman untuk sebarang fail yang boleh dibacanya. Dengan menghantar satu siri permintaan yang dikira, penyerang boleh menyuntik kod berniat jahat dalam versi dalam memori fail boleh laku kritikal dengan set bit suid, seperti alat penukar pengguna.
Oleh kerana semua operasi baca akan menanyakan cache halaman terlebih dahulu, pada kali seterusnya utiliti yang sah digunakan, Sistem akan melaksanakan kod yang disuntik dari memori, memberikan keistimewaan root serta-merta. tanpa mengubah fail fizikal pada cakera keras. Lebih membimbangkan lagi, kerana pengasingan kontena berkongsi cache halaman hos asas, kerentanan ini berfungsi sebagai pintu masuk langsung untuk keluar dari persekitaran maya seperti kluster Kubernetes dan menjejaskan nod utama.
Tampalan kecemasan dan penyelesaian mitigasi
Memandangkan betapa seriusnya keputusan ini, pihak Pasukan penyelenggaraan telah menggunakan kemas kini kecemasan, di mana penyelesaian muktamad terletak pada Kembalikan pengoptimuman di tempat dalam fail algif_aead.c, asingkan senarai memori sumber dan destinasi dengan ketat untuk mengelakkan halaman yang disimpan dalam cache daripada berakhir di laluan yang boleh ditulis.
Tampalan ini telah disepadukan ke dalam kernel 6.18.22, 6.19.12 dan 7.0, dan sedang dipindahkan ke cawangan sokongan jangka panjang. Bagi pentadbir yang tidak dapat memulakan semula atau mengemas kini pelayan mereka dengan segera, adalah disyorkan untuk melumpuhkan modul kernel algif_aead jika ia dikompilasi secara luaran, atau untuk menyekat penciptaan soket AF_ALG dengan ketat menggunakan dasar keselamatan seperti SELinux, perisai yang, sebagai contoh, telah memastikan peranti Android semasa selamat daripada ancaman ini.
Akhir sekali, jika anda berminat untuk mengetahui lebih lanjut, anda boleh mendapatkan butiran lanjut di pautan berikut.