Exim 4.94.2 atjauninājums ar labojumiem 10 attālināti izmantojamām ievainojamībām

Exim 4.94.2 pasta servera laidiens ir publicēts, novēršot 21 ievainojamību (CVE-2020-28007-CVE-2020-28026, CVE-2021-27216), kuras identificēja Qualys un uzrādīja ar koda nosaukumu. 21Nagi. 10 problēmas var izmantot attālināti (ieskaitot koda izpildi ar root tiesībām), manipulējot ar SMTP komandām, mijiedarbojoties ar serveri.

Problēma skar visas Exim versijas, kuru vēsture Git tiek izsekota kopš 2004. gada. Ir sagatavoti ekspluatācijas prototipi 4 vietējām ievainojamībām un 3 attālinātām problēmām. Vietējo ievainojamību izmantošana (CVE-2020-28007, CVE-2020-28008, CVE-2020-28015, CVE-2020-28012) ļauj paaugstināt savas privilēģijas root lietotājam. Divas attālās problēmas (CVE-2020-28020, CVE-2020-28018) ļauj izpildīt kodu bez autentifikācijas kā Exim lietotājam (pēc tam varat iegūt root piekļuvi, izmantojot kādu no vietējām ievainojamībām).

CVE-2020-28021 ievainojamība nodrošina tūlītēju attālo koda izpildi ar root tiesībām, taču tai ir nepieciešama autentificēta piekļuve (lietotājam ir jāizveido autentificēta sesija, pēc kuras viņš var izmantot ievainojamību, manipulējot ar parametru AUTH komandā MAIL FROM). Problēmu rada fakts, ka uzbrucējs var panākt virknes aizstāšanu spoles faila galvenē, ierakstot autentificētu_sender vērtību, pareizi neizlaižot speciālās rakstzīmes (piemēram, nododot komandu “MAIL FROM:<> AUTH=Raven+0AReyes”). .

Turklāt tiek atzīmēts, ka cita attālā ievainojamība CVE-2020-28017 ir izmantojama, lai bez autentifikācijas izpildītu kodu ar “exim” lietotāja tiesībām, taču tai ir nepieciešama vairāk nekā 25 GB atmiņas. Pārējām 13 ievainojamībām potenciāli varētu sagatavot arī izlietojumus, taču darbs šajā virzienā vēl nav veikts.

Exim izstrādātāji tika informēti par problēmām pagājušā gada oktobrī un pavadīja vairāk nekā 6 mēnešus, izstrādājot labojumus. Visiem administratoriem ieteicams steidzami atjaunināt Exim savos pasta serveros uz versiju 4.94.2. Visas Exim versijas pirms 4.94.2. izlaiduma ir pasludinātas par novecojušām. Jaunās versijas izdošana tika saskaņota ar distribūcijām, kas vienlaikus publicēja pakotņu atjauninājumus: Ubuntu, Arch Linux, FreeBSD, Debian, SUSE un Fedora. RHEL un CentOS problēma neietekmē, jo Exim nav iekļauts to standarta pakotņu repozitorijā (EPEL vēl nav atjauninājuma).

Noņemtās ievainojamības:

  • CVE-2020-28017: Vesela skaitļa pārpilde funkcijā Receive_add_recipient();
  • CVE-2020-28020: Vesela skaitļa pārpilde funkcijā Receive_msg();
  • CVE-2020-28023: ārpus robežām nolasīts smtp_setup_msg();
  • CVE-2020-28021: jaunās rindas aizstāšana spoles faila galvenē;
  • CVE-2020-28022: rakstiet un lasiet apgabalā ārpus piešķirtā bufera funkcijā extract_option();
  • CVE-2020-28026: virknes saīsināšana un aizstāšana spool_read_header();
  • CVE-2020-28019: avārija, atiestatot funkcijas rādītāju pēc BDAT kļūdas;
  • CVE-2020-28024: bufera nepietiekamība funkcijā smtp_ungetc();
  • CVE-2020-28018: Bufera piekļuve bez maksas lietošanai vietnē tls-openssl.c
  • CVE-2020-28025: funkcijā pdkim_finish_bodyhash() nolasīts ārpus robežām.

Vietējās ievainojamības:

  • CVE-2020-28007: simboliskas saites uzbrukums Exim žurnāla direktorijā;
  • CVE-2020-28008: Spool direktoriju uzbrukumi;
  • CVE-2020-28014: patvaļīga failu izveide;
  • CVE-2021-27216: patvaļīga faila dzēšana;
  • CVE-2020-28011: bufera pārpilde queue_run();
  • CVE-2020-28010: Ārpus robežām rakstiet in main();
  • CVE-2020-28013: bufera pārpilde funkcijā parse_fix_phrase();
  • CVE-2020-28016: Ārpus robežām rakstīt parse_fix_phrase();
  • CVE-2020-28015: jaunās rindas aizstāšana spoles faila galvenē;
  • CVE-2020-28012: priviliģētai, nenosauktai caurulei trūkst tuvu-izpildītāja karoga;
  • CVE-2020-28009: Vesela skaitļa pārpilde funkcijā get_stdinput().



Avots: opennet.ru

Pievieno komentāru