Buffer overflow di OpenSSL dieksploitasi saat memverifikasi sertifikat X.509

Rilis korektif perpustakaan kriptografi OpenSSL 3.0.7 telah diterbitkan, yang memperbaiki dua kerentanan. Kedua masalah tersebut disebabkan oleh buffer overflow dalam kode validasi bidang email di sertifikat X.509 dan berpotensi menyebabkan eksekusi kode saat memproses sertifikat yang dibingkai secara khusus. Pada saat perbaikan dipublikasikan, pengembang OpenSSL belum mencatat bukti apa pun tentang adanya eksploitasi yang berfungsi yang dapat menyebabkan eksekusi kode penyerang.

Meskipun pengumuman pra-rilis dari rilis baru menyebutkan adanya masalah kritis, pada kenyataannya, dalam pembaruan yang dirilis, status kerentanan diturunkan ke tingkat kerentanan berbahaya, tetapi tidak kritis. Sesuai dengan aturan yang diterapkan dalam proyek, tingkat bahaya berkurang jika masalah muncul dalam konfigurasi yang tidak lazim atau jika kecil kemungkinan eksploitasi kerentanan dalam praktiknya.

Dalam kasus ini, tingkat keparahan berkurang karena analisis kerentanan yang mendetail oleh beberapa organisasi menyimpulkan bahwa kemampuan untuk mengeksekusi kode selama eksploitasi diblokir oleh mekanisme perlindungan stack overflow yang digunakan di banyak platform. Selain itu, tata letak grid yang digunakan di beberapa distribusi Linux menghasilkan 4 byte yang melampaui batas ditumpangkan pada buffer berikutnya di tumpukan, yang belum digunakan. Namun tidak menutup kemungkinan ada platform yang bisa dimanfaatkan untuk mengeksekusi kode.

Masalah yang teridentifikasi:

  • CVE-2022-3602 - kerentanan, yang awalnya dianggap kritis, menyebabkan buffer overflow 4-byte saat memeriksa bidang dengan alamat email yang dirancang khusus di sertifikat X.509. Di klien TLS, kerentanan dapat dieksploitasi saat menyambung ke server yang dikendalikan oleh penyerang. Di server TLS, kerentanan dapat dieksploitasi jika otentikasi klien menggunakan sertifikat digunakan. Dalam hal ini, kerentanan muncul pada tahap setelah verifikasi rantai kepercayaan yang terkait dengan sertifikat, yaitu. Serangan tersebut mengharuskan otoritas sertifikat memverifikasi sertifikat jahat penyerang.
  • CVE-2022-3786 adalah vektor lain untuk mengeksploitasi kerentanan CVE-2022-3602, yang diidentifikasi selama analisis masalah. Perbedaannya terletak pada kemungkinan meluapnya buffer pada tumpukan dengan sejumlah byte yang berisi β€œ.” (yaitu penyerang tidak dapat mengontrol isi luapan dan masalah hanya dapat digunakan untuk menyebabkan aplikasi mogok).

Kerentanan hanya muncul di cabang OpenSSL 3.0.x (bug muncul di kode konversi Unicode (punycode) yang ditambahkan ke cabang 3.0.x). Rilis OpenSSL 1.1.1, serta pustaka fork OpenSSL LibreSSL dan BoringSSL, tidak terpengaruh oleh masalah ini. Pada saat yang sama, pembaruan OpenSSL 1.1.1s dirilis, yang hanya berisi perbaikan bug non-keamanan.

Cabang OpenSSL 3.0 digunakan di distribusi seperti Ubuntu 22.04, CentOS Stream 9, RHEL 9, OpenMandriva 4.2, Gentoo, Fedora 36, ​​​​Debian Testing/Unstable. Pengguna sistem ini disarankan untuk menginstal pembaruan sesegera mungkin (Debian, Ubuntu, RHEL, SUSE/openSUSE, Fedora, Arch). Di SUSE Linux Enterprise 15 SP4 dan openSUSE Leap 15.4, paket dengan OpenSSL 3.0 tersedia secara opsional, paket sistem menggunakan cabang 1.1.1. Debian 1, Arch Linux, Void Linux, Ubuntu 11, Slackware, ALT Linux, RHEL 20.04, OpenWrt, Alpine Linux 8 dan FreeBSD tetap berada di cabang OpenSSL 3.16.x.

Sumber: opennet.ru

Tambah komentar