Actualización de Exim 4.94.2 con correccións para 10 vulnerabilidades explotables remotamente

O lanzamento do servidor de correo Exim 4.94.2 publicouse coa eliminación de 21 vulnerabilidades (CVE-2020-28007-CVE-2020-28026, CVE-2021-27216), que foron identificadas por Qualys e presentadas co nome en clave. 21 Unhas. 10 problemas poden ser explotados de forma remota (incluíndo a execución de código con dereitos de root) mediante a manipulación de comandos SMTP ao interactuar co servidor.

Todas as versións de Exim, cuxo historial se rastrexa en Git desde 2004, están afectadas polo problema. Preparáronse prototipos operativos de exploits para 4 vulnerabilidades locais e 3 problemas remotos. Os exploits para vulnerabilidades locais (CVE-2020-28007, CVE-2020-28008, CVE-2020-28015, CVE-2020-28012) permítenche elevar os teus privilexios ao usuario root. Dous problemas remotos (CVE-2020-28020, CVE-2020-28018) permiten executar código sen autenticación como usuario Exim (pode obter acceso root explotando unha das vulnerabilidades locais).

A vulnerabilidade CVE-2020-28021 permite a execución remota inmediata de código con dereitos de root, pero require un acceso autenticado (o usuario debe establecer unha sesión autenticada, despois da cal pode explotar a vulnerabilidade mediante a manipulación do parámetro AUTH no comando MAIL FROM). O problema é causado polo feito de que un atacante pode conseguir a substitución de cadeas na cabeceira dun ficheiro spool escribindo o valor authenticated_sender sen escapar correctamente os caracteres especiais (por exemplo, pasando o comando "MAIL FROM:<> AUTH=Raven+0AReyes). ").

Ademais, nótase que outra vulnerabilidade remota, CVE-2020-28017, é explotable para executar código con dereitos de usuario "exim" sen autenticación, pero require máis de 25 GB de memoria. Para as 13 vulnerabilidades restantes, tamén se poderían preparar exploits, pero aínda non se levou a cabo o traballo nesta dirección.

Os desenvolvedores de Exim foron notificados dos problemas en outubro do ano pasado e pasaron máis de 6 meses desenvolvendo solucións. Recoméndase a todos os administradores que actualicen con urxencia Exim nos seus servidores de correo á versión 4.94.2. Todas as versións de Exim anteriores á versión 4.94.2 foron declaradas obsoletas. A publicación da nova versión coordinouse con distribucións que publicaron simultáneamente actualizacións de paquetes: Ubuntu, Arch Linux, FreeBSD, Debian, SUSE e Fedora. RHEL e CentOS non se ven afectados polo problema, xa que Exim non está incluído no seu repositorio de paquetes estándar (EPEL aínda non ten unha actualización).

Vulnerabilidades eliminadas:

  • CVE-2020-28017: desbordamento de enteiros na función receive_add_recipient();
  • CVE-2020-28020: desbordamento de enteiros na función receive_msg();
  • CVE-2020-28023: lectura fóra dos límites en smtp_setup_msg();
  • CVE-2020-28021: Substitución de nova liña na cabeceira do ficheiro de cola;
  • CVE-2020-28022: escribe e le nunha área fóra do búfer asignado na función extract_option();
  • CVE-2020-28026: Truncamento e substitución de cadeas en spool_read_header();
  • CVE-2020-28019: fallo ao restablecer un punteiro de función despois de que se produza un erro BDAT;
  • CVE-2020-28024: desbordamento do búfer na función smtp_ungetc();
  • CVE-2020-28018: acceso ao búfer libre de uso posterior en tls-openssl.c
  • CVE-2020-28025: lectura fóra dos límites na función pdkim_finish_bodyhash().

Vulnerabilidades locais:

  • CVE-2020-28007: ataque de ligazóns simbólicas no directorio de rexistro de Exim;
  • CVE-2020-28008: ataques ao directorio de cola;
  • CVE-2020-28014: Creación de ficheiros arbitrarios;
  • CVE-2021-27216: Supresión arbitraria do ficheiro;
  • CVE-2020-28011: desbordamento do búfer en queue_run();
  • CVE-2020-28010: Escritura fóra dos límites en main();
  • CVE-2020-28013: desbordamento do búfer na función parse_fix_phrase();
  • CVE-2020-28016: escribe fóra dos límites en parse_fix_phrase();
  • CVE-2020-28015: Substitución de nova liña na cabeceira do ficheiro de cola;
  • CVE-2020-28012: falta a marca de close-on-exec para unha canalización sen nome privilexiada;
  • CVE-2020-28009: desbordamento de enteiros na función get_stdinput().



Fonte: opennet.ru

Engadir un comentario