Jak się bronić przed atakami XSS. 3 metody zabezpieczeń

Jak się bronić przed atakami XSS

Włamania do stron opartych o WordPress nie są niczym niezwykłym. Stanowią jeden z wielu typowych problemów właścicieli stron. Jednym z popularnych ataków na na strony internetowe są ataki typu cross-site scripting, znane inaczej jako XSS. Są trudne w zwalczaniu, ale nie jesteś całkiem przed nimi bezbronny/a. Wystarczy kilka prostych środków ostrożności aby zminimalizować ryzyko ataku. Dziś pokażę Tobie jak się bronić przed atakami XSS w trzech krokach.

Czym jest atak XSS

Ataki XSS są jedną z wielu metod przejęcia kontroli nad Twoją stroną internetową. Wykorzystują one luki w jej zabezpieczeniach w dość specyficzny sposób. Zainteresowany włamaniem haker szuka w pierwszej kolejności słabego punktu Twojej strony. Może nim być niechlujnie napisana wtyczka lub motyw. Gdy owy nikczemnik znajdzie słaby punkt, wykorzystuje go aby za jego pomocą „wstrzyknąć” (czyli dodać) złośliwy kod do plików strony lub bazy danych. Jako złośliwy kod, możesz sobie wyobrazić wirusa komputerowego w potocznym rozumieniu.

Kilka linijek złośliwego oprogramowania wystarczy, aby Twój WordPress otworzył hakerowi swoje drzwi i pozwolił np. wykraść dane użytkowników lub wyświetlić niechciane treści. Jeśli na Twojej stronie czy blogu nagle zaczną pojawiać się reklamy których nie zamieszczałeś – z dużym prawdopodobieństwem padłeś ofiarą takiego ataku.

Sucuri
Bardzo lekka i przyjemna wtyczka dająca realne zabezpieczenie przed atakami. Alternatywa dla popularnego Wordfence.

W skrajnym przypadku, atak XSS może doprowadzić do całkowitego unicestwienia Twojej strony, poprzez usunięcie plików lub bazy danych. Najczęściej jednak ataki te kończą się kradzieżą danych wrażliwych (adresy e-mail użytkowników, numery telefonów, loginy, hasła) lub wyświetlaniem nachalnych reklam lub linków do innych stron.

Uwierz mi – sprzątanie po takim ataku nie należy do rzeczy ani przyjemnych, ani tanich. Nie wspominając już o niesmaku pozostawionym u użytkowników Twojej strony, bloga lub sklepu internetowego. Pamiętaj, że wyciek danych musisz też zgłosić do odpowiedniego urzędu – GIODO (Generalny Inspektor Ochrony Danych Osobowych).

Jak się więc bronić się przed atakami i przynajmniej zminimalizować ryzyko ich wystąpienia?

1) Dokonuj regularnych aktualizacji

O tym kroku już zapewne wiesz. Powtarzam go jak mantrę w swoich wpisach. Dbanie o regularne aktualizacje WordPress, wtyczek i motywów nie tylko zapewnia bezproblemową pracę witryny, ale też przyczynia się jej bezpieczeństwu.

Niestety nikt ani nic nie jest idealne. Również kod pisany przez programistów. Na szczęście, gdy odpowiedzialni developerzy zauważą dziurę w swoim oprogramowaniu (lub ktoś mi to zgłosi) – wydają aktualizacje. Pilnując aktualizacji, minimalizujesz ryzyko włamania. Jeśli dziury łatane są na bieżąco a Ty na bieżąco dokonujesz aktualizacji, to haker może nie zdążyć ze swoim włamaniem.

Zwróć też uwagę, że o ile w przypadku drobnych aktualizacji, WordPress potrafi się sam zaktualizować, o tyle każde większe wydanie musi być zaktualizowane ręcznie. Stan dostępnych aktualizacji WordPress, motywów i wtyczek znajdziesz w zakładce Kokpit -> Aktualizacje.

Jeśli boisz się, że coś zepsujesz lub strona po aktualizacji przestanie działać jak trzeba, wykonaj jej kopię zapasową lub poproś o pomoc specjalistę. W razie potrzeby służę pomocą 🙂

2) Używaj firewalla do zabezpieczenia strony

Ta porada budzi gorącą dyskusję wśród specjalistów. Jedni uważają, że wtyczki typu Wordfence lub Sucuri to zło wcielone a inni bronią je pełną piersią. W końcu wtyczki do zabezpieczeń też mogą mieć dziury a ataki hakerskie być wycelowane w ich podatności. Niemniej jednak uważam, że tego typu wtyczki robią więcej dobrego niż złego. To tak jak z drzwiami do domu – lepiej mieć najtańszy i najsłabszy zamek do drzwi niż nie mieć go wcale. Amator włamanie sobie odpuści a osoba zdeterminowana obejdzie każde, nawet najmocniejsze zabezpieczenia.

WordFence
Wordfence jest najpopularniejszą wtyczką służącą do zabezpieczenia WordPress. Ma wielu zwolenników, ale też wielu przeciwników. Z racji swojej popularności… też bywa celem ataków hakerskich.

Wyżej wymienione wtyczki zabezpieczą Twoją stronę przed najpopularniejszymi metodami włamań. Nie tylko zabezpieczają przed atakami XSS, ale też przed atakami brute force, czyli nieustannymi próbami odgadnięcia loginów i haseł.

Jeśli przeraża Cię ilość ustawień lub oskarżenia o spowalnianie działania strony przez Wordfence – spróbuj rozwiązania od Sucuri. Polecam je ze względu na łatwość konfiguracji oraz funkcję porównującą zmiany w plikach na serwerze. W razie nieuprawnionej modyfikacji plików, otrzymasz szczegółowy raport co i kiedy zostało zmienione bez Twojej wiedzy.

3) Dodaj Content Security Policy do nagłówka WordPress

Yyyy, ale że co? Zapytasz? W największym skrócie – Content Security Policy pozwala zdefiniować, skąd mogą pochodzić dodatkowe zasoby, z których korzysta Twoja strona. Inaczej mówiąc, skąd mogą pochodzić wykonywane na niej skrypty. Wszystkie nie pasujące do polityki zasoby będą przez przeglądarkę odrzucone jako niedozwolone, a sama przeglądarka zgłosi błąd naruszenia reguł polityki.

Taka polityka pozwoli wykryć próbę dodania złośliwego kodu pochodzącego z innego adresu niż adres Twojej strony. O ile cała terminologia może wydawać się trudna, to proces zabezpieczenia się jest dość prosty. Wystarczy odrobina chęci i wiedzy technicznej.

Korzystając z protokołu FTP, połącz się z serwerem Twojej strony a następnie edytuj plik .htaccess znajdujący się w głównym folderze WordPress.

Po otwarciu wspomnianego pliku poszukaj linijki oznaczonej komentarzem #END WordPress.

Następnie wklej w następnej linii poniższy fragment kodu:

Content-Security-Policy default-src 'none'; script-src 'self'; connect-src 'self'; img-src 'self'; style-src 'self';

Zapisz plik i upewnij się, że zmiany zostaną wysłane na serwer. To tyle. Prawda, że proste?

Uważaj jednak na ten punkt, gdyż może zablokować skrypty lub obrazki z innych stron. Upewnij się, że wiesz co robisz.

Broń się przed atakami

Walka z hakerami jest jak zabawa w kotka i myszkę. Jedni gonią, inni uciekają. My, użytkownicy WordPress stoimy w środku tej pętli i nie posiadając zdolności programistycznych jesteśmy zdani na podsunięte nam rozwiązania. Nie oznacza to jednak, że jesteśmy całkowicie bezbronni.

Trzeba szczerze powiedzieć, że opisane wyżej metody nie dadzą Ci 100% gwarancji bezpieczeństwa. Mocno jednak zminimalizują prawdopodobieństwo ataku i włamania. Szczególnie takiego globalnego, w pełni zautomatyzowanego i skanującego wszystkie strony WordPress w poszukiwaniu dziur w zabezpieczeniach.

Ostatecznie myślę, że każdy, nawet najmniejszy wysiłek w kierunku zabezpieczeń strony, wart jest poświęcenia. A Ty, co uważasz w tym temacie? Znasz inne sposoby jak się bronić przed atakami XSS?

ZAPISZ SIĘ DO NEWSLETTERA!

Bądź na bieżąco! W newsletterze będziesz otrzymywać m.in. informacje o nowych wpisach na blogu, poradnikach na YouTube, e-bookach oraz ważnych wydarzeniach ze świata WordPress. Wysyłam jedynie wartościowe treści.

Facebook
Twitter
Email
Drukuj