2008-12-04 10 views
8

Esta pregunta está más relacionada con la seguridad que la programación relacionada, lo siento si no debería estar aquí.¿Es una buena práctica ocultar información del servidor web en encabezados HTTP?

Actualmente estoy desarrollando una aplicación web y tengo curiosidad por saber por qué a la mayoría de los sitios web no les importa mostrar su configuración de servidor exacta en encabezados HTTP, como versiones de Apache y PHP, con "mod_perl, mod_python,. .. "lista y así sucesivamente.

Desde el punto de vista de la seguridad, preferiría que fuera imposible ejecutar PHP en Apache, ASP.NET en IIS o incluso Rails en Lighttpd.

Obviamente, "la oscuridad no es seguridad", pero ¿debería preocuparme en absoluto que los visitantes sepan qué versión de Apache y PHP está ejecutando mi servidor? ¿Es una buena práctica o totalmente innecesario ocultar esta información?

Respuesta

5

Creo que normalmente ve esos encabezados porque los sistemas los envían de forma predeterminada.

Los quito rutinariamente ya que no proporcionan ningún valor real y podrían, como sugirió revelar información sobre el servidor.

+0

así que supongo que la siguiente pregunta es SO, ¿cómo eliminar las cabeceras HTTP? :PAG – alex

4

Al ejecutar nmap -O -sV contra un IP, obtendrá las versiones del sistema operativo y de servicio con un alto grado de precisión. La única información adicional que está regalando al hacer que su servidor publicite esa información es qué módulos ha cargado.

5

Ocultar la información en los encabezados por lo general solo ralentiza a los villanos perezosos e ignorantes. Hay muchas formas de huellas dactilares en un sistema.

6

El conocimiento prevaleciente es eliminar la identificación del servidor y la versión; mejor aún, cámbielos a otra ID y versión legítima del servidor; de esta forma, el atacante desaprovecha las vulnerabilidades de IIS contra Apache o algo así. Bien podría engañar al atacante.

Pero, sinceramente, hay tantas otras pistas para seguir, me pregunto si esto vale la pena. Supongo que podría evitar que los atacantes usen un motor de búsqueda para encontrar servidores con vulnerabilidades conocidas.

(Personalmente, no me molesto en mi servidor HTTP, pero está escrito en Java y mucho menos vulnerable a las clases típicas de ataque.)

3

Parece que algunas de las respuestas están perdiendo una ventaja obvia de apagar los encabezados.

Sí, todos tienen razón; el giro de los encabezados (y la línea de estado presente, por ejemplo, en las listas de directorios) no impide que un atacante descubra qué software utiliza.

Sin embargo, desactivar esta información evita el malware que utiliza google para buscar que los sistemas vulnerables no lo encuentren.

tldr: No lo use como una (o incluso como LA) medida de seguridad, sino como una medida para ahuyentar el tráfico no deseado.

3

Normalmente desactivo la información de la versión del encabezado de Apache con ServerTokens; no agrega nada útil.

Un punto que nadie ha recogido en adelante, es que se parece a una mejor seguridad a un cliente potencial, compañía de pruebas de lápiz, etc, si usted está dando menos información desde su servidor web.

Así que dar menos información a cabo aumenta la seguridad percibida (es decir, se nota que realmente ha pensado en ello y hecho algo)

Cuestiones relacionadas