Recientes investigaciones han revelado una serie de vulnerabilidades críticas en Apache HTTPd 2.4, el servidor web de código abierto ampliamente utilizado. El investigador de seguridad Orange Tsai, de DEVCORE, ha identificado varias debilidades significativas que podrían comprometer la seguridad de los sistemas que utilizan este software.
Apache HTTPd funciona sobre una arquitectura modular, donde cientos de módulos independientes gestionan las solicitudes de los clientes. Aunque esta modularidad permite una gran especialización, también introduce riesgos debido a la falta de interfaces estandarizadas y la complejidad de las interacciones entre los módulos.
Tipos de Vulnerabilidades Identificadas
Tsai ha descubierto tres tipos principales de ataques de confusión que explotan ambigüedades en la interpretación de las estructuras de datos compartidas entre los módulos del servidor:
- Confusión de Nombre de Archivo: Los atacantes pueden manipular cómo se interpretan los nombres de archivo, lo que puede llevar a comportamientos inesperados del sistema.
- Confusión de Raíz de Documento: Este ataque explota inconsistencias en la interpretación de la raíz de documentos, lo que puede permitir el acceso a archivos no autorizados.
- Confusión de Controladores: Aprovecha las debilidades en la gestión de solicitudes por parte de los controladores internos, permitiendo la ejecución de código no deseado.
El análisis de Tsai, presentado en Black Hat USA 2024, detalla estas vulnerabilidades y cómo pueden ser explotadas. Su estudio también resalta una serie de deudas técnicas en Apache HTTPd, incluyendo nuevas vulnerabilidades, 20 técnicas de explotación y más de 30 estudios de caso.
Vulnerabilidades Reportadas
Entre las vulnerabilidades identificadas y comunicadas al equipo de Apache se encuentran:
- CVE-2024-38472: Vulnerabilidad SSRF en Apache HTTP Server en Windows que podría permitir la filtración de hashes NTLM a través de solicitudes maliciosas.
- CVE-2024-39573: Problema en mod_rewrite que permite la sustitución de manejadores de proxy, lo que podría llevar a configuraciones inseguras.
- CVE-2024-38477: Fallo en mod_proxy que puede causar una denegación de servicio (DoS) mediante solicitudes maliciosas.
- CVE-2024-38476: Posibilidad de ejecución de manejadores locales mediante redireccionamientos internos utilizando salida maliciosa de aplicaciones back-end.
- CVE-2024-38475: Debilidad en mod_rewrite cuando el primer segmento de sustitución coincide con la ruta del sistema de archivos.
- CVE-2024-38474: Problema de codificación con signos de interrogación en mod_rewrite que permite la ejecución de scripts en directorios no directamente accesibles.
- CVE-2024-38473: Problema de codificación en mod_proxy que permite el envío de URLs mal codificadas a servicios backend.
- CVE-2023-38709: Divulgación de respuesta HTTP.
Recomendaciones de Actualización
Las vulnerabilidades fueron corregidas en las versiones siguientes de Apache HTTPd:
- Versión 2.4.59: Se solucionó un CVE.
- Versión 2.4.60: Corregidos el resto de los problemas identificados.
- Versión 2.4.62: Se corrigió una nueva vulnerabilidad adicional (CVE-2024-40725).
Se recomienda a los administradores de sistemas que actualicen a las versiones mencionadas para mitigar los riesgos asociados con estas vulnerabilidades y proteger sus sistemas contra posibles ataques. La actualización oportuna es crucial para mantener la seguridad y estabilidad de las infraestructuras web basadas en Apache HTTPd.