Se ha emitido de manera urgente una actualización del servidor http Apache 2.4.50, que corrige una vulnerabilidad 0-day (CVE-2021-41773) ya explotada, permitiendo el acceso a archivos desde áreas fuera del directorio raíz del sitio. Mediante esta vulnerabilidad, se pueden cargar archivos de sistema arbitrarios y scripts web de lectura disponibles para el usuario bajo el cual se ejecuta el servidor http. Los desarrolladores fueron notificados del problema el 17 de septiembre, pero solo pudieron emitir la actualización hoy, después de que se registraran casos de explotación de la vulnerabilidad para atacar sitios.
El peligro de la vulnerabilidad se mitiga en parte porque el problema solo se manifiesta en la recientemente lanzada versión 2.4.49 y no afecta a versiones anteriores. En las ramas estables de distribuciones de servidor conservadoras, la versión 2.4.49 aún no se ha utilizado (Debian, RHEL, Ubuntu, SUSE), pero el problema afectó a distribuciones que se actualizan continuamente, como Fedora, Arch Linux y Gentoo, así como a puertos de FreeBSD.
La vulnerabilidad se debe a un error introducido durante la reestructuración del código para normalizar rutas en URI, que causa que un punto codificado con la secuencia «» en la ruta no se normalice si es precedido por otro punto. Así, se hace posible la inyección de caracteres no filtrados «..\/» en la ruta resultante mediante la especificación de la secuencia «.\/» en la solicitud. Por ejemplo, una solicitud como «https://example.com/cgi-bin/././././etc/passwd» o «https://example.com/cgi-bin/.////etc/hosts» permitía obtener el contenido del archivo «/etc/passwd».
El problema no se manifiesta si el acceso a los directorios está explícitamente prohibido mediante la configuración «require all denied». Por ejemplo, para una protección parcial se puede especificar en el archivo de configuración: require all denied
En la versión Apache httpd 2.4.50 también se ha corregido otra vulnerabilidad (CVE-2021-41524) que afecta al módulo que implementa el protocolo HTTP\/2. Esta vulnerabilidad permitía, a través del envío de una solicitud especialmente formada, iniciar un desreferenciamiento de puntero nulo y provocar un fallo en el proceso. Esta vulnerabilidad también se manifiesta solo en la versión 2.4.49. Como solución alternativa, se puede desactivar el soporte para el protocolo HTTP\/2.
Fuente: opennet.ru
