Actualizarea Exim 4.94.2 cu remedierea a 10 vulnerabilități exploatabile de la distanță.

A fost publicată versiunea serverului poștal Exim 4.94.2, care remediază 21 de vulnerabilități (CVE-2020-28007-CVE-2020-28026, CVE-2021-27216), identificate de compania Qualys sub numele de cod 21Nails. 10 probleme pot fi exploatate de la distanță (inclusiv pentru executarea de cod cu privilegii root), prin manipularea comenzilor SMTP în interacțiunea cu serverul.

Toate versiunile Exim sunt vulnerabile, istoria acestora fiind urmărită în Git din 2004. Pentru 4 vulnerabilități locale și 3 probleme de la distanță au fost dezvoltate prototipuri funcționale de exploit. Exploiturile pentru vulnerabilitățile locale (CVE-2020-28007, CVE-2020-28008, CVE-2020-28015, CVE-2020-28012) permit elevarea privilegiilor până la utilizatorul root. Două probleme de la distanță (CVE-2020-28020, CVE-2020-28018) permit executarea de cod cu privilegiile utilizatorului exim fără autentificare (ulterior, se poate obține acces root exploatând una dintre vulnerabilitățile locale).

Vulnerabilitatea CVE-2020-28021 permite executarea de cod cu privilegii root de la distanță, dar necesită acces autentificat (utilizatorul trebuie să stabilească o sesiune autentificată, după care poate exploata vulnerabilitatea prin manipularea parametrului AUTH din comanda MAIL FROM). Problema este cauzată de faptul că atacatorul poate obține substituirea unei valori în antetul fișierului spool din cauza înregistrării valorii authenticated_sender fără un escaping adecvat al caracterelor speciale (de exemplu, prin transmiterea comenzii „MAIL FROM:<> AUTH=Raven+0AReyes”).

De asemenea, se remarcă că o altă vulnerabilitate de la distanță, CVE-2020-28017, este exploatabilă pentru executarea de cod cu privilegiile utilizatorului „exim” fără autentificare, dar necesită peste 25 GB de memorie. Pentru celelalte 13 vulnerabilități, pot fi pregătite potențial exploiturile, dar lucrările în această direcție nu au fost încă efectuate.

Dezvoltatorii Exim au fost informați despre probleme încă din octombrie anul trecut și au petrecut mai mult de 6 luni lucrând la remedii. Toți administratorii sunt sfătuiți să actualizeze urgent Exim pe serverele lor poștale. servere până la versiunea 4.94.2. Toate versiunile Exim înainte de lansarea 4.94.2 sunt considerate învechite (obsolete). Publicarea noii versiuni a fost coordonată cu distribuțiile care au publicat simultan actualizări de pachete: Ubuntu, Arch Linux, FreeBSD, Debian, SUSE și Fedora. RHEL și CentOS nu sunt afectate de această problemă, deoarece Exim nu se află în depozitul lor standard de pachete (actualizarea în EPEL este în prezent indisponibilă).

Vulnerabilități remediate:

  • CVE-2020-28017: Overflow de întreg în funcția receive_add_recipient();
  • CVE-2020-28020: Overflow de întreg în funcția receive_msg();
  • CVE-2020-28023: Citire dintr-o zonă dincolo de buffer-ul alocat în funcția smtp_setup_msg();
  • CVE-2020-28021: Inserarea unei noi linii în antetul fișierului spool;
  • CVE-2020-28022: Scriere și citire în afara zonei buffer-ului alocat în funcția extract_option();
  • CVE-2020-28026: Trunchiere și inserare de string-uri în funcția spool_read_header();
  • CVE-2020-28019: Eșec la resetarea pointerului funcției după o eroare BDAT;
  • CVE-2020-28024: Overflow prin parte inferioară a buffer-ului în funcția smtp_ungetc();
  • CVE-2020-28018: Accesarea unui buffer după ce a fost eliberat (use-after-free) în tls-openssl.c
  • CVE-2020-28025: Citire dintr-o zonă dincolo de buffer-ul alocat în funcția pdkim_finish_bodyhash().

Vulnerabilități locale:

  • CVE-2020-28007: Atac prin link simbolic în directorul cu logurile Exim;
  • CVE-2020-28008: Atacuri asupra directorului cu spool;
  • CVE-2020-28014: Crearea unui fișier arbitrar;
  • CVE-2021-27216: Ștergerea unui fișier arbitrar;
  • CVE-2020-28011: Overflow de buffer în funcția queue_run();
  • CVE-2020-28010: Scriere dincolo de buffer în funcția main();
  • CVE-2020-28013: Overflow de buffer în funcția parse_fix_phrase();
  • CVE-2020-28016: Scriere dincolo de buffer în funcția parse_fix_phrase();
  • CVE-2020-28015: Inserarea unei noi linii în antetul fișierului spool;
  • CVE-2020-28012: Lipsa indicatorului close-on-exec pentru canalul privilegiat anonim;
  • CVE-2020-28009: Overflow de întreg în funcția get_stdinput().



Sursa: opennet.ro
Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS 🔥 Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS | ProHoster