Ao amin'ny mpizara mailaka Exim
Ao amin'ny konfigurasi default, ny fanafihana dia azo atao tsy misy fahasarotana tsy ilaina amin'ny mpampiasa eo an-toerana, satria ny ACL "manamarina = mpandray" dia ampiharina, izay manao fisavana fanampiny amin'ny adiresy ivelany. Mety hitranga ny fanafihana lavitra rehefa miova ny toe-javatra, toy ny fanaovana MX faharoa ho an'ny sehatra hafa, fanesorana ny ACL "very = recipient", na fanovana sasany amin'ny local_part_suffix). Ny fanafihana lavitra dia azo atao ihany koa raha afaka mitazona ny fifandraisana amin'ny mpizara misokatra mandritra ny 7 andro ny mpanafika (ohatra, mandefa byte iray isa-minitra mba hialana amin'ny fotoana voafetra). Amin'izay fotoana izay ihany koa dia azo atao fa misy vectors fanafihana tsotra kokoa ho an'ny fitrandrahana lavitra ny olana.
Ny vulnerability dia vokatry ny fanamarinana diso ny adiresin'ny mpandray amin'ny asa deliver_message() voafaritra ao amin'ny rakitra /src/deliver.c. Amin'ny alΓ lan'ny fanodikodinana ny fandrafetana adiresy, ny mpanafika dia afaka manolo ny angonany ho tohan-kevitry ny baiko antsoina amin'ny alΓ lan'ny execv() fiasa miaraka amin'ny zon'ny faka. Ny fampandehanana dia tsy mitaky ny fampiasana teknika sarotra ampiasaina amin'ny fihoaran'ny buffer na ny kolikoly fitadidiana; ampy ny fanoloana toetra tsotra.
Ny olana dia mifandraika amin'ny fampiasana ny fananganana ho an'ny fanovana adiresy:
deliver_localpart = fanitarana_string(
string_sprintf("${local_part:%s}", new->adiresy));
deliver_domain = fanitarana_string(
string_sprintf("${domain:%s}", vaovao->adiresy));
Ny asa expand_string() dia fampifangaroana be pitsiny, ao anatin'izany ny fahafantarana ny baiko "${run{command arguments}", izay mitondra any amin'ny fandefasana mpandrindra ivelany. Noho izany, raha hanafika ao anatin'ny fivoriana SMTP, ny mpampiasa eo an-toerana dia mila mandefa baiko toy ny 'RCPT TO βusername+${run{...}}@localhostβ', izay misy localhost iray amin'ireo mpampiantrano avy amin'ny lisitry ny local_domains, ary ny solonanarana dia anaran'ny mpampiasa eo an-toerana efa misy.
Raha miasa toy ny fampitana mailaka ny mpizara dia ampy ny mandefa ny baiko 'RCPT mankany amin'ny "${run{...}}@relaydomain.com"', izay ny relaydomain.com dia iray amin'ireo mpampiantrano voatanisa ao amin'ny relay_to_domains. fizarana fizarana. Koa satria ny Exim dia tsy manaisotra ny fomba fiasa manokana (deliver_drop_privilege = false), ny baiko nandalo tamin'ny "${run{...}}" dia hotanterahina ho root.
Marihina fa nisy ny vulnerability
Ny fanamboarana ny dikan-teny teo aloha izay mbola ampiasaina amin'ny fizarana dia tsy misy afa-tsy amin'izao fotoana izao
Source: opennet.ru