Home Hacking y Seguridad Seguridad Web/CGI Modificar/Eliminar el banner del servidor Apache

Ultimos Mensajes del Foro

Manual Aleatorio

Analisis forense de sistemas informticos (PDF)
Muy buen documento que describe lo que es la ciencia del analisis forense informtico, con un monton de temas muy interesantes.
Leer más...
Modificar/Eliminar el banner del servidor Apache Imprimir E-mail
Hacking y Seguridad - Seguridad Web/CGI

Eliminando o modificando este banner, conseguiremos mas seguridad de forma sencilla y complicaremos la vida a posibles atacantes.

 

 

 

  Como quitar y modificar el banner del servidor Apache
  *****************************************************


 1.- Introduccion
 2.- Modificar el banner (httpd.conf)
 3.- Modificar el banner (codigo fuente)



 1.- Introduccion
 ****************

 Tanto los servidores web como otros servicios de red que se presentan
en servidores te muestran un banner cuando conectas a ellos, este banner puede
ser utilizado para sacar informacion de un servidor y de este modo poder saber
que vulnerabilidades afectan a este software.

Por ejemplo conectando a un servidor web me da la siguiente informacion:

 HTTP/1.1 200 OK
 Date: Thu, 01 May 2003 21:13:58 GMT
 Server: Apache/2.0.41 (Unix) (Red-Hat/Linux) mod_ssl/2.8.12
 Connection: close
 Content-Type: text/html

Como podeis observar de ahi ya sabemos que servidor web utiliza, la version, el
sistema operativo que es Red-Hat y la version del modulo mod_ssl, lo cual es
muchisima informacion del servidor web y del propio sistema operativo.
Aunque no tocaremos el tema en este texto, lo mismo ocurre con servidores
FTP, telnet, pop y practicamente todos los servicios de red.

Pero no es algo inebitable, esto se puede configurar y eso es lo que vamos ha
hacer en este texto, ale, vamos a darle leñita al asunto.....


 2.- Modificar el banner (httpd.conf)
 ************************************

 La modificacion del banner del servidor Apache se puede realizar de 2
formas. Una de las formas seria modificando el fichero de configuracion de
Apache que es la que haremos ahora y con ella lo que podemos conseguir es
minimizar la informacion que el banner mostrara de nuestro servidor.

Las opciones de configuracion de Apache que utilizaremos para ello son las
siguientes:

  -- ServerTokens - Que nos permite modificar el banner en si

Las opciones de configuracion de ServerTokens son las siguientes:

 ServerTokens Prod[uctOnly]
 Banner de respuesta (e.g.): Server: Apache

 ServerTokens Major
 Banner de respuesta (e.g.): Server: Apache/2

 ServerTokens Minor
 Banner de respuesta (e.g.): Server: Apache/2.0

 ServerTokens Min[imal]
 Banner de respuesta (e.g.): Server: Apache/2.0.41

 ServerTokens OS
 Banner de respuesta (e.g.): Server: Apache/2.0.41 (Unix)

 ServerTokens Full (o sin especificar)
 Banner de respuesta (e.g.): Server: Apache/2.0.41 (Unix) (Red-Hat/Linux) mod_ssl/2.8.12

De este modo podemos limitar vastante la informacion que nuestro servidor
facilitara a los clientes.


  -- ServerSignature - Que nos permite modificar informacion de las paginas de error

Ahora veamos la opcion ServerSignature, esta opcion nos permite modificar la
informacion que se mostrara con un error 404 de pagina no encontrada, veamos
que opciones de configuracion nos ofrece:

 ServerSignature On
 Respuesta: Apache/1.3.26 Server at localhost Port 80

 ServerSignature Off
 Respuesta: (En este caso no apareceria nada)

 ServerSignature EMail
 Respuesta: Apache/1.3.26 Server at localhost Port 80

 La direccion de e-mail que se mostrara en este caso sera la que
 especifiquemos mediante la opcion ServerAdmin en la configuracion
 de Apache. Para un resultado como el del ejemplo, la linea de
 configuracion seria:
 
  ServerAdmin mail@admin

Por lo tanto como podemos observar, aunque modifiquemos el banner, un cliente
podria ver la version de nuestro servidor web simplemente accediendo a una
pagina que no exista en el servidor, por eso tambien es necesario tener muy
en cuenta la opcion ServerSignature.



  3.- Modificar el banner (codigo fuente)
  ***************************************

  Otra forma de modificar el banner que puede ser mas efectiva que la
anterior aunque tambien un poco mas complicada, es hacerlo desde el codigo
fuente de Apache antes de compilar la aplicacion. Para ello debemos bajarnos
las fuentes que las podemos obtener en:

 http://httpd.apache.org/download.cgi

  NOTA: Las pruebas que yo he realizado han sido con la version 1.3.27

Una vez descargadas las fuentes, tendremos que descomprimirlas y una vez echo
esto y habiendo entrado en el directorio que nos acaba de crear con las fuentes
deberemos editar el fichero src/include/httpd.h y las lineas que debemos
modificar estan apartir de la linea 428, concretamente son las lineas siguientes

 #define SERVER_BASEPRODUCT "Apache"
 #define SERVER_BASEREVISION "1.3.27"

De modo que si por ejemplo modificamos estas 2 variables de la siguiente manera:

  #define SERVER_BASEPRODUCT "SeSoX-WebServer"
  #define SERVER_BASEREVISION "3.5.7"

Cuando un cliente vea el banner de nuestro servidor web, este sera el siguiente:

 Server: SeSoX-WebServer/3.5.7 (Unix) (Red-Hat/Linux) mod_ssl/2.8.12

Si complementamos esta modificacin de codigo con la siguiente opcion de apache:

  ServerTokens Min[imal]

La respuesta de nuestro servidor sera la siguiente:

 Server: SeSoX-WebServer/3.5.7

Con lo cual el cliente no tendra ningun tipo de informacion ni de que servidor
web estamos utilizando, su version, del sistema operativo o de los modulos que
tiene cargados dicho servidor web. No debemos olvidar la opcion ServerSignature
que vimos anteriormente! ;)


Espero que este texto os haya sido de utilidad.
Para cualquier comentario, mejora, sugerencia o agradecimiento os podeis
dirigir a: SeSoX at govannom dot org


Este documento ha sido creado: 02/05/2003
Ultima revicion/modificaion: 02/05/2003

Autor: SeSoX
Email: SeSoX at govannom dot org
Web: http://www.govannom.org