Mereka menemui kelemahan VFS dalam Linux yang membolehkan peningkatan keistimewaan

Beberapa hari yang lalu berita telah dikeluarkan bahawa kelemahan telah dikenalpasti (sudah dikatalogkan di bawah CVE-2022-0185) dann API konteks sistem fail disediakan oleh kernel linux yang boleh membenarkan pengguna tempatan mendapat keistimewaan root pada sistem.

Disebutkan bahawa masalahnya ialah pengguna tanpa keistimewaan boleh mendapatkan kebenaran sedemikian dalam bekas terpencil jika sokongan untuk ruang nama pengguna didayakan pada sistem.

Contohnya, ruang nama pengguna didayakan secara lalai pada Ubuntu dan Fedora, tetapi tidak didayakan pada Debian dan RHEL (melainkan platform pengasingan kontena digunakan). Selain peningkatan keistimewaan, kerentanan juga boleh digunakan untuk keluar dari bekas terpencil jika bekas itu mempunyai kuasa CAP_SYS_ADMIN.

Kerentanan wujud dalam fungsi legacy_parse_param() dalam VFS dan disebabkan oleh kekurangan pengesahan yang betul bagi saiz maksimum parameter yang dibekalkan pada sistem fail yang tidak menyokong API konteks sistem fail.

Baru-baru ini, beberapa rakan dalam pasukan CTF Crusaders of Rust saya dan saya mengalami limpahan timbunan kernel Linux 0 hari. Kami menemui pepijat melalui fuzzing dengan syzkaller dan dengan cepat membangunkannya menjadi eksploitasi LPE Ubuntu. Kami kemudian menulisnya semula untuk melarikan diri dan mengakar infrastruktur CTF Kubernetes Google yang keras. Pepijat ini menjejaskan semua versi kernel sejak 5.1 (5.16 sedang berjalan) dan telah diberikan CVE-2022-0185. Kami telah pun melaporkan perkara ini kepada senarai mel pengedaran dan keselamatan Linux, dan pepijat telah dibetulkan sejak pengeluaran artikel ini.

Melepasi parameter yang terlalu besar boleh menyebabkan limpahan pembolehubah integer yang digunakan untuk mengira saiz data yang ditulis; kod tersebut mempunyai semakan limpahan penimbal "jika (len > PAGE_SIZE - 2 - saiz)", yang tidak berfungsi jika nilai saiz lebih besar daripada 4094 disebabkan limpahan integer melalui sempadan bawah (limpahan integer, apabila menukar 4096 – 2 – 4095 kepada unsigned int, mendapat 2147483648).

Pepijat ini membenarkan, apabila mengakses imej FS yang direka khas, menyebabkan limpahan penimbal dan tulis ganti data kernel mengikut kawasan memori yang diperuntukkan. Untuk mengeksploitasi kelemahan, hak CAP_SYS_ADMIN, iaitu pihak berkuasa pentadbir, diperlukan.

Mulai 2022, rakan sepasukan kami memutuskan untuk mencari hari 0 pada tahun 2022. Kami tidak pasti dengan tepat cara memulakannya, tetapi memandangkan pasukan kami mempunyai tahap kebiasaan yang tinggi dengan kerentanan kernel Linux, kami memutuskan untuk membeli sahaja beberapa pelayan khusus. dan jalankan syzkaller fuzzer Google. Pada 6 Januari jam 22:30 malam PST, chop0 menerima laporan berikut tentang kegagalan KASAN dalam legacy_parse_param: slab-out-of-bounds Tulis dalam legacy_parse_param. Nampaknya syzbot menemui masalah ini hanya 6 hari lebih awal apabila Android membingungkan, tetapi masalah itu tidak ditangani dan kami secara naif berpendapat bahawa tiada orang lain yang perasan.

Akhir sekali, perlu dinyatakan bahawa masalah itu telah nyata sejak kernel Linux versi 5.1 dan telah diselesaikan dalam kemas kini yang dikeluarkan beberapa hari lalu dalam versi 5.16.2, 5.15.16, 5.10.93, 5.4.173.

selain itu kemas kini pakej kerentanan telah pun dikeluarkan perenggan RHELDebianfedora dan Ubuntu. Walaupun penyelesaiannya belum tersedia pada Arch LinuxGentooSUSE y openSUSE.

Dalam kes ini, disebutkan bahawa sebagai penyelesaian keselamatan untuk sistem yang tidak menggunakan pengasingan bekas, anda boleh menetapkan nilai sysctl "user.max_user_namespaces" kepada 0:

Penyelidik yang mengenal pasti masalah telah menerbitkan demo eksploitasi que membenarkan kod berjalan sebagai root pada Ubuntu 20.04 dalam konfigurasi lalai. Memang dirancang begitu kod eksploitasi diterbitkan di GitHub dalam masa seminggu selepas itu bahawa pengedaran mengeluarkan kemas kini yang membetulkan kelemahan.

Akhirnya sekiranya anda berminat untuk mengetahui lebih lanjut mengenainya, anda boleh menyemak butiran di 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.

  1.   Galicia kata

    Satu lagi sebab untuk tidak menyentuh snap dengan kayu.