masalah
Pemanggilan kode string_interpret_escape() mengalokasikan buffer untuk saluran berdasarkan ukuran sebenarnya, dan penunjuk yang terbuka berakhir di area di luar batas buffer. Oleh karena itu, ketika mencoba memproses string masukan, situasi muncul ketika membaca data dari area di luar batas buffer yang dialokasikan, dan upaya untuk menulis string yang tidak lolos dapat mengakibatkan penulisan di luar batas buffer.
Dalam konfigurasi default, kerentanan dapat dieksploitasi dengan mengirimkan data yang dirancang khusus ke SNI saat membuat sambungan aman ke server. Masalah ini juga dapat dieksploitasi dengan mengubah nilai peerdn dalam konfigurasi yang dikonfigurasi untuk otentikasi sertifikat klien atau saat mengimpor sertifikat. Serangan melalui SNI dan peerdn dapat dilakukan mulai dari rilis
Prototipe eksploitasi telah disiapkan untuk serangan melalui SNI, berjalan pada arsitektur i386 dan amd64 pada sistem Linux dengan Glibc. Eksploitasi ini menggunakan overlay data pada area heap, sehingga memori tempat nama file log disimpan akan ditimpa. Nama file diganti dengan "/../../../../../../../../etc/passwd". Selanjutnya, variabel dengan alamat pengirim ditimpa, yang pertama kali disimpan di log, yang memungkinkan Anda menambahkan pengguna baru ke sistem.
Pembaruan paket dengan perbaikan kerentanan dirilis oleh distribusi
Sebagai solusi untuk memblokir kerentanan, Anda dapat menonaktifkan dukungan TLS atau menambahkan
Bagian ACL βacl_smtp_mailβ:
kondisi tolak = ${if eq{\\}{${substr{-1}{1}{$tls_in_sni}}}}
kondisi tolak = ${if eq{\\}{${substr{-1}{1}{$tls_in_peerdn}}}}
Sumber: opennet.ru