Últimas vulnerabilidades en módulos de Apache
En sólo una semana, hemos sido testigos de varios fallos de seguridad que afectan a diferentes módulos del conocido servidor web Apache.
Afortunadamente las vulnerabilidades, de distinta consideración e impacto, han sido todas anunciadas junto con su actualización correspondiente.
El día seis de enero se daban a conocer, simultáneamente, dos vulnerabilidades en módulos de Apache. La primera de ellas, la menos grave, podía conducir a una denegación de servicio a través del módulo de cifrado mod_ssl y afectaba sólo a la rama 2.0.x del servidor web. El fallo puede ser reproducido a través de una petición especialmente manipulada que lleva al módulo a referenciar un puntero nulo. Además, para poder atacar un servidor vulnerable, se deben dar otras condiciones que dificultan la explotación del fallo, como por ejemplo, el hecho de que sea necesario que el servidor utilice una página de error 400 propia.
Además, se anunciaba otro fallo en mod_auth_pgsql, un módulo necesario para que el servidor web se autentique contra información almacenada en un servidor PostgreSQL. La vulnerabilidad, catalogada como crítica, permitía el acceso local y la ejecución de código arbitrario con los privilegios del servidor web. El fallo se debe a varios errores en la forma en la que el módulo registra información proporcionada por el usuario, por ejemplo el campo nombre. El atacante debía conocer la URI de al menos un recurso del servidor configurado para usar este módulo de autenticación. El fallo se confirmó en la versión del módulo 2.0.2b1 para Apache 2.x.
Por último el día 10 de enero se identificó una vulnerabilidad en el módulo auth_ldap de Apache, que también puede ser utilizada por atacantes remotos para ejecutar código arbitrario. Este fallo se debe a un error en el formato de cadena en la función auth_ldap_log_reason que no valida correctamente algunas cadenas antes de ser pasadas a la función de registro ap_log_rerror. Puede ser utilizada por usuarios remotos no autenticados para comprometer servidores web vulnerables donde auth_ldap esté instalado y configurado, por ejemplo, proporcionando un nombre de usuario especialmente manipulado durante la autenticación. Los módulos afectados las versiones anteriores a 1.6.1 de auth_ldap y el error también ha sido calificado como crítico.
Ninguno de estos módulos se instala por defecto con Apache, y en todos los casos son mantenidos por terceros ajenos en un principio a la Apache Software Fundation. Ante estas tres vulnerabilidades independientes, los programadores de estos módulos han proporcionado las correspondientes actualizaciones.