Kerentanan dalam kernel memungkinkan peningkatan hak istimewa melalui manipulasi direktori

kerentanan sistemd

Baru-baru ini Penyelidik keselamatan Qualys (syarikat keselamatan, pematuhan dan perkhidmatan berkaitan awan) mengeluarkan maklumat mengenai kerentanan apa yang mereka mengesan dan apa mereka mempengaruhi kernel Linux.

CVE-2021-33909 mempengaruhi kernel dan membolehkan pengguna tempatan mencapai pelaksanaan kod dan meningkatkan hak istimewa dengan memanipulasi direktori yang sangat bersarang.

Kerentanan ini disebabkan oleh kurangnya pengesahan hasil penukaran size_t ke jenis int sebelum melakukan operasi pada kod seq_file, yang membuat fail dari urutan rekod. Kurangnya pengesahan dapat mengakibatkan penulisan ke area di luar batas penyangga ketika membuat, memasang, dan menjatuhkan struktur direktori dengan tingkat penyaruhan yang sangat tinggi (ukuran jalur lebih besar dari 1GB).

Mana-mana pengguna yang tidak berhak dapat memperoleh hak root pada host yang rentan dengan memanfaatkan kerentanan ini dalam konfigurasi lalai.

Akibatnya, penyerang dapat memperoleh rentetan 10-byte "// dihapus" dengan mengimbangi "- 2 GB - 10 bait", menunjuk ke kawasan tepat sebelum penyangga yang diperuntukkan.

Ancaman kerentanan diburukkan lagi oleh kenyataan bahawa penyelidik dapat menyiapkan eksploitasi berfungsi pada Ubuntu 20.04, Debian 11 dan Fedora 34 dalam tetapan lalai. Telah diperhatikan bahawa pengedaran lain belum diuji, tetapi secara teorinya mereka juga rentan terhadap masalah tersebut dan dapat diserang.

Eksploitasi kerentanan yang berjaya ini membolehkan pengguna yang tidak berhak mendapat hak root pada host yang rentan. Penyelidik keselamatan Qualys dapat mengesahkan kerentanan secara bebas, mengembangkan eksploitasi, dan memperoleh hak root sepenuhnya pada pemasangan lalai Ubuntu 20.04, Ubuntu 20.10, Ubuntu 21.04, Debian 11, dan Fedora 34 Workstation. Pengedaran Linux lain cenderung rentan dan mungkin dapat dieksploitasi.

Karya eksploitasi bermula untuk membuat hierarki kira-kira sejuta direktori bersarang melalui panggilan mkdir () untuk mencapai ukuran jalur fail lebih besar daripada 1GB.

Direktori ini diikat-mount dipasang di ruang nama pengguna yang terpisah, selepas itu fungsi rmdir () dijalankan untuk menghapusnya. Secara selari, utas dibuat yang memuat program eBPF kecil, yang tergantung di pentas setelah mengesahkan pseudokod eBPF, tetapi sebelum penyusunan JITnya.

Di ruang nama ID pengguna yang tidak istimewa, fail / proc / self / mountinfo terbuka dan membaca jalan direktori panjang yang dipasang dengan bind-mount, sehingga baris "// dihapus" ditulis di wilayah sebelum permulaan penyangga. Posisi untuk menulis baris dipilih sedemikian rupa sehingga menimpa arahan dalam program eBPF yang sudah diuji tetapi belum disusun.

Selanjutnya, di peringkat program eBPF, penulisan yang tidak terkawal dari penyangga diubah menjadi keupayaan membaca / menulis dikawal dalam struktur kernel lain dengan memanipulasi struktur btf dan map_push_elem.

Eksploitasi kemudian meletakkan buffer modprobe_path [] dalam memori kernel dan menimpa jalan "/ sbin / modprobe" di dalamnya, yang membolehkan setiap fail yang dapat dieksekusi dilancarkan sebagai root jika panggilan request_module () dibuat, yang dijalankan misalnya ketika membuat soket pautan bersih ...

Penyelidik telah memberikan beberapa penyelesaian yang hanya berkesan untuk eksploitasi tertentu, tetapi mereka tidak menyelesaikan masalah itu sendiri.

Oleh itu, disarankan untuk menetapkan parameter "/ proc / sys / kernel / uncrivileged_userns_clone" ke 0 untuk menonaktifkan pemasangan direktori di ruang nama pengguna yang terpisah dan "/ proc sys / kernel / unfrivileged_bpf_disabled" ke 1 untuk menonaktifkan pemuatan program eBPF ke dalam kernel.

Sebagai tambahan kepada kenyataan bahawa semua pengguna sebaran Linux juga disarankan untuk mengemas kini sistem mereka agar mempunyai patch yang sesuai. Masalahnya telah terbukti sejak Julai 2014 dan ia mempengaruhi versi kernel sejak 3.16. Patch kerentanan diselaraskan dengan komuniti dan diterima di kernel pada 19 Julai.

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.