Investigador de seguridad de Google reporta tres fallos en software de servicios web Apache

Apache ha corregido recientemente múltiples vulnerabilidades en su software de servidor web que podrían haber llevado potencialmente a la ejecución de código arbitrario y, en escenarios específicos, incluso podrían permitir a los atacantes causar indisponibilidad y denegación de servicio. Las fallas, identificadas como CVE-2020-9490, CVE-2020-11984, CVE-2020-11993, fueron descubiertas por Felix Wilhelm de Google Project Zero, y desde entonces han sido solventadas por la Fundación Apache en la última versión del software (2.4.46).

El primer fallo implica una posible vulnerabilidad de ejecución remota de código a causa de un desbordamiento del búfer de memoria con el módulo «mod_uwsgi» (CVE-2020-11984), lo que potencialmente permite que un atacante acceda, altere o elimine datos confidenciales según los privilegios asociados.

«Una solicitud maliciosa puede resultar en la divulgación de información o ejecución remota de código de un archivo existente en el servidor que se ejecuta en un entorno de proceso malicioso».

Apache Security Team

Un segundo fallo corresponde a una vulnerabilidad presente cuando la depuración está habilitada en el módulo «mod_http2» (CVE-2020-11993), lo que provoca que se realicen declaraciones de registro en la conexión incorrecta y, por tanto, se dañe la memoria debido al uso simultáneo del grupo de registros.

CVE-2020-9490, el más severo de los tres, también reside en el módulo HTTP/2 y utiliza un encabezado ‘Cache-Digest’ especialmente diseñado para provocar una corrupción de la memoria que provoque un bloqueo y la denegación de servicio.

Cache Digest es parte de una función de optimización web, hoy descontinuada, que tiene como objetivo con las peticiones del servidor, lo que permite que un servidor envíe respuestas de manera preventiva a un cliente antes de tiempo, al permitir que los clientes informen al servidor de sus contenidos recién almacenados en caché para que no se desperdicie ancho de banda enviando recursos que ya están en la caché del cliente. Por lo tanto, cuando se inyecta un valor especialmente diseñado en el encabezado ‘Cache-Digest’ en una solicitud HTTP/2, se produciría un bloqueo cuando el servidor envía un paquete PUSH utilizando el encabezado. En los servidores sin parches, este problema se puede resolver desactivando la función de inserción del servidor HTTP/2.

Aunque actualmente no hay informes de que estas vulnerabilidades estén siendo explotadas por los atacantes, es importante que los parches se apliquen a los sistemas vulnerables inmediatamente después de las pruebas adecuadas, así como asegurarse de que la aplicación se haya configurado solo con los permisos necesarios para mitigar el impacto.

Referencia: