Ĝisdatigo de Exim 4.94.2 korektas 10 malproksime ekspluateblajn vundeblecojn

La liberigo de la poŝtservilo Exim 4.94.2 estis publikigita kun la elimino de 21 vundeblecoj (CVE-2020-28007-CVE-2020-28026, CVE-2021-27216), kiuj estis identigitaj de Qualys kaj prezentitaj sub la kodnomo. 21 Najloj. 10 problemoj povas esti ekspluatitaj malproksime (inkluzive de ekzekuti kodon kun radikrajtoj) per manipulado de SMTP-komandoj dum interagado kun la servilo.

Ĉiuj versioj de Exim, kies historio estis spurita en Git ekde 2004, estas trafitaj de la problemo. Laboraj prototipoj de ekspluataĵoj estis preparitaj por 4 lokaj vundeblecoj kaj 3 foraj problemoj. Eksplotoj por lokaj vundeblecoj (CVE-2020-28007, CVE-2020-28008, CVE-2020-28015, CVE-2020-28012) permesas al vi altigi viajn privilegiojn al la radika uzanto. Du foraj problemoj (CVE-2020-28020, CVE-2020-28018) permesas ekzekuti kodon sen aŭtentigo kiel la Exim-uzanto (vi tiam povas akiri radikan aliron per ekspluatado de unu el la lokaj vundeblecoj).

La vundebleco CVE-2020-28021 permesas tujan foran kodekzekuton kun radikrajtoj, sed postulas aŭtentikigitan aliron (la uzanto devas establi aŭtentikigitan sesion, post kiu ili povas ekspluati la vundeblecon per manipulado de la AUTH-parametro en la MAIL FROM-komando). La problemo estas kaŭzita de la fakto, ke atakanto povas atingi ĉenstataŭigon en la kaplinio de spool-dosiero skribante la authenticated_sender-valoron sen konvene eskapi specialajn signojn (ekzemple, pasante la komandon "MAIL FROM:<> AUTH=Raven+0AReyes). ").

Aldone, oni rimarkas, ke alia fora vundebleco, CVE-2020-28017, estas ekspluatebla por ekzekuti kodon kun "exim" uzantrajtoj sen aŭtentigo, sed postulas pli ol 25 GB da memoro. Por la ceteraj 13 vundeblecoj, ekspluatoj povus ankaŭ esti pretaj, sed laboro en ĉi tiu direkto ankoraŭ ne estis farita.

La programistoj de Exim estis sciigitaj pri la problemoj en oktobro de la pasinta jaro kaj pasigis pli ol 6 monatojn por disvolvi korektojn. Ĉiuj administrantoj rekomendas urĝe ĝisdatigi Exim sur siaj poŝtserviloj al versio 4.94.2. Ĉiuj versioj de Exim antaŭ eldono 4.94.2 estis deklaritaj malnoviĝintaj. La publikigo de la nova versio estis kunordigita kun distribuoj kiuj samtempe publikigis pakaĵĝisdatigojn: Ubuntu, Arch Linux, FreeBSD, Debian, SUSE kaj Fedora. RHEL kaj CentOS ne estas tuŝitaj de la problemo, ĉar Exim ne estas inkluzivita en ilia norma pak-deponejo (EPEL ankoraŭ ne havas ĝisdatigon).

Forigitaj vundeblecoj:

  • CVE-2020-28017: Entjera superfluo en la funkcio receive_add_recipient();
  • CVE-2020-28020: Entjera superfluo en la funkcio receive_msg();
  • CVE-2020-28023: Eksterlime legita en smtp_setup_msg();
  • CVE-2020-28021: Newline-anstataŭigo en bobendosierokapo;
  • CVE-2020-28022: Skribu kaj legu en areo ekster la asignita bufro en la funkcio extract_option();
  • CVE-2020-28026: Detranĉo kaj anstataŭigo de ĉenoj en spool_read_header ();
  • CVE-2020-28019: Kraŝo dum restarigo de funkciomontrilo post BDAT-eraro okazas;
  • CVE-2020-28024: Bufra subfluo en la funkcio smtp_ungetc();
  • CVE-2020-28018: Uzo-post-senpaga bufro-aliro en tls-openssl.c
  • CVE-2020-28025: Legita eksterlima en la funkcio pdkim_finish_bodyhash().

Lokaj vundeblecoj:

  • CVE-2020-28007: Simbola ligo-atako en la dosierujo de la protokolo Exim;
  • CVE-2020-28008: Spool-atakoj de dosierujo;
  • CVE-2020-28014: Arbitra dosiero-kreado;
  • CVE-2021-27216: Arbitra dosiero forigo;
  • CVE-2020-28011: Bufro superfluo en queue_run ();
  • CVE-2020-28010: Eksterlime skribu en main();
  • CVE-2020-28013: Bufera superfluo en funkcio parse_fix_phrase ();
  • CVE-2020-28016: Ekster limoj skribu en parse_fix_phrase ();
  • CVE-2020-28015: Newline-anstataŭigo en bobendosierokapo;
  • CVE-2020-28012: Mankas flago de proksim-on-exec por privilegiita nenomita tubo;
  • CVE-2020-28009: Entjera superfluo en la funkcio get_stdinput().



fonto: opennet.ru

Aldoni komenton