Kerentanan akar yang boleh dieksploitasi dari jauh dalam utiliti ping disertakan dengan FreeBSD

Dalam FreeBSD, kelemahan (CVE-2022-23093) telah dikenal pasti dalam utiliti ping yang disertakan dalam pengedaran asas. Isu ini berpotensi membawa kepada pelaksanaan kod jauh dengan keistimewaan root apabila ping hos luaran yang dikawal oleh penyerang. Pembaikan telah disediakan dalam kemas kini FreeBSD 13.1-RELEASE-p5, 12.4-RC2-p2 dan 12.3-RELEASE-p10. Masih belum jelas sama ada sistem BSD lain terjejas oleh kerentanan yang dikenal pasti (belum ada laporan tentang kelemahan dalam NetBSD, DragonFlyBSD dan OpenBSD).

Kerentanan disebabkan oleh limpahan penimbal dalam kod parsing untuk mesej ICMP yang diterima sebagai tindak balas kepada permintaan pengesahan. Kod untuk menghantar dan menerima mesej ICMP dalam ping menggunakan soket mentah dan dilaksanakan dengan keistimewaan yang tinggi (utiliti disertakan dengan bendera akar setuid). Respons diproses pada bahagian ping melalui pembinaan semula pengepala IP dan ICMP bagi paket yang diterima daripada soket mentah. Pengepala IP dan ICMP yang dipilih disalin ke dalam penimbal oleh pr_pack(), tanpa mengambil kira bahawa pengepala lanjutan tambahan mungkin terdapat dalam paket selepas pengepala IP.

Pengepala sedemikian diekstrak daripada paket dan dimasukkan ke dalam blok pengepala, tetapi tidak diambil kira semasa mengira saiz penimbal. Jika hos, sebagai tindak balas kepada permintaan ICMP yang dihantar, mengembalikan paket dengan pengepala tambahan, kandungannya akan ditulis ke kawasan di luar sempadan penimbal pada tindanan. Akibatnya, penyerang boleh menulis ganti sehingga 40 bait data pada tindanan, yang berpotensi membenarkan kod mereka dilaksanakan. Keterukan masalah dikurangkan oleh fakta bahawa pada masa ralat berlaku, proses berada dalam keadaan pengasingan panggilan sistem (mod keupayaan), yang menjadikannya sukar untuk mendapatkan akses ke seluruh sistem selepas mengeksploitasi kelemahan. .

Sumber: opennet.ru

Tambah komen