2010-09-09 20 views

Respuesta

5

Los comentarios en Aristos link dan una buena respuesta al Why.

Se reduce a MS que no quiere permitir fácilmente que las personas modifiquen este valor. Ya sea para fines de marketing u otros, está abierto a la interpretación.

Una cosa que se puede quitar de esa discusión es que la modificación del encabezado del servidor no es útil para ningún tipo de seguridad. Existen innumerables formas de detectar exactamente qué tipo (y versión) de software de servidor web se está ejecutando.

Lo que nos deja con una sola razón para hacerlo: guardar bytes. A menos que esté ejecutando un sitio de tráfico extremadamente alto, esto no es una preocupación. Si está ejecutando un sitio de alto tráfico, es más que probable que ya esté ejecutando uno o más módulos personalizados.

+0

Si bien eliminarlo casi con certeza entra dentro de la clase de "Security Theatre" en lugar de "Real Security", es muy común que las pruebas de penetración requieran que un encabezado extraño como este identifique la configuración del sistema que debe eliminarse. –

+3

Desarrollo sitios web móviles, estoy de acuerdo con el argumento de seguridad, realmente no es seguridad, pero sostengo que eliminarlo para ahorrar espacio es relevante para los clientes cuyo ancho de banda es consumido por datos innecesarios. Seamos buenos ciudadanos del mundo en red y respetemos a nuestros usuarios y la infraestructura de la que dependemos. –

+0

@NormanH: Creo que haces un buen punto. – NotMe

2

Este ejemplo no es realmente eliminar el encabezado "servidor", simplemente escriba algo más en él.

Un título mejor es "IIS7 cómo enviar un encabezado HTTP personalizado" Servidor "". Lea este artículo similar http://blogs.technet.com/b/stefan_gossner/archive/2008/03/12/iis-7-how-to-send-a-custom-server-http-header.aspx

Ahora, si se pregunta por qué de esta manera, esta no es la única forma, puede ir a su servidor web y simplemente eliminarlo de los encabezados iniciales.

Si te preguntas, por qué usar el IHttpModule + PreSendRequestHeader, porque esta es la forma en que agarras los encabezados en la parte inicial y colocas primero el encabezado "servidor" antes de hacer eso.

Espero que te ayudemos.

+0

Bueno, no. "No es lo que estoy buscando cómo enviar un encabezado http 'Servidor' personalizado. Ya sé cómo hacerlo. Lo que quiero saber es por qué es necesario hacerlo en un HttpModule para "Servidor" pero no para otros encabezados que se pueden agregar/eliminar a través de web.config (''). –

+0

@David esto es algo más que preguntas (y no estoy seguro de dar una respuesta en este momento), la respuesta a tu pregunta principal es esto que tengo escribir. – Aristos

+0

en la pregunta que hice: "' Solo quiero saber por qué es necesario eliminar [el encabezado 'Servidor'] de esta manera. "¡Gracias por su respuesta! –

-1

Response.Headers.Set("Server", "My Awesome Server"); funciona bien en el código de página, siempre que el grupo de aplicaciones esté configurado en "Modo de canalización integrada".

Básicamente, IPM es específicamente con el propósito de tener la tubería IIS integrada con la tubería ASP.NET para permitir que se haga este tipo de cosas. Vea Mehrdad Afshari's Answer para la discusión.

0

idea básica de la eliminación de los cabecera son los siguientes

  1. Por razones de seguridad. no será fácil determinar por el atacante sobre el software (versión) y el servidor web está respaldando el sitio.
  2. Reduce el tamaño de los datos producidos por el servidor al navegador.

Read more about Inspecting Http Response Headers

0

También puede vaciar el valor mediante la adición de un outboundRule en el archivo web.config en IIS 7 +:

<?xml version="1.0" encoding="utf-8"?> 
<configuration> 
    <system.webServer> 
     <rewrite> 
      <outboundRules rewriteBeforeCache="true"> 
       <rule name="Remove Server header"> 
        <match serverVariable="RESPONSE_Server" pattern=".+" /> 
        <action type="Rewrite" value="" /> 
       </rule> 
      </outboundRules> 
     </rewrite> 
    </system.webServer> 
</configuration> 
Cuestiones relacionadas