Czy jest jakiś powód, aby zachować nagłówek odpowiedzi „Serwer” w Apache

16

Mój serwer odpowiada Server: Apache/2.2.15 (CentOS)na wszystkie żądania. Myślę, że to ujawnia moją architekturę serwera, ułatwiając hakowanie prób.

Czy jest to kiedykolwiek przydatne w przeglądarce internetowej? Czy powinienem to kontynuować?

Nic Cottrell
źródło
Oczywiście na bieżąco aktualizuję moje serwery o yum-cron!
Nic Cottrell,

Odpowiedzi:

16

Moim zdaniem najlepiej zamaskować to tak bardzo, jak to możliwe. Jest to jedno z narzędzi używanych do hakowania strony internetowej - odkryj jej technologię, wykorzystaj znane wady tej technologii. Ten sam powód, dla którego najlepsza praktyka bezpieczeństwa już jakiś czas temu zaczęła promować URL-e w postaci „/ view / page” zamiast „/view/page.jsp” lub „/view/page.asp” ... więc podstawowa technologia nie będzie narażony.

Istnieją pewne dyskusje na ten temat, takie jak /programming/843917/why-does-the-server-http-header-exist i http://www.troyhunt.com/2012/02/shhh- dont-let-your-response-headers.html i oczywiście książka Hacking Exposed.

Także to na Security SE /security/23256/what-is-the-http-server-response-header-field-used-for

Pamiętaj jednak, że to nie koniec zabezpieczenia twoich serwerów. Jeszcze tylko jeden krok we właściwym kierunku. Nie zapobiega to żadnemu włamaniu. To po prostu czyni go mniej widocznym, co do hakowania.

ETL
źródło
6
Usunięcie rozszerzeń nazw plików w adresach URL nie ma nic wspólnego z bezpieczeństwem ... jest bardziej czytelne dla ludzi. Istnieje tysiące innych sposobów ujawnienia platformy aplikacji.
Brad
Jeśli serwer jest poprawnie skonfigurowany, ujawnienie platformy potencjalnemu napastnikowi i tak mu nie pomoże.
Cthulhu
19

Możesz zmienić nagłówek serwera, jeśli chcesz, ale nie licz na to ze względów bezpieczeństwa. Zrobi to tylko na bieżąco, ponieważ osoba atakująca może po prostu zignorować nagłówek serwera i wypróbować każdy znany exploit od początku.

RFC 2616 stwierdza częściowo:

Zachęca się implementatorów serwerów do ustawienia tego pola jako konfigurowalnego.

I Apache zrobił to z ServerTokensdyrektywą. Możesz użyć tego, jeśli chcesz, ale nie myśl, że to magicznie zapobiegnie atakowi.

Michael Hampton
źródło
4
+1 Moje logi są pełne „ataków” na oprogramowanie, które nie jest zainstalowane. Hakerzy po prostu rzucają wszystko, co mają, i sprawdzają, co się trzyma. Jeśli jest jakieś narzędzie do zmiany ServerTokens, w najlepszym razie jest to nieistotne.
Chris S
@ChrisS Rzeczywiście. Nawet nie zawracam sobie głowy; Zamiast tego aktualizuję swoje serwery sieciowe.
Michael Hampton
3
Nie zgadzam się. Chociaż może to być niewielkie, bezpieczeństwo nigdy nie jest wystarczająco silne i wszystko, co może pomóc bez powodowania wad lub zmniejszania wydajności, musi być egzekwowane.
mveroone
2
Dlaczego warto podać informacje o wersji dla wolontariuszy? Zawsze ustawiam „ServerSignature Off” i „ServerTokens Prod”. Zgadzam się również, że aktualizowanie serwerów sieciowych jest jedyną prawdziwą ochroną. Jeśli nie usuniesz informacji o wersji i nie poddasz się testowi penetracji strony trzeciej, z pewnością oznaczą to jako „Wyciek informacji”.
HTTP500
@ HTTP500 Regularnie zajmuję się zgodnością PCI-DSS. To kompletny problem, pod warunkiem, że jesteś załatany. Problemem staje się wyciek informacji o innych częściach systemu (tzn. Mogę powiedzieć, że OP działa w CentOS 5.x) lub nie byłeś na bieżąco.
Michael Hampton
2

Wyświetlenie pełnego ciągu wraz z informacjami o wersji może narazić Cię na większe ryzyko ataków 0day, jeśli osoba atakująca prowadzi listę serwerów, na których uruchomione jest oprogramowanie.

Biorąc to pod uwagę, nie należy oczekiwać, że ukrywanie ciągu serwera ochroni cię przed próbami włamania. Istnieją sposoby na odcisk palca serwera w oparciu o sposób zgłaszania odpowiedzi i błędów.

Wyłączam ciągi, o ile mogę, ale nie pocę się z tych, których nie mogę ukryć (np. OpenSSH).

Dan
źródło