Wszystkie artykuły Poprzedni Następny

Jak zwiększyć bezpieczeństwo Wordpress — megaporadnik

Jak zabezpieczyć stronę Wordpress? Jak zabezpieczyć się przed hakerami? Jak zwiększyć bezpieczeństwo WP? W tym artykule odpowiemy na te pytania. Podamy gotowe do wdrożenia sposoby wzmocnienia strony WordPress.

programista wordpress

WordPress jest najpopularniejszym systemem CMS. Ocenia się, że około 35% wszystkich stron w internecie jest oparta właśnie na nim.

Zgodnie z Internet Live Stats każdego dnia zhakowanych zostaje ponad 100 tysięcy stron.

Łatwość obsługi, kolosalna ilość wtyczek i motywów wpływa na popularność tego CMS-a wśród użytkowników, ale i wśród hakerów.

Do czego zostaje wykorzystana zainfekowana strona?

  • SEO
  • Spam
  • Malware
  • Kradzież
  • Atak na inne strony

Czym jest bezpieczeństwo strony?

Bezpieczeństwo strony nie oznacza jej całkowitego zabezpieczenia. Tego typu rozwiązanie jest niepraktyczne i prawdopodobnie zwyczajnie niemożliwe. Zwiększenie bezpieczeństwa polega na redukcji ryzyka, nie jego eliminacji.

Większość ataków na WordPress jest wykonywana przez boty, które skanują internet w poszukiwaniu podatnych na atak systemów. W części z nich wykorzystują znane metody np. atak brute force na formularz uwierzytelniający. Inne ataki polegają na testowaniu systemu na nowo odkryte luki.

Podjęcie odpowiednich kroków powinno zabezpieczyć stronę przed dużą częścią ataków. Właśnie z tą myślą opracowaliśmy ten gruntowny poradnik z listą kroków, które należy podjąć, by zabezpieczyć stronę opartą na CMS WordPress.

Wieloletnie doświadczenie w reagowaniu na ataki na strony WordPress, spowodowało naturalne nagromadzenie się praktyk zwiększające ich bezpieczeństwo, które stosujemy sami, jak i polecamy naszym klientom. Poniżej przekrój kroków, zaczynając od tych, które będą mogły być zastosowane przez kogoś kto tworzy swoją pierwszą stronę, a kończąc na bardziej zaawansowanych, wymagających wiedzy technicznej.

Zabezpiecz swój własny komputer

Żadna ilość podjętych kroków bezpieczeństwa nie ochroni nas przed niczym jeśli na naszym własnym komputerze, z którego korzystamy do logowania się do panelu administratora, zainstalowany jest keylogger.

Upewnij się, że sprzęt z którego korzystasz jest odpowiednio zabezpieczony i zaktualizowany. Używaj antywirusa.

Uaktualnij Wordpress, pluginy i szablony

Jeśli miałbyś z tego artykułu zapamiętać tylko jedną rzecz to powinny być nią uaktualnienia.

Jest to jedna z tych rzeczy, które wydają się oczywiste, a jednak nie są. Raporty pokazują jasno, że bardzo duża część stron używa przestarzałej wersji Wordpressa. Tylko 22% stron z tym systemem CMS używa najnowszej wersji (z momentu, w którym przeprowadzane było badanie).

Ponad połowa stron używa wersji, która jest starsza niż 2 ostatnie implementacje. Uaktualnienia niosą ze sobą ulepszenia w funkcjonalności systemu, ale również łatają luki bezpieczeństwa, gdy takie zostaną znalezione. Z tego właśnie powodu uaktualnienie do najnowszej wersji są tak ważne, w innym wypadku narażeni jesteśmy na wykorzystanie dobrze znanych luk do ataku na naszą stronę.

wersje instalacji wordpress

Podobna sytuacja wygląda w przypadku wtyczek i szablonów. O ile do wykrycia niebezpiecznych luk w głównej instalacji WordPressa dochodzi relatywnie rzadko, z powodu samego ogromu ilości wtyczek i szablonów, dziury w kodzie pojawiają się dosyć często.

Jak najczęstsza instalacja update-ów powinna być pierwszym i najważniejszym krokiem, jakie podejmiemy, by zwiększyć bezpieczeństwo stron z CMS-em WordPress. Przestarzałe wtyczki i szablony to najczęstszy wektor ataków na ten system.

aktualizacja wordpress

W zależności od zaawansowania mamy dwie opcje.

Zainstaluj wtyczkę, która pomoże w aktualizacjach

Instalacja wtyczki, która pomoże w automatyzacji uaktualnień. Taką wtyczką jest Easy Update Manager

Ręcznie ustaw opcje aktualizacji

Bardziej techniczne osoby mają możliwość ustawienia update-ów edytując ręcznie pliki.

Zmień wp-config.php by umożliwić automatyczne uaktualnienia:

define('WP_AUTO_UPDATE_CORE', true);

By umożliwić automatyczne uaktualnienia szablonów (tylko tych, które znajdują się w katalogu WordPressa) dodaj do pliku functions.php: ‌

add_filter( 'auto_update_theme', '__return_true' );

W przypadku pluginów, dodaj do tego samego pliku: ‌

add_filter( 'auto_update_plugin', '__return_true' );

Zwróć uwagę na konfigurację serwera

Uaktualnienia ważne są nie tylko w przypadku samego WordPressa, ale i w przypadku technologii zainstalowanych na serwerze, dzięki którym działa.

WordPress korzysta z PHP i MySQL. Niestety sytuacja jest tu jeszcze gorsza. Tylko 5% z nich korzysta z najnowszej wersji PHP i jedynie 1% z najnowszej wersji MySQL.

wersje php

O ile aktualizacja WordPressa nie jest czynnością skomplikowaną to ta sama czynność dotycząca instalacji najnowszego PHP i MySQL na serwerze nie tylko nie jest łatwa, ale w zależności od hostingu, z którego korzystamy, może być niemożliwa bez pomocy obsługi hostingu (lub całkowicie niemożliwe).

Mimo, że sam fakt korzystania ze starszej technologii nie jest aż tak niebezpieczny jak w przypadku starszych wersji pluginów, to nie należy ignorować tego kroku.

Hosting współdzielony

Najczęstszą formą hostowania strony WordPress jest właśnie hosting współdzielony. Oznacza to, że na jednym serwerze znajduje się nie tylko nasza strona, ale i wiele innych. Dzięki temu firmy hostingowe mogą oferować tę usługę po atrakcyjnej cenie. Trzeba mieć w świadomości, że wiąże się to ze sporym niebezpieczeństwem. Infekcja jednej strony może doprowadzić do ataku na wszystkie inne znajdujące się na tym samym serwerze.

Alternatywą do hostingu współdzielonego jest wykupienie i konfiguracja serwera VPS (Virtual Private Server). To rozwiązanie również nie jest bez wad. Mimo, że na serwerze będzie tylko nasza strona to zabezpieczeniem samego serwera przed atakami będziemy musieli zająć się sami.

Używaj mocnych haseł

To porada, która tyczy się każdej sfery cyfrowego życia, powinna być znana więc nie będziemy się za bardzo rozpisywać. Używaj managera haseł (takiego jak 1Password czy LastPass). Generuj mocne, długie hasła. Nigdy nie używaj tego samego hasła w różnych miejscach.

Używaj mocnych haseł wszędzie, nie zapomnij o mniej oczywistych miejscach takich jak hasło do bazy danych.

Wymuś mocne hasła na autorach

Jeśli prowadzisz stronę, która ma wielu autorów, a co za tym idzie wielu ludzi ma dostęp do panelu administracyjnego to jesteś narażony na większe niebezpieczeństwo.

Zastosuj wtyczkę Force Strong Passwords by wymusić stosowanie mocnych haseł w przypadku tych użytkowników.

Upewnij się też jakie role nadajesz nowym użytkownikom. Należy tu zastosować zdrowy rozsądek i upewnić się, że złośliwy użytkownik (lub przejęcie jego konta), nie będzie mógł wyrządzić szkód, których nie będzie się dało łatwo naprawić.

Używaj SSL

SSL (Secure Sockets Layer) to protokół, który umożliwia szyfrowanie danych, które przesyłane są podczas komunikacji pomiędzy przeglądarką, a serwerem strony.

Szyfrowanie zwiększa bezpieczeństwo użytkowników i zapobiega kradzieży danych. Obecnie możliwe jest wygenerowanie certyfikatów SSL za darmo przy pomocy Let's Encrypt.

Korzystaj z backupów

To bardzo ważny krok. Posiadanie sprawdzonego i działającego systemu backupowego nie tylko zabezpiecza dane, ale ma również bardzo duży wpływ na szybkość odzyskania strony, gdy padniemy ofiarami udanego ataku. Jeśli nie robimy regularnych kopii zapasowych narażamy się na utratę wszystkich danych w najgorszym przypadku, lub trudny (czytaj droższy) proces powracania do działającej wersji.

Zainstaluj jeden z pluginów odpowiadający za backupy strony WordPress. Przykładowe, z których możesz skorzystać to VaultPress lub BackUpWordPress.

Skorzystaj z pluginów zwiększających bezpieczeństwo

Na rynku istnieje obecnie sporo pluginów, które mają na celu zwiększyć cyberbezpieczeństwo strony WordPress.

  • WordFence to obecnie najpopularniejszy plugin, który sprawdza stronę pod względem infekcji malware.
  • BulletProof Security to kolejny popularny plugin, który między innymi, dodaje funkcjonalność firewalla, dba o bezpieczeństwo bazy danych, loginów.
  • iThemes Security to wtyczka, która korzysta z ponad 30 sposobów (wg autorów) zabezpieczenia strony z WordPressem.

To tylko kilka z bardzo wielu dostępnych wtyczek. Nie pomijaj instalacji przynajmniej jednej wtyczki, która pomoże w analizie kodu pod względem malware.

Na co powinieneś zwrócić uwagę podczas wyboru wtyczek odpowiadających za bezpieczeństwo WP?

  • Generowanie mocnych haseł przy tworzeniu profili użytkowników
  • Możliwość używania haseł okresowych
  • Logowanie aktywności
  • Skanowanie pod względem malware
  • Umożliwienie użycia reCAPTCHA
  • IP whitelisting / biała list IP
  • IP blacklisting / czarna list IP
  • Blokowanie złośliwych sieci
  • WHOIS o użytkownikach
  • Łatwy update kluczy bezpieczeństwa WP
  • Uwierzytelnienie dwuskładnikowe
  • Firewall
  • Logowanie zmian w plikach

Używaj oryginalnych wtyczek i motywów

W czeluściach internetu można znaleźć pirackie wersje wtyczek i motywów, za które trzeba zapłacić. Perspektywa moralna jest dosyć oczywista, ale nie każdy zdaje sobie sprawę, z czym wiąże ściągnięcie tego typu plików. Większość z nich jest najzwyczajniej zainfekowana — jest to najprostszy sposób przejęcia kontroli nad stroną, gdyż omija cały proces ataku. Złośliwy kod zostaje zaimplementowany bezpośrednio przez kogoś, kto korzysta z nielegalnej wersji.

Loguj aktywności

Logowanie, czyli zapisywanie aktywności zachodzących stronie czy serwerze jest szczególnie ważne, jeśli dojdzie do udanego ataku. Niestety jest to bardzo często pomijany, przez naszych klientów, aspekt prowadzenia strony, który utrudnia nam pracę podczas reagowania na incydent i próbę dojścia do źródła ataku.

Plugin taki jak WP Security Audit Log pomaga w logowaniu aktywności zachodzących na stronie. Ta wtyczka może być pomocna nie tylko ze względów bezpieczeństwa, ale samej kontroli pracy. WP Security Audit Log śledzi logowania do strony, zmiany, modyfikacje, usunięcia, update-y itd. Ma także możliwość ustawienia powiadomień, przez co będziemy mogli szybciej zareagować na incydent.

Zmień nazwę administratora

W najnowszych instalacjach WordPress wymaga podania innej nazwy głównego konta, ale ciągle ponad połowa stron WP używa „admin” jako nazwy administratora.

Zmiana tej nazwy na niestandardową powinna utrudnić działanie botom próbującym atakować login do systemu administratora.

Wordpress nie pozwala na łatwą zmianę nazw użytkownika. By to zrobić, możesz skorzystać z wtyczki Username Changer

Używaj e-maila przy logowaniu

Wiele z wtyczek bezpieczeństwa umożliwia wymuszenie korzystania z e-maila zamiast nazwy użytkownika. Jest to alternatywne rozwiązanie do zmiany nazwy administratora.

Ogranicz ilość prób logowania

Standardowym zachowaniem WordPress jest pozwolenie na nieograpicząną ilość prób logowania. Niestety jest to wykorzystywane przy próbach złamania hasła metodą brute force. Jest to metoda polegająca na użyciu listy potencjalnych haseł i logowaniu się do danego serwisu aż do udanej próby bądź skończenia listy.

Jeśli używamy WAF (web application firewall) ten problem powinien być rozwiązany przez sam firewall. W innym przypadku powinniśmy skorzystać z odpowiedniej wtyczki. Login LockDown zapisuje nieudane próby logowania i skutecznie ogranicza tego typu ataki. Standardowo plugin blokuje adres IP, z którego dokonano trzech nieudanych prób autoryzacji. Mamy możliwość dostosowania tej liczby do naszych potrzeb.

Dodaj pytanie dodatkowe przy loginie

Jednym z drobnych rzeczy, które możemy dodać do naszej strony, by utrudnić atak hakerom to instalacja pluginu WP Security Question. Dodanie dodatkowego pytania bezpieczeństwa do logowania, rejestracji i odzyskiwania hasła powinno utrudnić automatyczne ataki.

Automatycznie wyloguj nieaktywnych użytkowników

Zalogowanie użytkownicy, którzy nie korzystają z serwisu, stanowią dodatkowe zagrożenie. Ich sesje mogą zostać przejęte, hasła lub konta zmienione.

Powinniśmy ograniczyć taką możliwość do minimum.

Zainstaluj plugin Inactive Logout, który umożliwia automatyczne wylogowanie użytkownika po danym czasie (tego same zachowania używają strony banków).

Dodaj uwierzytelnienie dwuskładnikowe

Uwierzytelnienie dwuskładnikowe staje się praktycznie standardem w przypadku serwisów finansowych. Polecaną praktyką w kontekście prywatnego cyberbezpieczeństwa jest ustawienie dwuetapowej autoryzacji do wszystkich ważnych serwisów, z których korzystamy, które dają taką możliwość.

Nie inaczej jest w przypadku strony WordPress. Ustaw uwierzytelnienie dwuskładnikowe korzystając ze wtyczki Two Factor Authentication. Następnie zainstaluj jedną z aplikacji do uwierzytelniania takich jak Authy na swoim telefonie.

Używaj WAF (Website Application Firewall)

Jeśli używamy strony do prowadzenia biznesu jest to krok warty rozważenia.

WAF jest firewallem stworzonym specjalnie pod strony internetowe, który ma możliwość badania ruchu, który do nich trafia.

WAF może zabezpieczyć nas, między innymi, przed atakami DDoS, SQL injection, XSS (cross-site scripting).

Zablokuj dostęp do plików z poziomu przeglądarki

Gdy przeglądarka nie znajdzie pliku index (np. index.php czy index.html) standardowym zachowaniem jest pokazanie zawartości folderu. Wgląd do plików, przez niepowołane osoby, może być bardzo niebezpieczny.

folder wp z poziomu przeglądarki

By zablokować dostęp do plików z poziomu przeglądarki, należy dodać do pliku .htaccess, który znajduje się w głównym folderze strony: ‌

Options -Indexes

Plik .htaccess jest plikiem ukrytym dlatego, jeśli nie możemy go znaleźć, należy sprawdzić ustawienia klienta FTP.

Po dodaniu tej zmiany wszelkie próby znalezienia katalogu na naszej stronie będzie przekierowywane na stronę błędu 404. 

Zabezpiecz plik wp-config.php

Plik wp-config.php jest najważniejszym i najbardziej wrażliwym plikiem. Zawiera konfigurację systemu, a co za tym informacje, które mogą zostać wykorzystane w niepowołany sposób.

Na szczęście mamy możliwość utrudnienia dostępu do niego. By to zrobić, należy do pliku .htaccess dodać:

<files wp-config.php>
order allow,deny
deny from all
</files>

Dzięki temu zewnętrzny dostęp do tego wp-config.php będzie utrudniony. 

Wyłącz XML-RPC jeśli nie jest używane

XML-RPC to funkcjonalność, która umożliwia logowanie do WordPressa z poziomu aplikacji mobilnej. Jest używana przez pluginy takie jak LibSyn. Funkcjonalność ma potencjał, by posłużyć jako wektor ataku, dlatego, jeśli jej nie używamy należy ją wyłączyć. 

Jeśli któryś z twoich pluginów korzysta z XML-RPC możesz odinstalować plugin XML-RPC Pingback. Zablokujesz pingback nie wyłączając całkowicie XML-RPC, dlatego reszta pluginów powinna działać. 

Drugim sposobem jest wyłączenie pluginu XML-RPC. To bezpieczniejsze rozwiązanie, które jednak całkowicie wyłącza tą funkcjonalność (a co za tym idzie, uniemożliwia pracę pluginów, które z niego korzystają).

Wyłączyć XML-RPC możemy edytując plik wp-config.php do którego należy dodać: ‌

add_filter('xmlrpc_enabled', '__return_false'); 

po linii: ‌

require_once(ABSPATH . 'wp-settings.php');

Wyłącz edytowanie plików

WordPress umożliwia nam edycję plików (pluginów, czy szablonów) przy pomocy edytora znajdującego się w panelu administracyjnym. Jeśli niepowołana osoba zdobędzie dostęp do panelu, może mieć to bardzo duże konsekwencje.

edytowanie plików wordpress

Mamy jednak możliwość zablokowania możliwości edycji plików. By tego dokonać, należy dodać do wp-config.php tę linijkę: ‌

define( 'DISALLOW_FILE_EDIT', true );

Wyłącz egzekucje plików PHP

Niektóre foldery znajdujące się na serwerze są dużo bardziej narażone na atak niż inne. Wyłączenie dostępu do plików PHP powinniśmy wyłączyć, w szczególności, w folderach do których użytkownicy mogą wgrywać swoje pliki takich jak /wp-content/uploads/

By tego dokonać, należy dodać poniższy kod do .htaccess: ‌

‌<Files *.php>
deny from all
</Files>

Plik .htaccess należy wgrać do folderu, który chcemy zabezpieczyć, np /wp-content/uploads/

Zmień prefiks bazy danych

Wordpress standardowo używa prefiksu wp_przy tabelach w bazie danych. To zachowanie ułatwia hakerom zgadnięcie ich nazw. 

prefixy bazy danych w wordpress

Ten krok jest relatywnie prosty do przeprowadzenia gdy stawiamy nową stronę, a baza danych jest czysta. By tego dokonać wystarczy edytować plik wp-config.php i zmienić linie zawierając w niej dowolny prefix różny od standardowego wp_:‌$table_prefix = 'wp_tyrants_';

Jeśli nie masz odpowiednio wysokich umiejętności technicznych, nie przeprowadzaj tego kroku na działającej stronie (sam). 

Chroń hasłem folder z wp-admin

Istnieje możliwość do dodania dodatkowego hasła z poziomu hostingu. Zaloguj się panelu administracyjnego swojego hostingu. Czynności mogą się od siebie różnic w pomiędzy hostingami, ale powinniśmy znaleźć odpowiednik opcji "Katalogi chronione hasłem".

Zawsze używaj bezpiecznych połączeń

Jeśli używasz klienta FTP do wysyłania plików na serwer, upewnij się, że używasz SFTP (Secure File Transfer Protocol). To bezpieczniejsza metoda przesyłania plików, używająca szyfrowania podczas połączenia. 

Rozważ wyłączenie możliwości instalacji nowych pluginów

Każdy dodatkowy zainstalowany plugin to dodatkowy punkt, który może zostać wykorzystany w przyszłości do ataku.

Ten krok nie jest twardą zasadą i należy się tu kierować zdrowym rozsądkiem i przeanalizować konkretną sytuację. Jeśli pracujesz nad swoją stroną i masz pełną świadomość niebezpieczeństw związanych z wtyczkami, to jest to krok zbędny. Jeśli pracujesz dla klienta, to utrudnienie mu instalacji nowych wtyczek może być sensowne, bo zmusi do dobrego zastanowienia się nad tym czy jest to niezbędne. W niektórych przypadkach może być to zwyczajnie niepraktyczne. 

By zablokować możliwość instalacji wtyczek, należy do pliku wp_config.php dodać: ‌

define(‘DISALLOW_FILE_MODS’,true); 

By dokonać nowych instalacji lub update-ów będzie trzeba ręcznie usunąć bądź 'skomentować' tą linijkę kodu.

Ręczna edycja nie jest niezbędna, wtyczki bezpieczeństwa mają opcje zablokowania możliwości instalacji nowych wtyczek.

Ukryj wyświetlanie błędów PHP

WordPress pomaga w fazie pisania kodu przy pomocy wyświetlania dodatkowych informacji o błędach. Opcja debugowania jest niezbędna podczas pracy nad wtyczkami lub motywami.

Trzeba pamiętać, by nie zostawić tej opcji w finalnej wersji, gdyż dodatkowe informacje mogą zostać wykorzystane przez hakera.

Upewnij się, że linijka zawierająca WP_DEBUG w pliku wp-config.php jest ustawiona jako false: ‌

define( 'WP_DEBUG', true);

Ukryj wersje WordPress

Standardowym zachowaniem WP jest pokazywanie w kodzie jaka wersja była użyta do wygenerowania kodu. 

wersja wordpress w kodzie

Możemy tę opcję wyłączyć dodając do functions.php poniższy kod:

function wp_version_remove_version() {
return '';
}
add_filter('the_generator', 'wp_version_remove_version');‌

Wersje WordPress starsze niż 5.0 pokazywały tę informację w pliku readme.html, wyświetlający się na stronie pod adresem nazwastrony.pl/readme.html.

Dodaj nagłówki HTTP odpowiadające za bezpieczeństwo

Nagłówki HTTP mogą zostać skonfigurowane z poziomu serwera i odpowiadają za to jak przebiega komunikacja pomiędzy stroną a serwerem.

Jest wiele nagłówków odpowiadających za bezpieczeństwo (HTTP Security Headers). Najważniejsze, na jakie powinniśmy zwrócić uwagę to:

  • X-Content-Type
  • Public-Key-Pins
  • X-Frame-Options
  • Strict-Transport-Security
  • X-XSS-Protection
  • Content-Security Policy

Strona securityheaders pozwala przeprowadzić testy, jak i produkuje krótki raport opisujący brakujące nagłówki i tego konsekwencje. 

nagłowki http odpoiwadające za bezpieczeństwo

W tym punkcie tylko sygnalizujemy, że należy zwrócić uwagę na nagłówki odpowiadające za bezpieczeństwo — sama implementacja jest za bardzo rozległa, by opisywać ją w tym artykule. 

Wygeneruj nowe klucze bezpieczeństwa

WordPress od wersji 2.7 posiada cztery klucze bezpieczeństwa: AUTH_KEY, SECURE_AUTH_KEY, LOGGED_IN_KEY i NONCE_KEY. Poza nimi cztery inne związane z ciągami zaburzającymi (salt keys). 

Klucze bezpieczeństwa to ciągi losowych znaków, które mają na celu zwiększenie bezpieczeństwa haseł i ciasteczek. Ważnym jest, by wygenerować nowe klucze podczas wykonywania migracji. 

WordPress posiada narzędzie, które wygeneruje ja dla nas automatycznie. Wystarczy wejść na link generatora.

Zmień pozwolenia

Typowe pozwolenia plików w katalogu WP to 644 (rw-r--r--), co oznacza, że autor pliku ma możliwość odczytu i zapisu, ale wszyscy inni mogą odczytać treść pliku. 

Ważnym jest, by zmienić pozwolenia pliku wp-config.php do 400, co uniemożliwi odczytanie treści pliku przez innych użytkowników niż autor. 

pozwolenia plików wordpress

Ustawień możemy dokonać poprzez klienta FTP. Ustawienia pozwoleń mogą różnić się w zależności od hostingu.

Pluginy takie jak iThemes Securityposiadają opcje skanowania strony pod względem pozwoleń i automatycznie ostrzegają, gdy używamy niebezpiecznych ustawień. 

Zabezpiecz się przed enumerowaniem użytkowników

Zidentyfikowanie nazwy użytkownika jest możliwe przez wysłanie prostego zapytania:‌https://przyklad.pl/?author=1

Odpowiedź od serwera może wyglądać następująco:

Connection: keep-alive
Content-Type: text/html; charset=UTF-8
Date: Thu, 17 Oct 2021 23:12:26 GMT
Location: https://przyklad.pl/author/fred/
Server: nginx/1.10.3 (Ubuntu)

Enumeracja była również możliwa przez skorzystanie z API JSON do wersji 4.7.1.

Odkryte nazwy użytkowników ułatwiają pracę hakerom np. do dokonania ataku brute force. 

By wyłączyć tę opcję, mamy pare możliwości. 

Dodaj do pliku .htaccess kod (rozwiązanie tylko w przypadku serwera Apache):

#Disable Author Pages
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /

RewriteCond %{REQUEST_URI}  ^/$
RewriteCond %{QUERY_STRING} ^/?author=([0-9]*) [NC]
RewriteRule ^(.*)$ http://%{HTTP_HOST}/? [L,R=301,NC]
</IfModule>

Innym rozwiązaniem jest skorzystanie template redirect i dodanie do ‌wp-includes/template-loader.php kodu:

function author_page_redirect() {
    if ( is_author() ) {
        wp_redirect( home_url() );
    }
}
add_action( 'template_redirect', 'author_page_redirect' );

Trzecim rozwiązaniem jest skorzystanie z pluginu Stop User Enumeration

Uważaj na zachowaną trwałość zmian

Pliki konfiguracyjne zachowują ciągłość podczas aktualizacji WordPressa, lub motywów. Nie ma takiej pewności w przypadku functions.php.

Funckcjnalność REST API

Wyłącz funkcjonalność REST API, jeśli z niej nie korzystasz.

By tego dokonać, możesz użyć wtyczki Disable REST API

Podsumowanie

Zwiększenie bezpieczeństwa strony WordPress powinno być jednym z priorytetów każdego właściciela i administratora. Nie da się uchronić przed atakiem całkowicie, ale wprowadzając powyższe porady, powinniśmy uchronić się przed większością zautomatyzowanych ataków na ten CMS.

Postaw kawę autorowi artukułu.

Zobacz wszystkie artykuły

Jeśli potrzebujesz pomocy, twoja strona została zainfekowana, chcesz dokonać audytu bezpieczeństwa, czy po prostu masz jakieś pytania — napisz do nas. Postaramy się pomóc.

Zgłoś błąd w tekście
×