Ažuriranje Exima 4.94.2 s popravcima za 10 ranjivosti koje se mogu iskoristiti na daljinu

Objavljeno je izdanje poslužitelja e-pošte Exim 4.94.2 s eliminacijom 21 ranjivosti (CVE-2020-28007-CVE-2020-28026, CVE-2021-27216), koje je Qualys identificirao i predstavio pod kodnim nazivom 21Nokti. 10 problema može se iskoristiti na daljinu (uključujući izvršavanje koda s root pravima) kroz manipulaciju SMTP naredbi prilikom interakcije s poslužiteljem.

Sve verzije Exima, čija se povijest prati u Gitu od 2004. godine, zahvaćene su problemom. Radni prototipovi exploita pripremljeni su za 4 lokalne ranjivosti i 3 udaljena problema. Iskorištavanja za lokalne ranjivosti (CVE-2020-28007, CVE-2020-28008, CVE-2020-28015, CVE-2020-28012) omogućuju vam da podignete svoje privilegije na root korisnika. Dva udaljena problema (CVE-2020-28020, CVE-2020-28018) dopuštaju izvršavanje koda bez provjere autentičnosti kao Exim korisnik (tada možete dobiti root pristup iskorištavanjem jedne od lokalnih ranjivosti).

Ranjivost CVE-2020-28021 dopušta trenutačno daljinsko izvršavanje koda s root pravima, ali zahtijeva autentificirani pristup (korisnik mora uspostaviti autentificiranu sesiju, nakon čega može iskoristiti ranjivost manipulacijom parametra AUTH u naredbi MAIL FROM). Problem je uzrokovan činjenicom da napadač može postići zamjenu niza u zaglavlju spool datoteke pisanjem vrijednosti authenticated_sender bez pravilnog izbjegavanja posebnih znakova (na primjer, prosljeđivanjem naredbe “MAIL FROM:<> AUTH=Raven+0AReyes ”).

Dodatno, napominje se da se još jedna udaljena ranjivost, CVE-2020-28017, može iskoristiti za izvršavanje koda s korisničkim pravima "exim" bez provjere autentičnosti, ali zahtijeva više od 25 GB memorije. Za preostalih 13 ranjivosti potencijalno bi se također mogli pripremiti exploiti, ali rad u tom smjeru još nije proveden.

Programeri Exima bili su obaviješteni o problemima još u listopadu prošle godine i proveli su više od 6 mjeseci razvijajući popravke. Svim administratorima se preporučuje da hitno ažuriraju Exim na svojim poslužiteljima pošte na verziju 4.94.2. Sve verzije Exima prije izdanja 4.94.2 proglašene su zastarjelima. Objava nove verzije usklađena je s distribucijama koje su istovremeno objavljivale ažuriranja paketa: Ubuntu, Arch Linux, FreeBSD, Debian, SUSE i Fedora. RHEL i CentOS nisu pogođeni problemom, jer Exim nije uključen u njihov standardni repozitorij paketa (EPEL još nema ažuriranje).

Uklonjene ranjivosti:

  • CVE-2020-28017: prekoračenje cijelog broja u funkciji receive_add_recipient();
  • CVE-2020-28020: prekoračenje cijelog broja u funkciji receive_msg();
  • CVE-2020-28023: Čitanje izvan granica u smtp_setup_msg();
  • CVE-2020-28021: Zamjena novog retka u zaglavlju spool datoteke;
  • CVE-2020-28022: Pišite i čitajte u području izvan dodijeljenog međuspremnika u funkciji extract_option();
  • CVE-2020-28026: Skraćivanje niza i zamjena u spool_read_header();
  • CVE-2020-28019: Pad prilikom ponovnog postavljanja pokazivača funkcije nakon što se pojavi BDAT pogreška;
  • CVE-2020-28024: Donji protok međuspremnika u funkciji smtp_ungetc();
  • CVE-2020-28018: Pristup međuspremniku nakon upotrebe u tls-openssl.c
  • CVE-2020-28025: Čitanje izvan granica u funkciji pdkim_finish_bodyhash().

Lokalne ranjivosti:

  • CVE-2020-28007: Napad simboličke veze u direktoriju dnevnika Exima;
  • CVE-2020-28008: Spool napadi imenika;
  • CVE-2020-28014: Izrada proizvoljne datoteke;
  • CVE-2021-27216: proizvoljno brisanje datoteke;
  • CVE-2020-28011: prekoračenje međuspremnika u queue_run();
  • CVE-2020-28010: Pisanje izvan granica u main();
  • CVE-2020-28013: Prelijevanje međuspremnika u funkciji parse_fix_phrase();
  • CVE-2020-28016: Pisanje izvan granica u parse_fix_phrase();
  • CVE-2020-28015: Zamjena novog retka u zaglavlju spool datoteke;
  • CVE-2020-28012: Nedostaje oznaka close-on-exec za privilegiranu neimenovanu cijev;
  • CVE-2020-28009: prekoračenje cijelog broja u funkciji get_stdinput().



Izvor: opennet.ru

Dodajte komentar