10 sposobów na ochronę strony opartej na WordPress


WordPress jest absolutnym liderem w dziedzinie darmowych CMSów. Według torquemag.io aż 27% stron w Internecie działa w oparciu o ten silnik. Jest on darmowy, sprawny, bardzo łatwy w obsłudze i przede wszystkim doskonały do rozbudowy. W sieci możemy znaleźć miliony wtyczek, które diametralnie zwiększają możliwości czystego WordPressa. Niestety na końcu tych wielu zalet pojawiają się wady oraz problemy. Jednym z nich jest bezpieczeństwo.


Zakładam, że wielu czytelników tego artykułu kiedyś spotkało się z komentarzem o treści: „Wordpress jest dziurawy! Uważaj!”. To prawda. Operując na tym CMS warto jest pomyśleć o skutecznej ochronie naszej strony przed atakami hakerskimi lub spam-botami. Dziś prezentuję 10 sposobów na skuteczną ochronę.

1. Wykorzystaj email jako login

Domyślnie, aby się zalogować musisz podać swoją nazwę użytkownika, która najczęściej brzmi “admin”. Z wiadomej przyczyny jest to mało bezpieczne rozwiązanie, które naraża naszą stronę na niebezpieczeństwo. Zabezpieczanie witryny rozpocząłbym od wgrania wtyczki WP Email Login, która automatycznie zamieni login z nazwy użytkownika, na przypisany do niej adres email.
Zainstaluj wtyczkę, a następnie wyloguj się z witryny i zaloguj ponownie, ale tym razem użyj adresu e-mail, na którym zostało utworzone konto.

2. Używaj 2-stopniowej autoryzacji

Kolejnym bardzo skutecznym sposobem zabezpieczenia panelu administracyjnego jest wykorzystanie dwustopniowej autoryzacji (2FA) w panelu logowania. 2FA, to dodatkowa warstwa zabezpieczeń określana jako „uwierzytelnianie wieloczynnikowe”, która wymaga nie tylko hasła i nazwy użytkownika, ale także informacji, którą może posiadać tylko zaufany użytkownik. Może to być na przykład fizyczny token.

Z pełną odpowiedzialnością w tym przypadku rekomenduję wtyczkę Google Authenticator, której konfiguracja zajmie Ci kilka chwil.

Po zainstalowaniu wtyczki na witrynie, będziesz musiał zainstalować również aplikację na swoim smartfonie (tam będzie wyświetlany unikalny token, za każdym razem, gdy będziesz się logował do witryny).

Google Authenticator – Two Factor Authentication (2FA)

3. Ukryj stronę logowania

Każdy zna URL logowania do WordPress. Dostęp do panelu administracyjnego można uzyskać po wpisaniu loginu I hasła w ścieżce /wp-login.php albo /wp-admin.

Skoro już wiesz jak zmienić login na email oraz jak dodać dwustopniową weryfikację, to czas na zmianę adresu URL logowania. Na szczęście zmiana adresu URL logowania jest łatwa.

Tym razem wykorzystamy wtyczkę Custom Login URL
Ustawienia wtyczki są dostępne w “ustawienia” -> “bezpośrednie odnośniki”

Custom Login URL

• Zmień wp-login.php na coś unikalnego; na przykład super_login
• Zmień / wp-admin / na coś wyjątkowego; na przykład admin_tomek
• Zmień /wp-login.php?action=register na coś unikalnego; na przykład nowy_super_użytkownik

Pamiętaj aby ścieżka wyglądała np tak: domena.pl/wp-login.php/super_login

4. Skonfiguruj blokadę witryny

Funkcja blokady strony po nieudanych próbach logowania może rozwiązać podstawowy problem; sprawi, że nigdy więcej Twojej stronie nie zagrożą ataki tzw. brute force. Za każdym razem, gdy zostanie odczytana próba logowania z błędnym hasłem*, witryna zostanie zablokowana, a ty otrzymasz powiadomienie o tym – lekko mówiąc – nieautoryzowanym podejściu.

*Możesz oczywiście ustawić np. 3 próby logowania bez blokowania strony 🙂

iThemes Security jest jedną z najlepszych wtyczek do zabezpieczenia WordPress, sam korzystam z niej od bardzo dawna. Dzięki niej będziesz mógł m.in.: określić liczbę nieudanych prób logowania, po których wtyczka zablokuje adres IP atakującego, ochronić stronę przed spamem oraz wiele więcej!

iThemes Security (formerly Better WP Security)

5. Usuń numer wersji WordPress

Twój aktualny numer wersji WordPress można bardzo łatwo znaleźć. Jest on widoczny dla wszystkich w kodzie źródłowym strony. Jeśli hakerzy wiedzą, której wersji WordPress używasz, łatwiej im przeprowadzić idealny atak.

Aby usunąć numer wersji WordPress wklej poniższy fragment kodu do pliku functions.php

// remove version from head
remove_action('wp_head', 'wp_generator');
// remove version from rss
add_filter('the_generator', '__return_empty_string');
// remove version from scripts and styles
function shapeSpace_remove_version_scripts_styles($src) {
if (strpos($src, 'ver=')) {
$src = remove_query_arg('ver', $src);
}
return $src;
}
add_filter('style_loader_src', 'shapeSpace_remove_version_scripts_styles', 9999);
add_filter('script_loader_src', 'shapeSpace_remove_version_scripts_styles', 9999);

I tyle! Gotowe 🙂

6. Użyj SSL do szyfrowania danych

Wdrożenie certyfikatu SSL (Secure Socket Layer) jest prostym, szybkim i sprytnym posunięciem, które realnie zwiększa bezpieczeństwo strony. Protokół SSL zapewnia bezpieczny transfer danych pomiędzy przeglądarką użytkownika i serwerem, co utrudnia hakerom przerwanie połączenia lub fałszowanie informacji.

Uzyskanie takiego certyfikatu to żaden problem. Możesz poprosić o to dostawcę hostingu lub – jeśli jesteś sprawny technicznie – wykorzystać darmowy sposób czyli Let’s Encrypt.
https://letsencrypt.org. [przyp. red: w Hekko.pl możesz wygenerować taki certyfikat w panelu od ręki – w większości planów hostingowych].

Ponadto certyfikat SSL pozytywnie wpływa na pozycję Twojej witryny w Google:)

7. Obserwuj swoje pliki

Zalecam również obserwować pliki, które trzymasz na serwerze ftp. Do tego celu polecam darmową wtyczkę Wordfence, która – w razie gdyby któryś z plików zyskał dodatkową linię kodu – poinformuje Cię o tym.
Wordfence Security – Firewall & Malware Scan

8. Twórz back up. Regularnie.

Pamiętaj, że czasem może wydarzyć się coś mniej niespodziewanego od ataku hakierskiego – Twój błąd. Jeśli przez pomyłkę usuniesz fragment kodu strony, zainstalujesz niekompatybilną wtyczkę lub odinstalujesz szablon – Twoja strona może się „wysypać”. Dlatego przed każdą zmianą na stronie twórz back up!

Posiadając taką kopię zapasową, zawsze możesz przywrócić swoją witrynę WordPress do stanu roboczego w dowolnym momencie. Istnieje kilka wtyczek, które mogą ci w tym pomóc.

Z darmowych wtyczek polecam UdraftPlus. Tworzy pełen backUp i wysyła go na serwer ftp/pocztę/dropboxa itp.

Jeśli masz 39 euro rocznie to polecam VaultPress by Automattic który tworzy kopie zapasowe co 30 minut. Ponadto ta wtyczka sprawdza witrynę pod kątem złośliwego oprogramowania:)

9. Chroń plik wp-config.php

Plik wp-config.php zawiera bardzo ważne informacje o instalacji WordPressa i jest w rzeczywistości najważniejszym plikiem w katalogu głównym witryny. Jego ochrona oznacza ochronę rdzenia twojej witryny.
Hakerom trudno jest złamać zabezpieczenia witryny, jeśli plik wp-config.php stanie się dla nich niedostępny.
Dobra wiadomość jest taka, że zrobienie tego jest naprawdę łatwe. Po prostu weź plik wp-config.php i przenieś go na wyższy poziom niż katalog główny.
W obecnej architekturze WordPress ustawienia pliku konfiguracyjnego są pierwsze na liście priorytetów. Tak więc, nawet jeśli jest przechowywany wyżej niż katalog główny, WordPress nadal go widzi.

10. Aktualizuj stronę regularnie

Każde oprogramowanie musi być aktualizowane. WordPress nie jest wyjątkiem i praktycznie co tydzień pojawia się jego odświeżona wersja. Pamiętaj, aby aktualizować zarówno samego WordPressa jak i wtyczki oraz szablony! Brak aktualnych plików to bardzo częsty sposób dotarcia do wnętrza strony.

Podsumowanie

Choć powyższe rady wymagają nakładu czasu, uważam, że bardziej opłaca się przeciwdziałać niż leczyć. Pamiętaj, że w wypadku ataku możesz stracić CAŁĄ stronę, której budowa od podstaw zajmie dużo więcej czasu.

Kiedyś, przez brak doświadczenia, stworzyłem stronę w oparciu o WordPress i nie spełniłem nawet jednego z powyższych punktów. Efekt był prosty do przewidzenia. Po kilku tygodniach od publikacji strony, stała się ona wysypiskiem przeróżnych banerów. Od stron porno, przez świetne suplementy diety aż do “jesteś 100 000 użytkownikiem, mamy dla Ciebie nagrodę”. Niestety nie dało się odratować witryny. Wirus był wszędzie. Musiałem budować ją od nowa.

Mam nadzieję, że powyższe rady ochronią Cię przed takim biegiem wydarzeń! Jeśli potrzebujesz pomocy przy konfiguracji strony lub chciałbyś zbudować niepowtarzalną witrynę, daj mi znać na t.niezgoda@invotech.co lub na linkedIn https://www.linkedin.com/in/niezgoda-tomasz

Pozdrawiam serdecznie, a jeśli masz dobre lub złe doświadczenia z ochroną WordPress’a – zapraszam do dyskusji w komentarzach.


Nota redakcyjna

Stosowanie pluginów (wtyczek) do bezpieczeństwa znajduje zarówno przeciwników, jak i zwolenników. Jeśli masz zaawansowaną wiedzę, unikanie wtyczek może stanowić dobre podejście, ponieważ unikasz tym samym ewentualnych podatności w tych rozwiązaniach. Jeśli jednak posiadasz tylko podstawową wiedzę – opisane wtyczki lepiej stosować. Ryzyko ewentualnie wprowadzanych przez nie podatności wydaje się niższe niż ryzyko niestosowania ochrony w ogóle. Temat z pewnością jest kontrowersyjny, ja także zapraszam Cię zatem także do wypowiedzi w komentarzu.
Artur Pajkert, hekko.pl


Dobre? To podziel się!Share on FacebookTweet about this on TwitterShare on LinkedInShare on Google+Buffer this page