Cuidado com os response headers de sua aplicação! – Rafael O. Marques
Para removermos o header X-AspNet-Version, é bem simples! Basta irmos no web.config da aplicação e colocarmos a opção enableVersionHeader="false" em httpRuntime, que fica dentro de
Ao rodarmos a aplicação, podemos notar que o header X-AspNet-Version já não está presente, porém ainda precisamos retirar mais alguns.
Para remover o X-AspNetMvc-Version também é bem simples. Basta irmos no Global.asax e adicionar apenas uma linha de código para removermos este pequeno detalhe:
// precisamos adicionar esta linha MvcHandler.DisableMvcResponseHeader = true;
E pronto! Ao rodarmos a nossa aplicação, já não veremos mais o header X-AspNetMvc-Version presente!
Este é um pouco mais trabalhoso, mas nada demais também. Para não informarmos mais qual o servidor que a nossa aplicação está hospedada, vamos criar um HttpModule:
namespace ResponseHeaders
public class ResponseHeadersModule : IHttpModule
Agora precisamos informa-lo no web.config:
<add name="ResponseHeadersModule" type="ResponseHeaders.ResponseHeadersModule"/>
E pronto! Podemos notar que ao rodarmos a nossa aplicação, aquele header chato informando o nosso servidor não está mais presente!
Note que nós podemos brincar um pouco com isso também, e no lugar de informarmos o server certo, podemos colocar qualquer outra informação! Para isso, basta alterar o nosso ResponseHeadersModule:
HttpContext.Current.Response.Headers.Set("Server", "YOU SHALL NOT PASS!");
Agora quem tentar ver qual o server, verá esta resposta:
Este é bem simples, porém não faremos nada em nosso projeto. Para remover este header, iremos abrir o nosso iss (basta dar ctrl + r e digitar inetmgr)
Se procurarmos por Cabeçalhos de Resposta HTTP, ou HTTP Response Headers caso o seu iis esteja em inglês, vamos encontrar o tal do header X-Powered-By:
Agora basta deletá-lo que nos livramos de todos os response headers que não deveriam estar presentes em nossos sistemas! Quando entrarmos em nossa aplicação, não veremos mais nenhum dos headers!
03/12/2015 03/12/2015 ceb10n
← Como evitar mass assignment no asp.net mvc
Como criar um keylogger em javascript com apenas 4 linhas de código →
4 comentários sobre "Cuidado com os response headers de sua aplicação!"
Qual o custo de processamento dessa alteração?
03/12/2015 às 8:11 pm
eu realmente nunca fiz e nem vi nada a respeito. Tudo que posso afirmar é que o seu response ficará ligeiramente mais leve.