Ing server mail Exim
Ing konfigurasi standar, serangan bisa ditindakake tanpa komplikasi sing ora perlu dening pangguna lokal, amarga ACL "verifikasi = panampa" ditrapake, sing nindakake pemeriksaan tambahan kanggo alamat eksternal. Serangan remot bisa kedadeyan nalika setelan diganti, kayata tumindak minangka MX sekunder kanggo domain liyane, mbusak "verifikasi = panampa" ACL, utawa owah-owahan tartamtu menyang local_part_suffix). Serangan remot uga bisa ditindakake yen panyerang bisa njaga sambungan menyang server sajrone 7 dina (contone, ngirim siji bait saben menit kanggo ngliwati wektu entek). Ing wektu sing padha, bisa uga ana vektor serangan sing luwih gampang kanggo eksploitasi remot saka masalah kasebut.
Kerentanan disebabake verifikasi salah alamat panampa ing fungsi deliver_message () ditetepake ing file /src/deliver.c. Kanthi manipulasi format alamat, panyerang bisa entuk substitusi data menyang argumen perintah sing diarani liwat fungsi execv () kanthi hak root. Operasi ora mbutuhake teknik rumit sing digunakake kanggo overflows buffer utawa korupsi memori; substitusi karakter sing prasaja cukup.
Masalah kasebut ana gandhengane karo panggunaan konstruk kanggo konversi alamat:
deliver_localpart = expand_string(
string_sprintf("${bagian_lokal:%s}", new->alamat));
deliver_domain = expand_string(
string_sprintf("${domain:%s}", anyar->alamat));
Expand_string () fungsi minangka combiner overcomplicated, kalebu pangling printah "${run{command arguments}", kang ndadΓ©kakΓ© kanggo Bukak saka handler external. Dadi, kanggo nyerang ing sesi SMTP, pangguna lokal mung kudu ngirim prentah kaya 'RCPT TO "username+${run{...}}@localhost"', ing ngendi localhost minangka salah sawijining host saka dhaptar local_domains, lan jeneng panganggo iku jeneng pangguna lokal sing wis ana.
Yen server dianggo minangka relay mail, cukup kanggo ngirim perintah 'RCPT menyang "${run{...}}@relaydomain.com" saka jarak jauh, ing ngendi relaydomain.com minangka salah sawijining host sing kadhaptar ing relay_to_domains bagean setelan. Wiwit Exim ora standar kanggo nyelehake mode hak istimewa (deliver_drop_privilege = palsu), printah liwati liwat "${run{...}}" bakal kaleksanan minangka root.
Wigati dimangerteni manawa kerentanan kasebut
Ndandani versi sadurunge sing terus digunakake ing distribusi saiki mung kasedhiya minangka
Source: opennet.ru