Informacje o artykule: | Poziom trudności: 3/4 | Dostęp: Free |
Stworzyłeś i rozwijasz swój serwis, podejmujesz wysiłki w celu jego promocji. I dobrze. Niestety, informacja o Twoim przedsięwzięciu rozchodzi się nie tylko wśród potencjalnych użytkowników. Dociera również w miejsca, z których możesz otrzymać cios. I wcale nie muszą to być źli ludzie, najczęściej będzie do automat – oprogramowanie, które ma tylko jeden cel: próbę ataku na każdą stronę, która pojawi się w jego zasięgu.
Jakie szkody może przynieść taki ‘miły automacik’ po udanym włamaniu? Ogromne – konsekwencje wizerunkowe, funkcjonalne, jak również prawne lub finansowe. Może na przykład:
- wysyłać spam z Twojej strony/poczty,
- wykraść bazę danych wszystkich użytkowników,
- zwiększyć sztuczny ruch i/lub obciążenie serwera,
- zamieścić na Twoich stronach linki do różnych ofert,
- uruchamiać inne strony,
- podmienić zawartość Twoich stron,
- usunąć część lub całą zawartość Twojego serwisu,
- instalować i uruchamiać aplikacje na komputerach użytkowników,
- użyć Twoich danych dostępowych przy atakach na inne strony,
- instalować nieautoryzowane oprogramowanie na Twoim serwerze.
Na temat bezpieczeństwa CMS’ów, w szczególności tych najpopularniejszych, w Sieci znajdziesz mnóstwo informacji. Zarówno opinii, twierdzących, że np. WordPress jest całkowicie nieodporny na ataki, jak również przeciwnych – że to nie wina CMS’a, ale błędów ludzi z niego korzystających i wystarczy odpowiednio podejść do tematu, aby skutecznie uniknąć większości zagrożeń.
Ważne ostrzeżenie!
Jedną z metod prewencji jest instalacja tzw. wtyczki bezpieczeństwa. Przy czym temat jest tyle popularny wśród uświadomionych użytkowników, co kontrowersyjny wśród ekspertów bezpieczeństwa. Dlaczego? Otóż, korzystanie z tego typu wtyczek, z jednej strony poprawia poziom bezpieczeństwa, daje wiele konkretnych korzyści. Z drugiej jednak, wywołuje u użytkownika efekt wiary w to, że wtyczka rozwiąże wszystkie problemy, całkowicie zabezpieczy nasz serwis, nie trzeba robić nic innego. W konsekwencji osłabia to czujność osoby zarządzającej witryną i doprowadza do jeszcze gorszych skutków. Ponadto, jest to kolejna wtyczka, a więc dodatkowy element naszej witryny, który sam w sobie może stanowić zagrożenie. Znane są przypadki odkrycia tzw. dziur bezpieczeństwa w tego rodzaju pluginach.
Autorzy poradnika wychodzą z założenia, że:
- Dopuszczalna jest instalacja wtyczki bezpieczeństwa, ale jedynie pod warunkiem, że będzie to pierwszy i nie ostatni krok, że użytkownik będzie ją traktował jedynie jako uzupełnienie innych działań.
- Każdy użytkownik CMS’a powinien jak najszybciej podjąć wszelkie, dostępne mu działania, aby podnieść poziom bezpieczeństwa swojego serwisu. Powinien poświęcić możliwie jak najwięcej sił i czasu, aby nauczyć się i wdrożyć własne metody ochrony. Powinien wypracować w sobie odruch nieustannego rozwoju w tym zakresie i nigdy nie powinien spocząć na laurach.
- Każdy użytkownik WordPress’a powinien sobie uświadomić, że nie istnieje w świecie realnym witryna bezpieczna w 100%. Powinien określić sobie granicę dopuszczalnych dla niego strat i podejmować wszelkie działania, aby poziom bezpieczeństwa jego witryny możliwie jak najbardziej chronił go przed przekroczeniem tej granicy.
- Każdy użytkownik takiej wtyczki powinien pamiętać, że poleganie na informacjach, automatycznie generowanych przez tego typu dodatki, jest niczym innym, jak oszukiwaniem samego siebie. To może być wyłącznie wstępna informacja, jedna z wielu. No i, a może przede wszystkim, generowane i/lub wysyłane przez wtyczkę informacje należy czytać, starać się zrozumieć, wyciągać z nich informacje i reagować.
- Jeżeli użytkownik poprzestanie jedynie na instalacji wtyczki bezpieczeństwa, musi mieć pełną świadomość, że nadejdzie kiedyś moment weryfikacji. I wówczas będzie mógł mieć pretensje wyłącznie do siebie.
Ok, miejmy nadzieję, że przeczytałeś i wziąłeś sobie do serca powyższe uwagi. Potraktuj je proszę naprawdę poważnie i uważnie. Przecież nie chcesz być kolejnym spośród wielu tysięcy użytkowników, z rozpaczą w oczach (i portfelach) poszukujących specjalistów, którzy pomogą odzyskać utracony serwis i/lub dane. Ten etap nigdy nie będzie tani, szybki i zawsze możliwy!
Omówimy instalację i podstawową konfigurację wtyczki ’Wordfence Security’. Wtyczka dostępna jest w dwóch wersjach: bez- i płatnej, a instalując bezpłatną otrzymamy funkcjonalność:
- Ochrona przed próbami wielokrotnego logowania z danego adresu IP.
- Skanowanie plików WordPress’a, wtyczek oraz motywów i porównywanie ich z oryginałami.
- Wyszukiwanie w plikach znanych backdoor’ów, które odpowiadają za luki w powłoce bezpieczeństwa.
- Próba ochrony w czasie rzeczywistym przed znanymi atakami, które zostały wykryte na innych witrynach korzystających również z tej wtyczki.
- Firewall, dzięki któremu możemy zablokować fałszywe automaty indeksujące, skanowanie z zewnątrz, itp. Firewall’em możemy ręcznie blokować konkretne adresy IP lub całe klasy.
- Skanowanie linków pod kątem ich obecności na liście niebezpiecznych adresów zawierających malware, stosujących phishing, itp.
- Wbudowaną funkcjonalność podobną do programów antywirusowych (np. heurystyka), dzięki czemu zwiększa się szansa na wykrycie podejrzanego kodu.
- Możliwość porównania zawartości strony podejrzanej i jej oryginalnej wersji, możliwość przywrócenia poprzedniej wersji lub usunięcia podejrzanej strony.
- Informowanie o koniecznych aktualizacjach CMS’a i wtyczek.
- Monitorowanie siły haseł kont w naszym serwisie.
- Monitorowanie wpisów DNS w celu wykrycia próby podszycia się pod nasz serwis.
- Ograniczanie lub blokowanie groźnego ruchu ze strony robotów, chcących znaleźć na stronie luki bezpieczeństwa.
- Monitorowanie miejsca na dysku serwera.
- Możliwość przeglądania ruchu w czasie rzeczywistym.
- Wsparcie społeczności, dzięki czemu możemy na bieżąco śledzić newsy dot. bezpieczeństwa.
W wersji płatnej dodatkowo otrzymamy m.in.:
- Możliwość blokowania ruchu z określonych krajów.
- Możliwość uruchomienia dodatkowej autoryzacji SMS podczas logowania.
- Automatyzację procesów skanowania.
Całkiem sporo, jak widać. Pamiętajmy jednak, aby nie ulec złudzeniu – to nie wszystko, czego potrzebujemy! (zwróć uwagę na punkt ‘Ważne ostrzeżenie!’ powyżej)
Zatem, rozpoczynamy standardowo, od instalacji i uruchomienia wtyczki:
Wtyczka od razu umożliwi wprowadzenie adresu e-mail, na który będzie wysyłała powiadomienia o wykrytych zagrożeniach (adres można w każdej chwili zmienić):
Pojawi się nowa pozycja w menu, z czego tutaj omówimy głównie trzy najważniejsze opcje:
- funkcje skanowania,
- konfigurację firewall’a,
- dostosowanie opcji konfiguracyjnych:
W zakładce ‘Scan’ znajdziemy wszystkie informacje, związane z przeszukiwaniem nietypowych informacji i zachowań, a które wtyczka publikuje do naszej wiadomości. Wtyczka będzie przeprowadzała poszukiwania okresowo, zgodnie z ustawieniami, ale w każdej chwili możemy proces uruchomić ręcznie, klikając w ‘Start a Wordfence Scan’:
W sekcji ‘Scan Summary’ znajdziemy podsumowanie wyników ostatniego skanowania. Oczywiście najlepiej, aby wszystkie komunikaty wyglądały tak: ‘Secure’, ale czasem nawet ‘Problems found’ nie musi oznaczać nic złego. W tym przypadku oznacza bowiem, że nie wszystkie pliki mogły zostać sprawdzone, bo te były niedostępne dla wtyczki z uwagi na ręcznie dokonaną zmianę uprawnień. Najważniejsze, aby umieć prawidłowo zinterpretować komunikaty:
Ostatnia sekcja tej strony to komunikaty o ew. problemach. Mogą wystąpić trzy statusy:
a) Wszystko w porządku (teoretycznie – przeczytaj poprzedni punkt!):
b) Ostrzeżenie – coś, czym powinniśmy zająć się możliwie szybko, ale bez paniki. W tym przypadku jest to informacja o konieczności aktualizacji wtyczki ‘SEO Redirection’:
c) Zagrożenie – może być źle, wskazana jak najszybsza reakcja. W ten sposób wtyczka poinformuje nas o pilnych aktualizacjach, wykrytych zmianach w plikach, wykrytym podejrzanym kodzie, itp. Czasem będą to jednak informacje o wykrytym niebezpieczeństwie, które możemy zaakceptować lub zignorować. Na przykład informacja o wykrytych w pliku zmianach, których sami dokonaliśmy i mamy tego świadomość (np. tłumaczenia). Podkreślmy po raz kolejny – po prostu musimy być świadomymi użytkownikami wtyczki, jeśli ma ona nam pomagać w całościowej ocenie stanu serwisu. Oto przykład komunikatu, który został zaakceptowany i zignorowany:
Teraz omówimy zakładkę ‘Firewall’, czyli spolszczając ‘Ściana ogniowa’. Jest to rodzaj zapory, która ma utrudniać niebezpieczeństwom przedostanie się do naszego serwisu. Na początku wtyczka poprosi nas o przeprowadzenie procesu aktywacji firewall’a. Należy wówczas wykonać kilka kroków, zgodnie z wyświetlanymi instrukcjami. Następnie wtyczka przejdzie w etap nauki, kiedy to będzie próbowała dostosować swoje zachowania do konkretnego środowiska. Po jakimś czasie plugin przejdzie do etapu właściwego działania ‘Enabled and Protecting’. W razie potrzeby (np. nietypowych testów, poszukiwania przyczyny jakiegoś problemu, etc.) możemy zmienić ten stan, ale bądźmy świadomi naszych działań:
Firewall ma szereg dodatkowych ustawień, jednak omawianie ich wykracza poza charakter niniejszego poradnika. Ponadto, w większości standardowych przypadków, wystarczy pozostawić domyślne ustawienia wtyczki w tym obszarze:
I na koniec przejdźmy do zakładki ‘Options’, w której dokonamy kilku zmian:
Tutaj również, w większości przypadków, wystarczy zachować ustawienia domyślne, poza następującymi elementami:
- Update Wordfence automatically when a new version is released? – czy wtyczka ma aktualizować się automatycznie, zaznaczamy,
- Where to email alerts – uzupełniamy, jeśli nie zrobiliśmy tego po instalacji,
- Email me when Wordfence is automatically updated – informacja o automatycznej aktualizacji, zaznaczamy, dzięki czemu będziemy mogli od razu sprawdzić witrynę,
- Alert me when a non-admin user signs in – zaznaczamy, jeśli mamy witrynę, w której wyłączona jest możliwość rejestracji,
- Email summary frequency – wybieramy jak często mamy otrzymywać informacje, minimum 1/tydzień,
- Enforce strong passwords? – ustawiamy przynajmniej dla wszystkich, którzy mają jakikolwiek dostęp do elementów WordPress’a,
- Lock out after how many login failures – ile razy można podać błędne dane podczas logowania, ustawiamy jak najmniejszą ilość, najlepiej 3-5,
- Lock out after how many forgot password attempts – ile razy można podać błędne dane podczas odzyskiwania hasła, ustawiamy jak najmniejszą ilość, najlepiej 3-5,
- Count failures over what time period – po jakim czasie resetuje sie licznik, możliwie jak najdłużej,
- Amount of time a user is locked out – na jak długo następuje blokada użytkownika, możliwie jak najdłużej,
- Hide WordPress version – ukrywanie w kodzie HTML wersji WordPress’a, zaznaczamy,
Całość zmian oczywiście zatwierdzamy klikając w ‘Save Changes’.
Wtyczka ma bardzo szczegółowo stworzoną na stronie producenta dokumentację i pomoc. Niestety w j. angielskim, ale warto z niej korzystać w przypadku jakichkolwiek odstępstw od schematu ‘zwyczajnej’ strony.
I, na zakończenie rozdziału, jeszcze raz przypomnienie: zapoznaj się szczegółowo z rozdziałem 'Zabezpieczenie WordPress w wersji prawie PRO’ – to naprawdę ważne.