Exim 4.94.2 update na may mga pag-aayos para sa 10 malayuang mapagsamantalang mga kahinaan

Ang paglabas ng Exim 4.94.2 mail server ay nai-publish na may pag-aalis ng 21 mga kahinaan (CVE-2020-28007-CVE-2020-28026, CVE-2021-27216), na kinilala ng Qualys at ipinakita sa ilalim ng pangalan ng code 21Pako. 10 mga problema ay maaaring pinagsamantalahan mula sa malayo (kabilang ang pagpapatupad ng code na may mga karapatan sa ugat) sa pamamagitan ng pagmamanipula ng mga utos ng SMTP kapag nakikipag-ugnayan sa server.

Ang lahat ng mga bersyon ng Exim, na ang kasaysayan ay sinusubaybayan sa Git mula noong 2004, ay apektado ng problema. Ang mga gumaganang prototype ng pagsasamantala ay inihanda para sa 4 na lokal na kahinaan at 3 malalayong problema. Nagbibigay-daan sa iyo ang mga pagsasamantala para sa mga lokal na kahinaan (CVE-2020-28007, CVE-2020-28008, CVE-2020-28015, CVE-2020-28012) na itaas ang iyong mga pribilehiyo sa root user. Dalawang malalayong isyu (CVE-2020-28020, CVE-2020-28018) ang nagbibigay-daan sa code na maisagawa nang walang pagpapatotoo bilang Exim user (pagkatapos ay posible na makakuha ng root access sa pamamagitan ng pagsasamantala sa isa sa mga lokal na kahinaan).

Ang kahinaan ng CVE-2020-28021 ay nagbibigay-daan sa agarang pagpapatupad ng malayuang code na may mga karapatan sa ugat, ngunit nangangailangan ng napatotohanang pag-access (dapat magtatag ang user ng isang napatotohanang session, pagkatapos nito ay maaari nilang pagsamantalahan ang kahinaan sa pamamagitan ng pagmamanipula ng AUTH parameter sa MAIL FROM command). Ang problema ay sanhi ng katotohanan na ang isang attacker ay maaaring makamit ang pagpapalit ng string sa header ng isang spool file sa pamamagitan ng pagsulat ng authenticated_sender na halaga nang hindi maayos na tinatakasan ang mga espesyal na character (halimbawa, sa pamamagitan ng pagpasa ng command na "MAIL FROM:<> AUTH=Raven+0AReyes ”).

Bukod pa rito, nabanggit na ang isa pang malayuang kahinaan, ang CVE-2020-28017, ay mapagsamantalahan upang maisagawa ang code na may "exim" na mga karapatan ng gumagamit nang walang pagpapatunay, ngunit nangangailangan ng higit sa 25 GB ng memorya. Para sa natitirang 13 mga kahinaan, ang mga pagsasamantala ay maaaring maging handa, ngunit ang gawain sa direksyong ito ay hindi pa naisasagawa.

Ang mga developer ng Exim ay naabisuhan tungkol sa mga problema noong Oktubre noong nakaraang taon at gumugol ng higit sa 6 na buwan sa pagbuo ng mga pag-aayos. Ang lahat ng mga administrator ay inirerekomenda na agarang i-update ang Exim sa kanilang mga mail server sa bersyon 4.94.2. Ang lahat ng mga bersyon ng Exim bago ang paglabas ng 4.94.2 ay idineklara na hindi na ginagamit. Ang paglalathala ng bagong bersyon ay nakipag-ugnayan sa mga pamamahagi na sabay-sabay na nag-publish ng mga update sa package: Ubuntu, Arch Linux, FreeBSD, Debian, SUSE at Fedora. Ang RHEL at CentOS ay hindi apektado ng problema, dahil ang Exim ay hindi kasama sa kanilang karaniwang imbakan ng pakete (wala pang update ang EPEL).

Inalis ang mga kahinaan:

  • CVE-2020-28017: Integer overflow sa receive_add_recipient() function;
  • CVE-2020-28020: Integer overflow sa receive_msg() function;
  • CVE-2020-28023: Out-of-bounds read in smtp_setup_msg();
  • CVE-2020-28021: Pagpapalit ng bagong linya sa header ng spool file;
  • CVE-2020-28022: Sumulat at magbasa sa isang lugar sa labas ng inilaan na buffer sa extract_option() function;
  • CVE-2020-28026: String truncation at pagpapalit sa spool_read_header();
  • CVE-2020-28019: Nag-crash kapag nagre-reset ng function pointer pagkatapos maganap ang BDAT error;
  • CVE-2020-28024: Buffer underflow sa smtp_ungetc() function;
  • CVE-2020-28018: Use-after-free buffer access sa tls-openssl.c
  • CVE-2020-28025: Isang out-of-bounds na nabasa sa pdkim_finish_bodyhash() function.

Mga lokal na kahinaan:

  • CVE-2020-28007: Symbolic link attack sa Exim log directory;
  • CVE-2020-28008: Mga pag-atake sa direktoryo ng spool;
  • CVE-2020-28014: Arbitrary na paggawa ng file;
  • CVE-2021-27216: Arbitrary na pagtanggal ng file;
  • CVE-2020-28011: Buffer overflow sa queue_run();
  • CVE-2020-28010: Out-of-bounds write in main();
  • CVE-2020-28013: Buffer overflow sa function na parse_fix_phrase();
  • CVE-2020-28016: Out-of-bounds write in parse_fix_phrase();
  • CVE-2020-28015: Pagpapalit ng bagong linya sa header ng spool file;
  • CVE-2020-28012: Nawawala ang close-on-exec na flag para sa isang privileged na hindi pinangalanang pipe;
  • CVE-2020-28009: Integer overflow sa get_stdinput() function.



Pinagmulan: opennet.ru

Magdagdag ng komento