Kerentanan jarak jauh sing bisa dimanfaatake ing server mail qmail

Peneliti keamanan saka Qualys nuduhake kesempatan eksploitasi kerentanan ing server mail qmail, misuwur bali ing 2005 (CVE-2005-1513), nanging tetep unpatched amarga penulis qmail ndhukung sing iku unrealistic a nggawe exploitasi apa sing bisa digunakake kanggo nyerang sistem ing konfigurasi gawan. Qualys bisa nyiyapake eksploitasi sing mbantah asumsi iki lan ngidini siji kanggo miwiti eksekusi kode remot ing server kanthi ngirim pesen sing dirancang khusus.

Masalah disababaké déning overflow integer ing stralloc_readyplus () fungsi, kang bisa dumadi nalika ngolah pesen gedhe banget. Operasi mbutuhake sistem 64-bit kanthi memori virtual luwih saka 4GB. Nalika kerentanan iki Originally analisa ing 2005, Daniel J. Bernstein ndhukung sing Panyangka ing kode sing ukuran Uploaded diparengake tansah ing Nilai 32-bit adhedhasar kasunyatan sing ora ana siji nyedhiyani gigabyte memori kanggo saben proses. Sajrone 15 taun kepungkur, sistem 64-bit ing server wis ngganti sistem 32-bit, lan jumlah memori sing diwenehake lan bandwidth jaringan saya tambah akeh.

Pangopènan paket qmail njupuk cathetan Bernstein lan winates ing memori kasedhiya nalika miwiti proses qmail-smtpd (Contone, ing Debian 10 watesan disetel kanggo 7MB). Nanging insinyur saka Qualys nemokake yen iki ora cukup lan, saliyane qmail-smtpd, serangan remot bisa ditindakake ing proses qmail-lokal, sing tetep ora diwatesi ing kabeh paket sing dites. Minangka bukti, prototipe eksploitasi wis disiapake sing cocok kanggo nyerang paket Debian karo qmail ing konfigurasi standar.
Kanggo ngatur eksekusi kode remot sajrone serangan, server mbutuhake ruang disk gratis 4GB lan RAM 8GB.
Eksploitasi ngidini sampeyan mbukak perintah cangkang kanthi hak pangguna ing sistem kasebut, kajaba pangguna root lan sistem sing ora duwe subdirektori dhewe ing direktori "/ ngarep" (proses qmail-lokal diluncurake kanthi hak. pangguna lokal sing dikirimake).

Serangan ditindakake
liwat ngirim pesen mail gedhe banget, kalebu sawetara baris header, ukuran kira-kira 4GB lan 576MB. Ngolah senar kasebut ing qmail-lokal nyebabake kebanjiran integer nalika nyoba ngirim pesen menyang pangguna lokal. Overflow integer banjur ndadékaké overflow buffer nalika nyalin data lan kamungkinan kanggo nimpa kaca memori nganggo kode libc. Kanthi manipulasi tata data ditularaké, iku uga bisa kanggo nulis maneh alamat fungsi "mbukak ()", ngganti karo alamat fungsi "sistem ()".

Sabanjure, ing proses nelpon qmesearch () ing qmail-lokal, mbukak file ".qmail-extension" liwat fungsi mbukak (), kang ndadékaké kanggo eksekusi nyata saka fungsi.
system(".qmail-extension"). Nanging amarga bagean "ekstensi" file digawe adhedhasar alamat panampa (contone, "localuser-extension@localdomain"), panyerang bisa ngatur supaya perintah kasebut dikirim kanthi nemtokake pangguna "localuser-; ;@localdomain" minangka panampa pesen.

Sajrone analisis kode, loro vulnerabilities uga dikenali ing tambahan qmail-verifikasi patch, kang bagéan saka paket kanggo Debian. Kerentanan pisanan (CVE-2020-3811) ngidini sampeyan ngliwati verifikasi alamat email, lan nomer loro (CVE-2020-3812) ndadékaké kebocoran informasi lokal. Utamane, kerentanan pisanan ngidini sampeyan ngliwati verifikasi bener saka alamat sing digunakake ing eksploitasi kanggo ngirim printah (verifikasi ora bisa digunakake kanggo alamat tanpa domain, kayata "localuser-; command;"). Kerentanan kapindho bisa digunakake kanggo mriksa anané file lan direktori ing sistem, kalebu sing bisa diakses mung kanggo ROOT (qmail-verifikasi mlaku karo hak ROOT), liwat telpon langsung kanggo handler lokal.

Kanggo ngubengi masalah, Bernstein dianjurake kanggo mbukak pangolahan qmail kanthi watesan total ing memori sing kasedhiya ("softlimit -m12345678"), yen masalah kasebut diblokir. Minangka cara alternatif saka pangayoman, matesi ukuran maksimum pesen diproses liwat file "kontrol / databyte" uga kasebut (kanthi standar ora digawe karo setelan gawan qmail tetep ngrugekke). Kajaba iku, "kontrol / databyte" ora nglindhungi serangan lokal saka pangguna sistem, wiwit watesan mung dijupuk menyang akun dening qmail-smtpd.

Masalah mengaruhi paket netqmail, kalebu ing repositori Debian. A pesawat saka patches wis disiapake kanggo paket iki, ngilangke loro vulnerabilities lawas saka 2005 (kanthi nambah watesan memori hard kanggo alloc () kode fungsi) lan masalah anyar ing qmail-verifikasi. Kapisah disiapake versi nganyari saka patch qmail-verifikasi. Pangembang cabang notqmail nyiapake patch dhewe kanggo mblokir masalah lawas, lan uga miwiti kanggo ngilangke kabeh bisa overflows integer ing kode.

Source: opennet.ru

Add a comment