10 innowacyjnych hacków zabezpieczających WordPress w celu ochrony Twojej witryny
Niezależnie od tego, czy posiadasz osobistego bloga, czy witrynę internetową o krytycznym znaczeniu biznesowym zawierającą poufne dane, musisz położyć należyty nacisk na ich zabezpieczenie w największym możliwym stopniu. Aby uniemożliwić odwiedzającemu ze złymi zamiarami uzyskanie dostępu do Twojej witryny, konieczne jest przygotowanie listy kontrolnej bezpieczeństwa i przeprowadzanie okresowych audytów bezpieczeństwa.
To powiedziawszy, stuprocentowo bezpieczny system jest praktycznie niemożliwy do skonfigurowania, ponieważ zawsze istnieje prawdopodobieństwo pojawienia się nowych „zagrożeń” niespodziewanie. Chociaż całkowite wyeliminowanie ryzyka naruszenia bezpieczeństwa może nie być możliwe, przestrzeganie zestawu najlepszych praktyk może pomóc w zminimalizowaniu potencjalnych luk w zabezpieczeniach.
Jeśli chodzi o zabezpieczenie witryny WordPress, będziesz rozpieszczany wyborami, jeśli chodzi o dostępność zasobów. Istnieje mnóstwo wskazówek, poprawek i samouczków opublikowanych na wielu stronach internetowych i blogach. Jednak gdy przyjrzysz się bliżej, możesz być rozczarowany brakiem treści. Środki bezpieczeństwa WordPress wymienione na większości tych stron internetowych mają bardzo podstawowy charakter. Niezależnie od tego, czy chodzi o aktualizację do najnowszej wersji WordPressa, planowanie okresowych kopii zapasowych, czy używanie hasła administratora o dużej złożoności – być może wdrożyłeś już wszystkie te podstawowe środki. Najwyraźniej pytanie, które przychodzi ci do głowy, brzmi: „Co dalej?”
Ten samouczek ma na celu udzielenie jednoznacznej odpowiedzi na Twoje pytanie. Omówiono tutaj dziesięć innowacyjnych środków bezpieczeństwa, które mogą pomóc w utrzymaniu kontroli nad witryną WordPress w bezpiecznym miejscu. Przejdźmy teraz do szczegółów.
1 Użyj uwierzytelniania dwuskładnikowego:
Po wdrożeniu uwierzytelniania dwuskładnikowego osoba próbująca zalogować się do pulpitu nawigacyjnego WordPress będzie musiała wprowadzić losowo wygenerowane hasło jednorazowe (OTP), oprócz standardowej nazwy użytkownika i hasła. Funkcje kryptograficzne służą do generowania OTP w czasie rzeczywistym i są wysyłane tylko do zamierzonego odbiorcy na urządzeniu komunikacyjnym za pośrednictwem bezpiecznej bramki. Telefon komórkowy jest najczęściej używanym urządzeniem komunikacyjnym do tego celu.
Więc nawet jeśli hakerowi uda się ukraść Twoją nazwę użytkownika i hasło, nadal nie będzie mógł uzyskać dostępu do panelu administracyjnego WordPress bez hasła jednorazowego.
Jak wdrożyć uwierzytelnianie dwuskładnikowe?
Możesz użyć dowolnej wtyczki generującej OTP, aby zaimplementować uwierzytelnianie dwuskładnikowe na swojej stronie WordPress. Na rynku dostępne są zarówno wtyczki komercyjne, jak i darmowe. Dwie zalecane wtyczki, które są bezpłatnie dostępne w repozytorium WordPress to:
Obie wtyczki są bardzo łatwe do skonfigurowania nawet dla początkującego webmastera. Szczegółową dokumentację dotyczącą instalacji i konfiguracji można znaleźć na odpowiednich stronach wtyczek.
2 Wyłącz edycję pliku szablonu za pomocą WP Dashboard
Użytkownik WordPress z dostępem administracyjnym może edytować pliki szablonów Twojej witryny, przechodząc do opcji Wygląd > Edytor. W przypadku, gdy odwiedzający ze złośliwymi zamiarami zdoła zhakować twoje dane uwierzytelniające administratora, on również może wprowadzić żądane modyfikacje w tych plikach bezpośrednio z pulpitu nawigacyjnego WordPress. Aby temu zapobiec, możesz wyłączyć edycję plików z pulpitu nawigacyjnego WordPress.
Jak wyłączyć edycję pliku szablonu?
Aby wyłączyć edycję plików za pomocą edytora pulpitu nawigacyjnego, musisz dodać linię kodu do pliku konfiguracyjnego swojej witryny WordPress. Przejdź do programu menedżera plików dostępnego w panelu sterowania hostingu i przejdź do katalogu głównego. Otwórz plik wp-config.php w edytorze tekstu i dołącz następujący wiersz kodu na dole pliku.
define( 'DISALLOW_FILE_EDIT', true );
3 Ukryj opinie o błędach logowania przed odwiedzającymi
W jakim celu wyświetla się użytkownikom dzienniki błędów? Absolutnie niczego. Gdy coś pójdzie nie tak, tylko Ty, administrator, powinieneś o tym wiedzieć. Co gorsza, upubliczniając informację zwrotną o błędzie, w rzeczywistości dajesz wystarczającą wskazówkę ekspertowi technicznemu, aby spróbował zhakować Twoją witrynę.
Jak zatrzymać wyświetlanie informacji zwrotnych o błędach?
Istnieje prosta metoda zapobiegania wyświetlaniu opinii o błędach logowania do WordPressa publicznie. Po zalogowaniu się do panelu administracyjnego WordPress przejdź do Wygląd > Edytor. Otwórz plik functions.php aktywnego motywu i umieść poniższy fragment kodu w dowolnym miejscu w pliku.
add_filter('login_errors',create_function('$a', "return null;"));
4 Usuń użytkownika „admin”.
Domyślnym kontem administratora, które jest tworzone automatycznie podczas instalacji WordPressa, jest „admin”. Jest to również najbardziej wrażliwy obszar, jeśli chodzi o bezpieczeństwo WordPressa, który jest najczęściej wykorzystywany przez hakerów. Dlatego usunięcie tego domyślnego konta „administratora” i zarządzanie witryną z innego „pseudo” konta administratora to bardzo dobry pomysł, aby powstrzymać hakerów. Przynajmniej utrudni to życie każdemu potencjalnemu hakerowi.
Jak usunąć domyślnego użytkownika „admin”?
To działanie można wykonać na dwóch różnych etapach, jak opisano poniżej:
- Podczas instalacji WordPress: Jeśli jest to nowe konto hostingowe, na którym chcesz utworzyć witrynę WordPress, możesz pozbyć się użytkownika „admin” podczas instalacji WordPress. Na pierwszym ekranie instalacyjnym dostępne są opcje konfigurowalne przez użytkownika. Nazwa użytkownika jest jednym z takich elementów, które możesz modyfikować. Zanim klikniesz przycisk „Zainstaluj” znajdujący się na dole ekranu, po prostu zastąp domyślną nazwę użytkownika „admin” dowolną nazwą. Następnie kontynuuj proces instalacji w normalny sposób.
- W przypadku istniejącej instalacji WordPress: Jeśli masz już istniejącą witrynę WordPress, najpierw musisz zalogować się na swoje konto „admin” i utworzyć nowe konto użytkownika. Upewnij się, że przyznajesz nowemu użytkownikowi pełne uprawnienia administracyjne. Następnie wyloguj się z konta administratora i zaloguj się ponownie, korzystając z nowo utworzonego konta użytkownika. Przejdź do zakładki „Użytkownicy” na pulpicie nawigacyjnym WordPress i usuń konto użytkownika „admin”. Możesz teraz zarządzać pulpitem nawigacyjnym za pomocą nowo utworzonego użytkownika administracyjnego.
5 Ukryj numer wersji WordPress
Każda wersja WordPress ma kilka luk w zabezpieczeniach, które zwykle są naprawiane po wydaniu kolejnej wersji. Jeśli hakerowi uda się zidentyfikować, której wersji WordPressa używasz, może łatwo powiązać ją ze znaną słabością i wykorzystać ją do przejęcia kontroli nad Twoją witryną. Aby zapobiec takiemu scenariuszowi, możesz poinstruować plik funkcji WordPress, aby nie ujawniał numeru wersji.
Jak ukryć numer wersji WP?
Zwykle numer wersji WordPress jest wstawiany do pliku nagłówkowego motywu za pomocą funkcji „wp-head()”. Jednak usunięcie tej funkcji nie jest rozwiązaniem, ponieważ ta sama funkcja może być również używana przez niektóre z zainstalowanych wtyczek. Zamiast tego lepszą alternatywą jest dodanie poniższego fragmentu kodu do pliku functions.php.
remove_action('ks29so_head','ks29so_generator');
6 Zablokuj dostęp botom
Boty to zaprogramowane komputerowo zautomatyzowane narzędzia używane przez hakerów do przejęcia kontroli nad Twoją witryną. Te zautomatyzowane programy mogą również wykorzystywać Twoje zasoby hostingowe do wykonywania innych czynności w imieniu hakera. Uniemożliwiając botom dostęp do twoich stron internetowych i katalogów, możesz lepiej kontrolować administrowanie witryną.
Jak uniemożliwić botom dostęp do Twojej witryny?
Przepisywanie modów jest skutecznym lekarstwem na blokowanie dostępu botów. Używając dowolnego edytora tekstu, otwórz .htaccess
plik „ ” znajdujący się w katalogu głównym WordPress. Przewiń w dół pliku, wstaw poniższy fragment kodu, a następnie zapisz plik w tej samej lokalizacji. Upewnij się, że nie zmieniasz nazwy pliku.
SetEnvIfNoCase User-Agent ^$ keep_out
SetEnvIfNoCase User-Agent (pycurl|casper|cmsworldmap|diavol|dotbot) keep_out
SetEnvIfNoCase User-Agent (flicky|ia_archiver|jakarta|kmccrew) keep_out
SetEnvIfNoCase User-Agent (purebot|comodo|feedfinder|planetwork) keep_out
Order Allow,Deny
Allow from all
Deny from env=keep_out
7 Użyj odpowiednich uprawnień do plików/folderów
Uprawnienia do plików to nic innego jak metoda ograniczenia dostępu. Używając odpowiednich parametrów uprawnień do plików, możesz uniemożliwić odwiedzającym dostęp do ważnych plików konfiguracyjnych znajdujących się w katalogu instalacyjnym WordPress.
Jak wdrożyć ograniczenie dostępu?
Poniżej wymieniono zalecane ustawienia uprawnień do plików i folderów dla Twojej witryny WordPress:
Wartość CHMOD dla wszystkich plików danych powinna być ustawiona na 644.
Wartość CHMOD dla wszystkich folderów i podfolderów powinna być ustawiona na 755.
Wartość CHMOD dla pliku konfiguracyjnego WordPressa (wp-config.php) powinna być ustawiona na 640.
8 Ogranicz próby logowania użytkownika:
Najprawdopodobniej haker użyje różnych kombinacji nazwy użytkownika i hasła, aby włamać się do panelu administracyjnego WordPress. O ile nie ma limitu liczby nieudanych prób logowania, haker może kontynuować tak długo, jak długo jest potrzebne do znalezienia właściwej kombinacji nazwy użytkownika i hasła.
Jak ograniczyć próby logowania?
Najprostszym sposobem ograniczenia prób logowania użytkownika jest użycie wtyczki typu open source, Limit Login Attempts. Można go bezpłatnie pobrać z repozytorium wtyczek WordPress. Po zainstalowaniu i aktywacji wtyczki możesz określić liczbę nieudanych logowań, które użytkownik może podjąć w określonym czasie.
9 Użyj trybu SSL dla sesji logowania
Zmuszanie witryny WordPress do trybu SSL w celu logowania zapewnia bezpieczny transfer danych między przeglądarką internetową użytkownika a serwerem. Przeglądarka internetowa szyfruje nazwę użytkownika i hasło przed przesłaniem ich do systemu serwera za pośrednictwem bezpiecznego kanału, gdy używany jest protokół SSL.
Jak korzystać z trybu SSL dla wszystkich loginów?
Przede wszystkim musisz mieć zainstalowany ważny certyfikat SSL na swoim serwerze internetowym. Aby wymusić tryb SSL dla wszystkich logowań użytkowników, musisz zdefiniować preferencje logowania SSL w pliku konfiguracyjnym WordPress (wp-config.php). Możesz wymusić tryb SSL tylko dla administratora lub włączyć tę funkcję dla wszystkich logowań. Przejdź do katalogu głównego i otwórz plik wp-config.php. Następnie dodaj jeden z poniższych fragmentów kodu w zależności od wymagań.
Tylko dla sesji logowania administratora:
define('FORCE_SSL_ADMIN', true);
Dla wszystkich sesji logowania użytkownika:
define('FORCE_SSL_LOGIN', true);
10 Wyłącz dostęp do folderu „wp-content”.
Wszystkie obrazy i pliki multimedialne, które przesyłasz do swojej witryny WordPress, są przechowywane w folderze „wp-content”. Zawiera również wszystkie pliki wtyczek. Hakerzy mogą go wykorzystać jako punkt wejścia do wstrzykiwania szkodliwych elementów do Twojej witryny. Innym nieetycznym działaniem, które można wykonać za pośrednictwem tego samego kanału, jest kradzież przepustowości. Dlatego zdecydowanie zaleca się zablokowanie publicznego dostępu do tego katalogu.
Jak wyłączyć dostęp do plików multimedialnych i wtyczek?
Możesz dodać regułę do swojego .htaccess
pliku, aby uniemożliwić dostęp do wszystkich typów plików dostępnych w folderze „wp-content”. Należy pamiętać, że pliki CSS i JavaScript wraz z obrazami (jpg, png, gif) są najbardziej narażone na wykorzystanie przez hakerów.
Order Allow,Deny
Deny from all
Allow from all
Wniosek:
Z każdym mijającym dniem hakerzy wymyślają coraz to nowsze techniki, aby przejąć kontrolę nad Twoją witryną i firmą. Nie ma sensu trzymać się tego, co „inni” robią od wieków. Aby wyeliminować możliwość włamania się na Twoją witrynę WordPress, musisz być o krok wyżej i być mądrzejszy niż Twój nemezis.