Kerentanan yang dapat dieksploitasi di nf_tables, watch_queue dan IPsec telah diidentifikasi di kernel Linux

Beberapa kerentanan berbahaya telah diidentifikasi di kernel Linux yang memungkinkan pengguna lokal meningkatkan hak istimewa mereka di sistem. Prototipe eksploitasi yang berfungsi telah disiapkan untuk semua masalah yang sedang dipertimbangkan.

  • Kerentanan (CVE-2022-0995) di subsistem pelacakan peristiwa watch_queue memungkinkan data ditulis ke buffer di luar batas dalam memori kernel. Serangan dapat dilakukan oleh pengguna yang tidak memiliki hak istimewa dan mengakibatkan kode mereka berjalan dengan hak kernel. Kerentanan ada dalam fungsi watch_queue_set_size() dan dikaitkan dengan upaya untuk menghapus semua penunjuk dalam daftar, meskipun memori belum dialokasikan untuk penunjuk tersebut. Masalah terjadi ketika membangun kernel dengan opsi "CONFIG_WATCH_QUEUE=y", yang digunakan di sebagian besar distribusi Linux.

    Kerentanan telah diatasi dalam perubahan kernel yang ditambahkan pada 11 Maret. Anda dapat mengikuti publikasi pembaruan paket dalam distribusi di halaman ini: Debian, SUSE, Ubuntu, RHEL, Fedora, Gentoo, Arch Linux. Prototipe eksploitasi sudah tersedia untuk umum dan memungkinkan Anda mendapatkan akses root saat dijalankan di Ubuntu 21.10 dengan kernel 5.13.0-37.

    Kerentanan yang dapat dieksploitasi di nf_tables, watch_queue dan IPsec telah diidentifikasi di kernel Linux

  • Kerentanan (CVE-2022-27666) pada modul kernel esp4 dan esp6 dengan implementasi transformasi ESP (Encapsulate Security Payload) untuk IPsec, digunakan saat menggunakan IPv4 dan IPv6. Kerentanan ini memungkinkan pengguna lokal dengan hak normal untuk menimpa objek di memori kernel dan meningkatkan hak istimewa mereka pada sistem. Masalah ini disebabkan oleh kurangnya rekonsiliasi antara ukuran memori yang dialokasikan dan data aktual yang diterima, mengingat ukuran pesan maksimum dapat melebihi ukuran memori maksimum yang dialokasikan untuk struktur skb_page_frag_refill.

    Kerentanan telah diperbaiki di kernel pada tanggal 7 Maret (diperbaiki pada 5.17, 5.16.15, dll.). Anda dapat mengikuti publikasi pembaruan paket dalam distribusi di halaman ini: Debian, SUSE, Ubuntu, RHEL, Fedora, Gentoo, Arch Linux. Prototipe eksploitasi yang berfungsi, yang memungkinkan pengguna biasa mendapatkan akses root ke Ubuntu Desktop 21.10 dalam konfigurasi default, telah diposting di GitHub. Dikatakan bahwa dengan sedikit perubahan, eksploitasi juga akan berfungsi pada Fedora dan Debian. Patut dicatat bahwa eksploitasi tersebut pada awalnya dipersiapkan untuk kompetisi pwn2own 2022, tetapi pengembang kernel mengidentifikasi dan memperbaiki bug yang terkait dengannya, sehingga diputuskan untuk mengungkapkan rincian kerentanannya.

  • Dua kerentanan (CVE-2022-1015, CVE-2022-1016) di subsistem netfilter di modul nf_tables, yang memastikan pengoperasian filter paket nftables. Masalah pertama memungkinkan pengguna lokal yang tidak memiliki hak istimewa untuk mencapai penulisan di luar batas ke buffer yang dialokasikan di tumpukan. Overflow terjadi ketika memproses ekspresi nftables yang diformat dengan cara tertentu dan diproses selama fase pemeriksaan indeks yang ditentukan oleh pengguna yang memiliki akses ke aturan nftables.

    Kerentanan ini disebabkan oleh fakta bahwa pengembang menyiratkan bahwa nilai "enum nft_registers reg" adalah satu byte, ketika optimasi tertentu diaktifkan, kompiler, menurut spesifikasi C89, dapat menggunakan nilai 32-bit untuk itu . Karena fitur ini, ukuran yang digunakan saat memeriksa dan mengalokasikan memori tidak sesuai dengan ukuran sebenarnya dari data dalam struktur, yang menyebabkan bagian ekor struktur tumpang tindih dengan pointer pada tumpukan.

    Masalahnya dapat dieksploitasi untuk mengeksekusi kode di tingkat kernel, tetapi serangan yang berhasil memerlukan akses ke nftables, yang dapat diperoleh di namespace jaringan terpisah dengan hak CLONE_NEWUSER atau CLONE_NEWNET (misalnya, jika Anda dapat menjalankan wadah yang terisolasi). Kerentanan juga terkait erat dengan pengoptimalan yang digunakan oleh kompiler, yang, misalnya, diaktifkan saat membangun dalam mode β€œCONFIG_CC_OPTIMIZE_FOR_PERFORMANCE=y”. Eksploitasi kerentanan dimungkinkan dimulai dengan kernel Linux 5.12.

    Kerentanan kedua di netfilter disebabkan oleh akses ke area memori yang sudah dibebaskan (gunakan setelah bebas) di handler nft_do_chain dan dapat menyebabkan kebocoran area memori kernel yang tidak diinisialisasi, yang dapat dibaca melalui manipulasi dengan ekspresi nftables dan digunakan, misalnya misalnya, untuk menentukan alamat penunjuk selama eksploitasi pengembangan untuk kerentanan lainnya. Eksploitasi kerentanan dimungkinkan dimulai dengan kernel Linux 5.13.

    Kerentanan telah diatasi dalam patch kernel saat ini 5.17.1, 5.16.18, 5.15.32, 5.10.109, 5.4.188, 4.19.237, 4.14.274, dan 4.9.309. Anda dapat mengikuti publikasi pembaruan paket dalam distribusi di halaman ini: Debian, SUSE, Ubuntu, RHEL, Fedora, Gentoo, Arch Linux. Peneliti yang mengidentifikasi masalah mengumumkan persiapan eksploitasi yang berfungsi untuk kedua kerentanan tersebut, yang rencananya akan dipublikasikan dalam beberapa hari, setelah distribusi merilis pembaruan untuk paket kernel.

Sumber: opennet.ru

Tambah komentar