Kemajuan dalam mencipta eksploitasi untuk OpenSSH 9.1

Qualys menemui cara untuk memintas malloc dan perlindungan bebas dua kali untuk memulakan pemindahan kawalan kepada kod menggunakan kerentanan dalam OpenSSH 9.1 yang ditentukan mempunyai risiko rendah untuk mencipta eksploitasi yang berfungsi. Pada masa yang sama, kemungkinan mencipta eksploitasi kerja masih menjadi persoalan besar.

Kerentanan ini disebabkan oleh pra-pengesahan dua kali percuma. Untuk mewujudkan keadaan bagi kerentanan untuk nyata, cukup untuk menukar sepanduk klien SSH kepada "SSH-2.0-FuTTYSH_9.1p1" (atau klien SSH lama yang lain) untuk menetapkan bendera "SSH_BUG_CURVE25519PAD" dan "SSH_OLD_DHGEX". Selepas menetapkan bendera ini, memori untuk penimbal "options.kex_algorithms" dibebaskan dua kali.

Penyelidik dari Qualys, semasa memanipulasi kelemahan, dapat mengawal daftar pemproses "%rip", yang mengandungi penunjuk kepada arahan seterusnya yang akan dilaksanakan. Teknik eksploitasi yang dibangunkan membolehkan anda memindahkan kawalan ke mana-mana titik dalam ruang alamat proses sshd dalam persekitaran OpenBSD 7.2 yang tidak dikemas kini, dibekalkan secara lalai dengan OpenSSH 9.1.

Adalah diperhatikan bahawa prototaip yang dicadangkan adalah pelaksanaan hanya peringkat pertama serangan - untuk mencipta eksploitasi kerja, adalah perlu untuk memintas mekanisme perlindungan ASLR, NX dan ROP, dan melarikan diri dari pengasingan kotak pasir, yang tidak mungkin. Untuk menyelesaikan masalah memintas ASLR, NX dan ROP, adalah perlu untuk mendapatkan maklumat tentang alamat, yang boleh dicapai dengan mengenal pasti kelemahan lain yang membawa kepada kebocoran maklumat. Pepijat dalam proses induk atau kernel istimewa boleh membantu keluar dari kotak pasir.

Sumber: opennet.ru

Tambah komen