W ciągu ostatnich 15 lat WordPress stał się najpopularniejszym systemem zarządzania treścią na świecie. Łatwy w instalacji i niezwykle wszechstronny system, szybko stał się ulubionym narzędziem twórców stron. Od małych blogów, po strony firmowe i duże portale, a nawet sklepy. Posiada mnóstwo wtyczek, szablonów i przeróżnych dodatków dzięki czemu jego funkcjonalność jest praktycznie nieograniczona.
Niestety duża popularność niesie za sobą także i wady. Hakerzy wiedząc, że co trzecia strona w internecie oparta jest o WordPressa, przeprowadzają masowe ataki. Bardzo często te ataki kończą się powodzeniem i strona zostaje zainfekowana lub w gorszym wypadku całkowicie przejęta. Jeśli nie chcesz utracić kontroli nad swoją stroną, wykonaj poniższe wskazówki, by nieco zmniejszyć ryzyko ataków. Oczywiście żadna metoda nie da 100% pewności i ochronny ale warto dmuchać na zimne i choć częściowo zabezpieczyć się przed wirusami i włamaniami.
Wiele ataków pochodzi z kont użytkowników w Twoim WordPreesie, które celowo przekazują dostęp do witryny. Pierwszym sprawdzianem po infekcji wirusem jest wejście w użytkowników i sprawdzenie czy ktoś nie posiada roli administratora lub redaktora. Jeśli zobaczysz tam login, którego nie tworzyłeś osobiście to istnieje duża szansa, że Twoja strona jest zawirusowana. Dlatego od czasu do czasu sprawdzaj role użytkowników i kasuj tych, którzy nie są potrzebni.
Jeśli współpracujesz zdalnie z wieloma autorami to zastanów się czy aby na pewno potrzebna jest im rola administratora i redaktora. A może wystarczy przypisać im tylko rolę autora. Pamiętaj, że nie jesteś skazany na domyślne role wpisane w WordPressie. Jeśli zlecasz komuś jakieś zmiany w szablonie czy we wtyczkach to nie musisz mu od razu przypisywać pełnej roli administratora. Wystarczy na chwile zainstalować wtyczkę Pobieranie User Role Editor, przy pomocy której możesz samemu ustalić do czego dostęp będzie miała dana osoba.
Aby zapobiec atakom pochodzących z logowania użytkownika, dobrze jest wprowadzić limit ilości logowań na konto. Oznacza to, że konto zostanie czasowo zablokowane jeśli dany login posłuży się określoną liczbą nieudanych prób. Tego typu zabezpieczenie dobrze wyklucza wszelkiego rodzaju boty, które próbują odgadnąć hasło na dany login. Tego typu zabezpieczenie wprowadzisz za pomocą wtyczki: WP Limit Login Attempts.
Przy tej okazji warto wspomnieć również o dobrej praktyce, jaką jest używanie bezpiecznych haseł, trudnych do odgadniecie. Niestety w dalszym ciągu mimo wielu raportów, internauci stosują łatwe hasła w stylu 12345 lub hasło jest takie samo jak login. Na szczęście obecne wersje WordPressa z automatu wymagają trudnych haseł.
Kolejna metoda, która polecam to uwierzytelnianie dwuskładnikowe. Tego typu zabezpieczenie wprowadza dodatkowy poziom bezpieczeństwo w momencie logowania. Oznacza to, że po podaniu hasła i loginu użytkownik będzie musiał potwierdzić chęć logowania np. na smartfonie w aplikacji. Tego typu zabezpieczenia stosują banki. Wtyczka, która Ci w tym pomoże: Google Authenticator – WordPress Two Factor Authentication (2FA).
Na szczęście z nowymi wersjami WordPressa problem ten został zniwelowany i system automatycznie przyznaje niestandardowy login administratora. Jednak w starszych wersjach WordPressa loginem administratora był domyślnie „admin”.
Chyba nie trzeba mówić jak ułatwiało to hakerom odgadnięcie Twoich danych do logowania. Jeśli nadal pracujesz na starszej wersji WordPressa i posiadasz login admin to czym prędzej go zmień. Można to zrobić ręcznie za pośrednictwem bazy danych w tabeli wp_users lub jeszcze łatwiej, utworzyć nowy profil administratora, a ten stary po prostu usunąć (należy przypisać wszystkie stare posty z konta na nowy login).
To banał, który powtarzany jest jak mantra. Lecz nadal większość administratorów zdaje się olewać ten temat i nie utrzymuje na bieżąco aktualnej wersji WordPressa, wtyczek oraz szablonów. Aktualizacje WordPressa nie wychodzą dla widzi mi się twórców lecz często posiadają łatki bezpieczeństwa i poprawę jakiejś funkcji. Tak naprawdę większość włamań odbywa się na przestarzałych wersjach lecz nie ma się co dziwić ponieważ statystyki pokazują, że zaledwie 22% stron jest na bieżąco aktualizowana.
Jeśli boisz się, że po aktualizacji coś się posypie to zawsze wykonuj ją najpierw na kopii roboczej.
Włamania zdarzają się nawet u doświadczonych adminów. Tutaj w większości wypadków pomocna może okazać się kopia zapasowa całej witryny czyli plików oraz bazy danych. Oczywiście życie pokazuje, że znów mało kto regularnie tworzy kopie zapasowe. Dlatego wybierz taki hosting, który automatycznie robi kopie zapasowe za Ciebie. Im częściej tym lepiej.
Jeśli jesteśmy przy hostingu to dobra praktyką jest trzymanie się zasady, że jedna strona na jednym hostingu. Jeśli na serwerze trzymasz więcej stron to istnieje ryzyko, że po infekcji jednej z nich, wirus przejdzie na kolejne, które znajdują się w tym samym folderze.
Gdy dojdzie do włamania poprzez odgadnięcie hasła i loginu administratora, bardzo często roboty zmieniają coś w plikach strony lub szablonu. Kokpit WordPressa niestety domyślnie pozwala na edycję plików z jego poziomu. Wystarczy przejść do zakładki Wygląd->Edytor motywu lub Wtyczki->Edytor wtyczki. Utrudnieniem może być wyłączenie możliwości edycji plików przez kokpit WordPressa. Pomoże Ci w tym wklejenie poniższego kodu do pliku config.php
define('DISALLOW_FILE_EDIT', true);
Ogólnie nie polecamy edycji plików przez kokpit, o wiele lepiej jest robić to przesyłąc pliki tradycyjnie przez klienta ftp.
Kolejnym zabezpieczeniem lecz tym razem dwóch najważniejszych plików czyli config.php oraz .htaccess jest dodanie poniższego kodu to pliku .htaccess
<Files wp-config.php>
order allow,
denydeny from all
</Files>
<Files .htaccess>
order allow,deny
deny from all
</Files>
To właśnie te dwa pliki są najczęściej atakowane i dodawany jest do nich złośliwy kod. Zadbaj o ich bezpieczeństwo.
Jak wiadomo do WordPressa istnieje mnóstwo wtyczek. Podobnie jest też z wtyczkami bezpieczeństwo, których masz cały wachlarz. Obecnie istnieje wiele podzielonych zdań na temat tego czy warto instalować te wtyczki czy lepiej odpuścić. Tak naprawdę większość tych wtyczek robi dokładnie to samo, co możesz wykonać samodzielnie jak np. zmiana nazwy loginu admina, wyłączenie edycji plików w kokpicie itd. Tego typu wtyczki są dobre dla początkujących, którzy nie chcą, nie mają czasu lub wiedzy, by samodzielnie zadbać o bezpieczeństwo.
Dla całej reszty osób minimalnie znających WordPressa odradzam instalacje tego typu wtyczek czyli tzw. kombajnów mających wszystko w jednym.
Z wtyczek polecam tylko te, który faktycznie są pomocne jak wymienione w punkcie pierwszym. Dodatkowo jeśli walczysz ze spamem możesz wspomóc się wtyczką Antispam Bee.
Pamiętaj, że im więcej wtyczek w Twoim WordPressie tym więcej opcji i ścieżek mają hakerzy. Za włamania bardzo często odpowiedzialne są dziurawe lub nieaktualne wtyczki. Nie inaczej jest z wtyczkami, które mają zwiększyć bezpieczeństwo. Jak na ironię bardzo dużo włamań dokonanych zostało właśnie przez luki we wtyczkach, które miały strzec bezpieczeństwa.
Jeśli chcesz dowiedzieć się więcej na temat WordPressa zapraszam na platformę Edugrafia.pl gdzie znajdziesz wiele kursów do tego systemu, w tym kurs o bezpieczeństwie: https://edugrafia.pl/kursy/sciezka-wordpress/.