Przewodnik po hartowaniu serwera WWW

Opublikowany: 2022-03-15

Ze względu na swoją funkcję serwery internetowe różnią się od wielu innych urządzeń w typowym środowisku sieciowym — nie tylko są z założenia narażone na Internet, ale prawdopodobnie obsługują ruch sieciowy zupełnie obcym osobom. Ponadto w wielu sytuacjach serwery internetowe prawdopodobnie obsługują aplikacje dynamiczne, takie jak witryny WordPress, lub działają jako serwery proxy w stosunku do innych aplikacji wewnętrznych. Nic więc dziwnego, że serwery internetowe stanowią interesujące cele dla atakujących.

Wzmacnianie systemu odnosi się do procesu ulepszania zabezpieczeń systemu w taki sposób, że złośliwemu hakerowi trudniej jest złamać ten system i zdobyć przyczółek w sieci.

Proces utwardzania serwera internetowego będzie oczywiście zależał od rodzaju używanego serwera internetowego (np. Apache HTTP Server, Nginx, Microsoft IIS…), jednak istnieje szereg podstawowych zasad i najlepszych praktyk, aby ulepszyć swój Bezpieczeństwo serwera WWW, o którym należy pamiętać, niezależnie od tego, z jakiego serwera WWW korzystasz.

Ten artykuł jest przewodnikiem po hartowaniu serwera WWW. W tym artykule przyjrzymy się wielu sprawdzonym metodom niezależnym od technologii, dzięki którym możesz poprawić bezpieczeństwo swojego serwera internetowego. Aby uzyskać informacje na temat utwardzania WordPress, zapoznaj się z naszym przewodnikiem dotyczącym zabezpieczeń i utwardzania WordPress.

1. Aktualizuj swój serwer sieciowy

Utrzymywanie aktualności oprogramowania może nie wydawać się wielkim problemem, ale stosowanie poprawek bezpieczeństwa na czas jest prawdopodobnie jedną z najważniejszych zabezpieczeń, jakie można wdrożyć. Oprócz ulepszeń w zakresie wydajności i stabilności, aktualizacje serwera WWW i systemu operacyjnego często zawierają poprawki dotyczące luk w zabezpieczeniach.

Na pozór może to zabrzmieć trywialnie, jednak każdy specjalista ds. bezpieczeństwa informacji powie, że łatanie jest bardziej skomplikowane niż się wydaje — nie dlatego, że instalowanie najnowszej wersji większości oprogramowania jest szczególnie trudne, ale dlatego, że łatanie jest zawsze postrzegane jako coś, co może być odroczone.

Najlepszym sposobem na upewnienie się, że oprogramowanie serwera WWW jest stale aktualizowane, jest znalezienie systemu lub procedury, która działa dla Ciebie lub osoby, której zadaniem jest aktualizacja serwera WWW i oprogramowania systemu operacyjnego. W większości przypadków sprowadza się to do okresowego przypominania (na przykład ustawiania powtarzającego się wydarzenia w kalendarzu), na które poświęcisz czas.

2. Usuń niepotrzebne oprogramowanie i moduły

Chociaż nie zawsze może się tak wydawać, serwery internetowe to złożone oprogramowanie. Niektóre serwery internetowe, takie jak Apache HTTP Server, są dostarczane z serią „modułów” (podobnych do wtyczek do WordPressa), które można włączyć lub wyłączyć w zależności od przypadku użycia. Złośliwi atakujący są znani z wykorzystywania funkcji i luk w zabezpieczeniach modułu serwera sieci Web, aby zebrać więcej informacji o serwerze sieciowym. Chociaż może to nie być jedyny powód udanego ataku, celem wzmacniania serwera WWW jest zastosowanie podejścia dogłębnej obrony i utrudnienie złośliwym cyberprzestępcom zdobycia nawet najmniejszego przyczółka.

Praktycznym tego przykładem są moduły takie jak mod_status serwera Apache HTTP Server. Ten moduł ma na celu uzyskanie przeglądu aktywności i wydajności serwera (bieżących hostów, liczby przetwarzanych żądań, liczby bezczynnych procesów roboczych i wykorzystania procesora) za pośrednictwem adresu URL /server-status. Taka funkcja może dostarczyć atakującemu całkiem niezłą wskazówkę, jak dobrze działa Twój serwer sieciowy — całkiem przydatne narzędzie w przypadku ataku typu „odmowa usługi” (DoS).

Podobnie inne nieużywane oprogramowanie działające na Twoim serwerze internetowym może stanowić niepotrzebne ryzyko. Na przykład:

  1. Czy korzystasz z serwera FTP, takiego jak vsftpd , którego nie potrzebujesz?
  2. Czy istnieje agent przesyłania poczty, taki jak Sendmail lub Postfix, którego już nie potrzebujesz? Jeśli korzystasz z usługi innej firmy, aby poprawić dostarczalność wiadomości e-mail WordPress, nie będziesz potrzebować takiej usługi.

Te aplikacje/usługi i wiele innych na serwerze to komponenty, które mają swoje własne dziwactwa bezpieczeństwa, luki i wymagania dotyczące łatania.

Podsumowując — w miarę możliwości uruchamiaj mniej oprogramowania. Jeśli nie korzystasz z modułu lub usługi, powinieneś rozważyć jego wyłączenie lub usunięcie. Oczywiście nie wyłączaj modułów lub aplikacji bez dokładnego testowania w środowisku programistycznym lub pomostowym (czasami może nie być w pełni jasne, czy używany jest moduł serwera WWW lub aplikacja).

3. Dokręć kontrolę dostępu

Kontrolowanie dostępu do serwera WWW jest niezbędne do prawidłowego działania. W końcu chcesz zminimalizować ryzyko, że dostęp do Twojego serwera WWW wpadnie w niepowołane ręce. Poniżej przedstawiono szereg najlepszych praktyk, których należy przestrzegać w odniesieniu do utrzymywania właściwej kontroli dostępu.

  • Nie używaj użytkownika root. Jeśli musisz wykonać zadania administracyjne, zamiast tego użyj sudo;
  • Używaj silnych haseł systemowych (i WordPress);
  • Używaj kluczy SSH zamiast hasła podczas korzystania z SSH;
  • Rozważ ograniczenie dostępu SSH/RDP z określonych adresów IP;
  • Włącz uwierzytelnianie dwuskładnikowe (2FA) na dowolnym koncie dostawcy chmury;
  • Upewnij się, że każda osoba uzyskująca dostęp do serwera WWW ma własnego użytkownika — nie udostępniaj kont użytkowników między użytkownikami;
  • Ogranicz dostęp do powłoki/SSH/zdalnego pulpitu bezpośrednio do osób, które go potrzebują.

4. Ustaw monitorowanie integralności plików (FIM)

Monitorowanie integralności plików (FIM) pomaga administratorom systemu identyfikować zmiany plików na serwerze sieciowym. Podczas gdy niektóre pliki zmieniają się dość często w ramach normalnych operacji serwera WWW, pliki takie jak instalacja WordPressa nigdy nie powinny się zmieniać, chyba że administrator wprowadza zmiany (na przykład aktualizuje plik wp-config.php) lub aktualizuje sam WordPress.

Chociaż istnieje wiele opcji, które można wybrać, jeśli chodzi o monitorowanie integralności plików, zaleca się trzymanie się czegoś, co jest specyficzne dla uruchomionej aplikacji, jest proste w konfiguracji i obsłudze oraz nie wymaga dużo tuningu. W przeciwnym razie utoniesz w bezsensownych powiadomieniach i zanim się zorientujesz, pojawi się czujne zmęczenie, które wymaże twój wysiłek bycia z. Krótko mówiąc, więcej alertów i funkcji nie równa się lepszym, jeśli chodzi o FIM, zamiast tego szukaj rozwiązania, które zapewnia największą wartość przy najmniejszym nakładzie pracy.

5. Korzystaj z łagodzenia DDoS i usługi WAF

Zamiast wystawiać swój serwer sieciowy bezpośrednio na Internet, powinieneś rozważyć skorzystanie z usługi takiej jak Cloudflare, Fastly, Akamai lub podobnej, aby chronić się przed szeroką gamą ataków, w tym atakami typu Distributed Denial of Service (DDoS). Atak typu „odmowa usługi” (DoS) to rodzaj ataku, w którym osoba atakująca ma na celu przytłoczenie witryny żądaniami, a w rezultacie uniemożliwienie serwerowi WWW obsługi żądań do uprawnionych użytkowników.

Oprócz łagodzenia skutków odmowy usługi takie usługi w chmurze zazwyczaj oferują również funkcje zapory aplikacji internetowych (WAF), które są w stanie powstrzymać wiele zwykłych ataków na aplikacje internetowe, takich jak podstawowe wstrzykiwanie SQL (SQLi) i proste cross-site Skrypty (XSS). Chociaż pliki WAF nie są rozwiązaniem na luki w aplikacjach internetowych, zapewniają pewną ochronę przed wykorzystaniem — zwłaszcza w przypadku reguł WAF zoptymalizowanych pod kątem witryn WordPress.

Jakie są następne kroki?

Chociaż w tym artykule omówiono niektóre typowe techniki wzmacniania serwerów sieci Web, nic w zakresie bezpieczeństwa nie jest srebrną kulą. W związku z tym żadna metoda obrony systemu nie jest niezawodna, zwłaszcza w obliczu zdeterminowanego przeciwnika. Dlatego musisz zabezpieczyć każdy komponent, z którego składa się Twoja witryna WordPress. Nie możesz zabezpieczyć swojego serwera internetowego i zignorować bezpieczeństwa WordPress lub własnego komputera.

Jednak ciągłe łatanie i przestrzeganie dobrych praktyk bezpieczeństwa i higieny może drastycznie zwiększyć wysiłek, jaki atakujący musi włożyć, aby skutecznie przeprowadzić atak — co w większości przypadków oznacza frustrowanie napastnika, zmuszając go do bardziej miękkiego celu.