Mam kilka serwerów IIS / 6.0, których zabezpieczenia prosi mnie o usunięcie kilku nagłówków odpowiedzi, które są wysyłane do przeglądarek klienta na żądanie. Są zaniepokojeni ujawnianiem informacji o platformie za pomocą nagłówków odpowiedzi. Usunąłem wszystkie nagłówki HTTP z konfiguracji IIS dla strony internetowej (X-Powered-By lub jakiś taki nagłówek).
(Osobiście wiem, że informacje te można łatwo znaleźć, nawet jeśli są ukryte, ale to nie moja rozmowa).
Nagłówki, które chcę usunąć:
- Serwer - Microsoft-IIS / 6.0
- Wersja X-AspNet - 2.0.50727
Wiem również, że ASP.NET MVC również emituje własny nagłówek, jeśli wiesz, jak go również usunąć, byłoby to pomocne.
- Wersja X-AspNetMvc - 1.0
źródło
Aby usunąć wszystkie niestandardowe nagłówki, które ujawniają zbyt wiele informacji - metody są różne (niestety) dla IIS 7:
Nazwa nagłówka: X-Powered-By
Dodaj:
w
<system.webServer>
dziale.Nazwa nagłówka: Serwer
Zaimplementuj moduł httpModule, który usuwa ten nagłówek, wywołując Response.Headers.Remove („Serwer”) ze zdarzenia PreSendRequestHeaders. Kolejny zasób do tego: maskowanie aplikacji sieci Web ASP.NET MVC na IIS 7
Nazwa nagłówka: Wersja X-AspNet
W sekcji httpRuntime pliku web.config - ustaw:
Nazwa nagłówka: Wersja X-AspNetMvc
Ze zdarzenia Application_Start w global.asax - wykonaj następujący kod (C #):
źródło
Umieszczenie tego w pliku web.config aplikacji ASP.NET pozbywa się nagłówka X-AspNet-Version:
Zauważ, że znacznik system.web powinien już istnieć w pliku. Nie twórz duplikatu, po prostu dodaj tag httpRuntime. Tag httpRuntime może już istnieć. Jeśli tak, po prostu dodaj atrybut lub ustaw jego wartość, jeśli już istnieje.
źródło
system.web
mojej witrynie, nie działa . wiesz dlaczego?Właśnie przeszedłem cykl „hartowania” w moim obecnym projekcie - napisałem na blogu o przyjętym przez nas podejściu, które obejmuje moduł HTTP do usuwania następujących nagłówków :
Serwer,
wersja
X-AspNet , wersja X-AspNetMvc,
X-Powered-By
Istotne utwory przedstawione poniżej:
Ale nie ma łatwego sposobu na usunięcie nagłówka odpowiedzi serwera za pomocą konfiguracji. Na szczęście IIS7 ma zarządzaną infrastrukturę modułów wtykowych, która pozwala łatwo rozszerzyć jego funkcjonalność. Poniżej znajduje się źródło modułu HttpModule do usuwania określonej listy nagłówków odpowiedzi HTTP:
Upewnij się, że podpisujesz zestaw, a następnie możesz zainstalować go w GAC swoich serwerów internetowych i po prostu wprowadzić następującą modyfikację pliku web.config aplikacji (lub jeśli chcesz, aby była stosowana globalnie, w pliku machine.config):
źródło
Sprawdź tego bloga . Nie używaj kodu do usuwania nagłówków odpowiedzi. Według Microsoftu jest niestabilny
Zamiast tego użyj niestandardowej sekcji Nagłówki Web.config:
źródło
Używam następującego kodu i działa dla mnie iis 7.5
źródło