Ataki XSS: Jak chronić siebie, swoich klientów i swoją firmę?

Tobias Schüring Aktualizacja w dniu 23.01.2020 r.
5 Min.
W ten sposób operatorzy i użytkownicy stron internetowych mogą chronić się przed atakami skryptów cross-site.
Ostatnia aktualizacja 23.01.2020

Ataki XSS są szczególnie przebiegłe. I szczególnie popularne wśród hakerów. Pokazujemy, jak można zabezpieczyć się przed porwaniem swojej strony - jako operator strony internetowej i jako użytkownik.

1599 WordPress - dostawcaPlugins Wordfence usług ochrony ma ponad 14 miesięcy Analizy a najczęstszą słabością wszystkich były tzw. Słabości XSS. Prawie 47 procent znalezionych luk było związanych z cross-site scriptingiem - w skrócie XSS. Powód wystarczający, aby przyjrzeć się bliżej typowi ataku, w którym hakerzy infiltrują Twoją stronę za pomocą złośliwego kodu i wirtualnie ją porywają. Napastnicy używają Twojego bloga, Twojego sklepu lub strony firmowej jako narzędzia do swoich nielegalnych działań.

Ten wykres pokazuje, że XSS jest wordfence najczęściej spotykaną luką w Plugins XSS.
XSS jest najczęściej wordfence spotykaną luką w Plugins XSS.

Błędy XSS zawsze stają się niebezpieczne, gdy dane wprowadzane przez użytkownika są przekazywane do serwera WWW bez weryfikacji, na przykład w formularzach kontaktowych lub polach komentarzy. Po osiągnięciu sukcesu, hakerzy mogą ukraść dane, zintegrować Twoją stronę z botnetem lub zainfekować komputery odwiedzających. Na szczęście istnieje kilka bardzo prostych środków ochrony przed atakami XSS.

XSS jest równie ważny dla odwiedzających jak i dla operatorów witryn.

Ważne jest, aby zrozumieć, że luki XSS na WordPress stronach są równie istotne dla operatorów witryn jak i odwiedzających. Operatorzy witryn są wykorzystywani do realizacji niskopoziomowych celów hakerów, a odwiedzający witrynę są często ich ofiarami, na przykład poprzez kradzież danych lub rozprzestrzenianie złośliwego kodu.

W zasadzie ataki XSS rozpoczynają się w momencie, gdy użytkownicy wysyłają dane na serwer internetowy operatora strony. Kod jest przemycany w tych punktach neuralgicznych, które - jeśli wejście użytkownika nie zostanie krytycznie sprawdzone, np. przez firewall - mogą zainfekować stronę. Różne rodzaje ataków XSS są opisane w naszym artykuł wprowadzający na ten temat.

Najważniejsze: Regularne WordPress aktualizacje

Luki wykorzystywane przez hakerów do wprowadzenia złośliwego kodu znajdują się albo w WordPress rdzeniu, Plugins albo w Themes. To właśnie dlatego regularna aktualizacja z tych wszystkich elementów są również tak ważne. Ponieważ w tych aktualizacjach usuwane są słabe punkty, które zostały dotychczas stwierdzone.

Sensowne jest również regularne czytanie szczegółów aktualizacji poszczególnych producentów, aby poczuć luki w zabezpieczeniach, które są regularnie zamykane przez aktualizacje. W celu konserwacji i aktualizacji zabezpieczeń WordPress -Core, informacje te są udokumentowane na przykład w WordPress -Blogu. Najlepszym przykładem jest najnowsza aktualizacja zabezpieczeń, WordPress 4.7.5.

Firewalle i białe listy przeciwko prostym atakom XSS

Innym prostym środkiem ochrony przed atakami XSS są tzw. Zapory ogniowe do aplikacji internetowychalbo WAF. Te firewalle są sercem wielkiego bezpieczeństwaPlugins i są zasilane najnowszymi słabościami przez odpowiedni zespół badawczy producenta. A WAF jest generalnie procedurą, która Aplikacje internetowe od ataków przez Przesyłanie hipertekstu Protokół (HTTP) chroni.

Ale nawet te mechanizmy ochronne mają swoje granice. W przypadku niektórych ataków XSS, atak odbywa się za pośrednictwem bazy danych. Dlatego też sprawdzanie danych wejściowych użytkowników pod kątem złośliwego kodu jest jednym z centralnych mechanizmów bezpieczeństwa w walce z atakami XSS. Na przykład, treść komentarzy dotyczących podejrzanych ciągów znaków zeskanowane i uporządkowane w razie potrzeby.

Dane wyjściowe powinny być również zabezpieczone

Regularne aktualizacje zamykają istniejące luki w zabezpieczeniach XSS oraz zapory ogniowe i białe listy próbują odfiltrować złośliwy kod zanim dotrze on do serwera WWW i może zainfekować stronę. Dane wyjściowe powinny być jednak również odpowiednio zabezpieczone. Większość języków programowania i skryptów, takich jak PHP, Perl czy JavaScript, posiada już predefiniowane funkcje zastępowania lub maskowania znaków. Zapewniają one zastąpienie "problematycznych" meta znaków HTML (np. <, and >&) przez nieszkodliwe odwołania do znaków. Zapobiega to uaktywnianiu się złośliwego kodu. Kod ten powinien być również chroniony za pomocą tzw. biblioteki sanityzacyjne musi być dostosowana. Odbywa się to poprzez zainstalowanie Plugin kodu na serwerze i włączenie dodatkowego kodu do kodu źródłowego strony. Poniższy fragment kodu doda następnie na przykład do dozwolonych atrybutów:

Tak może wyglądać kod konfiguracyjny, który jest potrzebny do przeprowadzenia sanityzacji kodu.
Tak może wyglądać kod potrzebny do przeprowadzenia sanityzacji kodu.

Do tego potrzebna jest wiedza z zakresu programowania. Na przykład deweloper lub CTO może łatwo wdrożyć tę ochronę danych wyjściowych.

Zdrowy poziom sceptycyzmu: Jak użytkownicy chronią siebie?

Ataki XSS dotykają nie tylko operatorów witryn, ale także odwiedzających witrynę. Wielu atakom XSS można już zapobiec poprzez krytyczną i ostrożną obsługę w związku z "obcymi" linkami. Użytkownicy mają taką możliwość, na przykład, Dodatki NoScript do użytku. Uniemożliwiają one wykonywanie skryptów, tj. złośliwych linii kodu, które np. kradną dane.

Jeśli chcesz być po bezpiecznej stronie, możesz również uniknąć skryptów po stronie klienta, wyłączając obsługę JavaScript w swojej przeglądarce. Ponieważ jest to tak zwany aktywne pisanie scenariuszy jest dezaktywowany, niektóre rodzaje ataków XSS nie mają już szans, ponieważ złośliwe aplikacje nie są nawet uruchamiane. Jednak większość nowoczesnych stron internetowych wtedy już nie "działa" prawidłowo - lub w najgorszym przypadku wcale. Tak więc w tym przypadku konieczne jest rozważenie aspektów bezpieczeństwa i użyteczności.

W ten sposób dezaktywujesz JavaScript jednym kliknięciem w ustawieniach przeglądarki Chrome.
W ten sposób dezaktywujesz JavaScript jednym kliknięciem w ustawieniach przeglądarki Chrome.

Wniosek: ataki XSS są częściowo bardzo złożone, ale ochrona jest częściowo dość prosta.

XSS stanowi zagrożenie dla Ciebie jako operatora strony internetowej, jak również dla Twoich gości i klientów. Raz po raz słabe punkty w Plugins lub stają się Themes znane. Na przykład z Plugin WP Statystykiz ponad 400.000 aktywnych instalacji, lub z WooCommerce i jetpackz ponad trzema milionami aktywnych instalacji każda.

Ale jeśli trzymasz się na Themes bieżąco Plugins i używasz WAF, zrobiłeś już duży krok we właściwym kierunku. Jeśli używasz również białych list dla kodu przychodzącego i wychodzącego, to już doskonale zabezpieczyłeś swoją stronę. Zwłaszcza dwa ostatnie środki nie mogą być jednak wdrożone łatwo i bez umiejętności programowania.

W porównaniu z raczej prymitywnym Brute Force Ataki tym bardziej złożone ataki XSS są niestety nadal stosunkowo często skuteczne. Jest jednak znacznie mniej tych tak zwanych złożonych ataków niż jest Brute Force Ataki na WordPress strony daje. Mimo to, powinien pan jak najbardziej utrudnić napastnikom. Udane hackowanie nie tylko kosztuje czas i pieniądze, aby usunąć skrypty, ale może również wpłynąć na Twoją pozycję w wyszukiwarkach.

Może masz już doświadczenie z atakami XSS? Co robisz, żeby się przed nimi uchronić?

Jako administrator systemu Tobias czuwa nad naszą infrastrukturą i znajduje wszelkie możliwe sposoby na optymalizację wydajności naszych serwerów. Dzięki jego niestrudzonym wysiłkom często można go Slack znaleźć w nocy.

Artykuły pokrewne

Komentarze do tego artykułu

Napisz komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola oznaczone są * Zaznaczone.