7 najlepszych praktyk w zakresie bezpieczeństwa HTML w przypadku statycznych luk w witrynach internetowych

Witryny statyczne przechowują już wyrenderowaną zawartość, dlatego nie muszą uzyskiwać dostępu do żadnej bazy danych, uruchamiać złożonych skryptów ani polegać na silniku wykonawczym za każdym razem, gdy użytkownik zażąda strony.

Przekłada się to na wyraźne korzyści pod względem czasu ładowania i bezpieczeństwa: strony statyczne oszczędzają dużo czasu serwera i mają mniej luk w zabezpieczeniach. To z kolei oznacza, że ​​wyszukiwarki będą lepiej oceniać strony statyczne niż ich dynamiczne odpowiedniki.

Eksperci SEO zwracają się do treści statycznych, kiedy tylko mogą, aby lepiej konkurować w świecie, w którym ułamek sekundy może stanowić różnicę między całkowitym sukcesem a całkowitą porażką. Statyczne wdrażanie treści stało się modnym hasłem między strategami marketingowymi, a personel IT uwielbia to, że mają mniej wrażliwe miejsce, na które można mieć oko.

Ale uważaj — nie są one w 100% odporne na włamania, więc jeśli planujesz umieścić na swojej stronie zawartość statyczną, możesz skorzystać z kilku najlepszych praktyk, aby ją zabezpieczyć.

Spis treści:

Nagłówki zabezpieczeń są podzbiorem nagłówków odpowiedzi HTTP — pakietem metadanych, kodów błędów, reguł pamięci podręcznej itp., które serwer sieciowy dodaje do udostępnianej zawartości — zaprojektowanych, aby informować przeglądarkę, co ma robić i jak obsługiwać otrzymywaną zawartość. Nie wszystkie przeglądarki obsługują wszystkie nagłówki zabezpieczeń, ale istnieje niewielki zestaw, który jest dość powszechny i ​​zapewnia podstawowe środki bezpieczeństwa, aby powstrzymać hakerów przed wykorzystaniem luk w zabezpieczeniach.

X-Frame-Opcje: SAMEORIGIN

Nagłówek X-Frame-Options ma na celu wyłączenie lub ograniczenie ryzyka związanego z elementami iframe w Twojej witrynie. Ramki iframe mogą być wykorzystywane przez hakerów do przechwytywania uzasadnionych kliknięć i kierowania odwiedzających na dowolny adres URL. Istnieją różne sposoby zapobiegania niewłaściwemu użyciu elementów iframe.

Najlepsza praktyka zalecana przez OWASP (Open Web Application Security Project) sugeruje użycie tego nagłówka z parametrem SAMEORIGIN, co pozwala na używanie ramek iframe tylko przez kogoś o tym samym pochodzeniu. Inne opcje to DENY, aby całkowicie wyłączyć iframe, i ALLOW-FROM, aby zezwolić tylko określonym adresom URL na umieszczanie stron w iframe.

Sprawdź przewodnik po implementacji dla Apache i Nginx.

X-XSS-Ochrona: 1; tryb=blok

Nagłówek X-XSS-Protection został zaprojektowany w celu ochrony witryn internetowych przed atakami typu cross-site scripting. Ta funkcja nagłówka może być zaimplementowana na dwa sposoby:

  • Ochrona X-XSS: 1
  • X-XSS-Ochrona: 1; tryb=blok

Pierwsza jest bardziej liberalna, filtruje skrypty z żądania do serwera WWW, ale i tak wyświetla stronę. Drugi sposób jest bezpieczniejszy, ponieważ blokuje całą stronę, gdy w żądaniu zostanie wykryty skrypt X-XSS. Ta druga opcja jest najlepszą praktyką zalecaną przez OWASP.

X-Content-Type-Options: nosniff

Ten nagłówek uniemożliwia korzystanie z „podsłuchiwania” MIME — funkcji, która umożliwia przeglądarce skanowanie zawartości i reagowanie w inny sposób, niż wskazuje nagłówek. Gdy ten nagłówek jest obecny, przeglądarka musi ustawić typ zawartości zgodnie z instrukcją, zamiast wywnioskować go przez „sniffowanie” zawartości z góry.

W przypadku zastosowania tego nagłówka należy dokładnie sprawdzić, czy typy zawartości są prawidłowo stosowane na każdej stronie statycznej witryny internetowej.

Content-Type: text/html; charset=utf-8

Ta linia jest dodawana do nagłówków żądań i odpowiedzi dla stron HTML od wersji 1.0 protokołu HTTP. Ustala, że ​​wszystkie tagi są renderowane w przeglądarce, wyświetlając wynik na stronie internetowej.

Użyj certyfikatów TLS

Certyfikat SSL/TLS jest niezbędny dla każdej witryny internetowej, ponieważ umożliwia serwerowi internetowemu szyfrowanie danych wysyłanych do przeglądarki internetowej za pomocą bezpiecznego protokołu HTTPS. W ten sposób, jeśli dane zostaną przechwycone podczas podróży, będą nieczytelne, co jest niezbędne do ochrony prywatności użytkownika i zabezpieczenia strony internetowej. Statyczna strona internetowa nie przechowuje danych osobowych odwiedzających, ale ważne jest, aby informacje, o które proszą, nie były widoczne dla niechcianych obserwatorów.

Korzystanie z szyfrowania przez stronę internetową jest konieczne do oznaczenia jako strona bezpieczna przez większość przeglądarek internetowych i jest obowiązkowe w przypadku stron internetowych, które starają się zachować zgodność z ogólnym rozporządzeniem o ochronie danych UE (RODO). Prawo nie precyzuje, że należy używać certyfikatu SSL, ale jest to najprostszy sposób na spełnienie wymogów prywatności zawartych w rozporządzeniu.

Jeśli chodzi o bezpieczeństwo, certyfikat SSL umożliwia władzom weryfikację własności strony internetowej i uniemożliwienie hakerom tworzenia jej fałszywych wersji. Zastosowanie certyfikatu SSL pozwala odwiedzającemu stronę sprawdzić autentyczność wydawcy i mieć pewność, że nikt nie jest w stanie szpiegować jego działań na stronie.

Dobrą wiadomością jest to, że certyfikat nie kosztuje dużo. W rzeczywistości możesz go dostać ZA DARMO od ZeroSSL lub kup wersję premium od Sklep SSL.

Wdróż ochronę DDoS

Ataki rozproszonej odmowy usługi (DDoS) stają się obecnie coraz bardziej powszechne. W tego typu ataku zestaw rozproszonych urządzeń służy do przytłoczenia serwera zalewem żądań, aż zostanie on nasycony i po prostu odmówi pracy. Nie ma znaczenia, czy Twoja witryna zawiera zawartość statyczną — jej serwer sieciowy może łatwo stać się ofiarą ataku DDoS, jeśli nie podejmiesz niezbędnych środków.

Najprostszym sposobem na wdrożenie ochrony DDoS na swojej stronie internetowej jest zapewnienie dostawcy usług bezpieczeństwa, który zajmie się wszystkimi zagrożeniami cybernetycznymi. Ta usługa zapewni wykrywanie włamań, usługi antywirusowe, skanowanie podatności i wiele więcej, dzięki czemu praktycznie nie musisz się martwić o żadne zagrożenia.

Takie kompleksowe rozwiązanie może być drogie, ale są też bardziej skoncentrowane rozwiązania o niższych kosztach, takie jak DDoS Protection as a Service (DPaaS). Powinieneś zapytać swojego dostawcę usług hostingowych, czy oferuje taką usługę.

Bardziej przystępnymi cenowo rozwiązaniami są usługi ochrony DDoS w chmurze, takie jak te oferowane przez firmę Akamai, Sucurilub Cloudflare. Usługi te zapewniają wczesne wykrywanie i analizę ataków DDoS oraz filtrowanie i odwracanie tych ataków — czyli przekierowywanie złośliwego ruchu z Twojej witryny.

Rozważając rozwiązanie anty-DDoS, należy zwrócić uwagę na jego przepustowość sieci: ten parametr wskazuje, jak dużą intensywność ataku może wytrzymać ochrona.

Unikaj podatnych bibliotek JavaScript

Nawet jeśli Twoja witryna ma zawartość statyczną, może korzystać z bibliotek JavaScript, które stanowią zagrożenie dla bezpieczeństwa. Powszechnie uważa się, że 20% tych bibliotek sprawia, że ​​strona internetowa jest bardziej podatna na ataki. Na szczęście możesz skorzystać z usługi świadczonej przez Baza danych podatności aby sprawdzić, czy dana biblioteka jest bezpieczna, czy nie. W jego bazie danych można znaleźć szczegółowe informacje i wskazówki dotyczące wielu znanych luk w zabezpieczeniach.

Oprócz sprawdzania konkretnej biblioteki pod kątem luk w zabezpieczeniach, możesz postępować zgodnie z poniższą listą najlepszych praktyk dotyczących bibliotek JavaScript, które zapewnią naprawę potencjalnych zagrożeń:

  • Nie używaj zewnętrznych serwerów bibliotecznych. Zamiast tego przechowuj biblioteki na tym samym serwerze, na którym znajduje się Twoja witryna. Jeśli musisz korzystać z bibliotek zewnętrznych, unikaj korzystania z bibliotek z serwerów znajdujących się na czarnej liście i okresowo sprawdzaj zabezpieczenia serwerów zewnętrznych.
  • Użyj zarządzania wersjami dla bibliotek JavaScript i upewnij się, że używasz najnowszej wersji każdej biblioteki. Jeśli zarządzanie wersjami nie wchodzi w grę, przynajmniej powinieneś używać wersji, które są wolne od znanych luk w zabezpieczeniach. Możesz użyć emerytura.js w celu wykrycia użycia wersji podatnych na ataki.
  • Regularnie sprawdzaj, czy Twoja witryna korzysta z zewnętrznych bibliotek, o których nie wiesz. W ten sposób dowiesz się, czy haker umieścił linki do niechcianych dostawców bibliotek. Ataki polegające na wstrzykiwaniu są mało prawdopodobne w statycznych witrynach internetowych, ale nie zaszkodzi to sprawdzać raz na jakiś czas.

Wdrażaj strategię tworzenia kopii zapasowych

Statyczna strona internetowa powinna zawsze mieć bezpieczną kopię zapasową swojej zawartości po każdej zmianie. Kopie zapasowe muszą być bezpiecznie przechowywane i łatwo dostępne na wypadek konieczności przywrócenia witryny w przypadku awarii. Istnieje wiele sposobów tworzenia kopii zapasowej statycznej strony internetowej, ale ogólnie można je podzielić na ręczne i automatyczne.

Jeśli zawartość witryny nie zmienia się zbyt często, odpowiednia może być strategia ręcznego tworzenia kopii zapasowych — wystarczy pamiętać, aby po każdej zmianie zawartości utworzyć nową kopię zapasową. Jeśli masz panel sterowania do zarządzania kontem hostingowym, jest bardzo prawdopodobne, że w tym panelu znajdziesz opcję tworzenia kopii zapasowych. Jeśli nie, zawsze możesz użyć klienta FTP, aby pobrać całą zawartość witryny na urządzenie lokalne, gdzie możesz ją zabezpieczyć i przywrócić w razie potrzeby.

Oczywiście opcja automatycznego tworzenia kopii zapasowych jest preferowana, jeśli chcesz ograniczyć zadania związane z zarządzaniem witryną do minimum. Jednak automatyczne kopie zapasowe są zwykle oferowane przez dostawców usług hostingowych jako funkcje premium, co zwiększa całkowity koszt zabezpieczenia witryny.

Możesz rozważyć użycie magazynu obiektów w chmurze do tworzenia kopii zapasowej.

Skorzystaj z niezawodnego dostawcy usług hostingowych

Niezawodna usługa hostingowa jest niezbędna, aby Twoja strona działała sprawnie i szybko, ale także by nie została zhakowana. Większość recenzji hostingu zawiera liczby i porównania dotyczące szybkości, czasu pracy i obsługi klienta, ale biorąc pod uwagę bezpieczeństwo witryny, należy uważnie obserwować pewne aspekty i zapytać o to swojego dostawcę przed zatrudnieniem jego usługi:

  • Bezpieczeństwo oprogramowania: powinieneś dowiedzieć się, jak obsługiwane są aktualizacje oprogramowania; na przykład, jeśli całe oprogramowanie jest aktualizowane automatycznie lub każda aktualizacja jest poddawana procesowi testowania przed wdrożeniem.
  • Ochrona DDoS: w przypadku, gdy ten rodzaj ochrony jest zawarty w usłudze hostingowej, zapytaj o szczegóły dotyczące jej wdrożenia, aby sprawdzić, czy spełnia wymagania Twojej witryny.
  • Dostępność i obsługa SSL: ponieważ w większości przypadków certyfikaty są zarządzane przez dostawcę hostingu, powinieneś sprawdzić, jaki rodzaj certyfikatu oferuje i jaka jest polityka odnawiania certyfikatów.
  • Kopia zapasowa i przywracanie: wielu dostawców hostingu oferuje usługę automatycznego tworzenia kopii zapasowych, co jest dobrą rzeczą, ponieważ praktycznie pozwala zapomnieć o tworzeniu kopii zapasowych, przechowywaniu ich i aktualizowaniu. Należy jednak wziąć pod uwagę koszt takiej usługi i porównać go z wysiłkiem, jaki będzie wymagał samodzielnego tworzenia kopii zapasowych treści.
  • Ochrona przed złośliwym oprogramowaniem: niezawodny dostawca hostingu powinien chronić swoje serwery przed złośliwym oprogramowaniem, wykonując okresowe skanowanie w poszukiwaniu złośliwego oprogramowania i monitorując integralność plików. W przypadku hostingu współdzielonego pożądane jest, aby dostawca hostingu korzystał z izolacji konta, aby zapobiec rozprzestrzenianiu się infekcji złośliwym oprogramowaniem między sąsiednimi witrynami.
  • Ochrona zaporą sieciową: dostawca usług hostingowych może zwiększyć poziom bezpieczeństwa hostowanych przez siebie witryn internetowych, wdrażając zaporę, która zatrzymuje wrogi ruch.

Sprawdź niezawodną platformę hostingu stron statycznych.

Egzekwuj politykę silnych haseł

Ponieważ witryna statyczna nie ma bazy danych ani systemu zarządzania treścią, ma mniej nazw użytkowników i haseł do zarządzania. Ale nadal musisz wymusić politykę haseł dla kont hostingowych lub FTP, których będziesz używać do aktualizowania zawartości statycznej.

Dobre praktyki dotyczące haseł obejmują m.in.:

  • Okresowa ich zmiana
  • Ustawienie minimalnej długości hasła.
  • Używanie kombinacji wielkich/małych liter wraz ze znakami specjalnymi i cyframi
  • Unikaj komunikowania się z nimi przez e-mail lub SMS-y.

Ponadto domyślne hasło do kont administracyjnych należy zmienić od samego początku — jest to częsty błąd, który hakerzy mogą łatwo wykorzystać. Nie bój się utraty hasła; użyj menedżera haseł, aby bezpiecznie nimi zarządzać.

Stańmy się statyczni

Kilka lat temu dynamiczna treść była drogą do zrobienia: wszystko można było łatwo zmieniać i aktualizować, co pozwalało na przeprojektowanie całej witryny w ciągu kilku sekund. Ale potem szybkość stała się najwyższym priorytetem, a statyczne treści nagle znów stały się fajne.

W tym sensie wszystkie praktyki dotyczące bezpieczeństwa witryn internetowych powinny zostać ponownie ocenione — z pewnością należy wziąć pod uwagę mniej aspektów, ale nie należy się z tym rozluźniać. Ta lista najlepszych praktyk z pewnością pomoże Ci stworzyć własną listę kontrolną, aby Twoja statyczna witryna była bezpieczna i zdrowa.