Seguridad en los banner de los servidores web Apache, ocultandoinformación

Buenas a todos, una de las claves para mantener un sistema seguro es proporcionar el menor número de información, pero parece que aún hay bastantes organizaciones que no tienen este hecho como una premisa. Un ejemplo claro es el tema de los banner de los servidores web.Los banner son una fuga de información importante porque pueden proporcionar datos como el modelo concreto de servidor web utilizado o el sistema operativo sobre el que corren, lo que supone información clave para un exploiter. Por tanto es necesario limitar esta información.Para que veáis un ejemplo de banner he instalado un servidor Wamp sobre un Windows 7 y he utilizado la herramienta Anubis 1.1., que desarrollé hace un tiempo, para visualizar el banner:


Como veis por defecto Wamp muestra "demasiada información":

Apache/2.2.17 (Win32) PHP/5.3.4

Esto es debido a que en el fichero de configuración "httpd.conf" o no tenemos la clave "ServerTokens XXX" o tenemos la clave configurada de la siguiente manera:
  • ServerTokens Full
Para limitar la información podemos utilizar alguna de las siguientes claves:
  1. ServerTokens Prod(Mostrará en el banner: Server: Apache)
  2. ServerTokens Major(Mostrará en el banner: Server: Apache/2)
  3. ServerTokens Minor(Mostrará en el banner: Server: Apache/2.2)
  4. ServerTokens Min(Mostrará en el banner: Server: Apache/2.2.17)
  5. ServerTokens OS(Mostrará en el banner: Server: Apache/2.2.17 (Win32)
Yo para la prueba he utilizado la clave:
  • ServerTokens Prod
Y este es el resultado:


Como veis es muy sencillo de configurar. Otra opción es modificar el banner antes de realizar la configuración, para ello podéis ir al fichero "includes/ap_release.h" y modificar las siguientes líneas:

#define AP_SERVER_BASEVENDOR "Apache Software Foundation"
#define AP_SERVER_BASEPROJECT "Apache HTTP Server"#define AP_SERVER_BASEPRODUCT "Apache"

Por algo como lo siguiente:

#define AP_SERVER_BASEVENDOR "Flu Project"
#define AP_SERVER_BASEPROJECT "Flu Server"#define AP_SERVER_BASEPRODUCT "Flu"

Una modificación que se suele hacer es modificar los nombres de Apache, etc., por otro servidor web conocido como IIS, para intentar confundir a los usuarios maliciosos, que intentarán atacarnos pensando que tenemos otro servidor web y/o sistema operativo.

Eso es todo por hoy, ¡cuidado con la información que compartís!

Saludos!