Dzięki tym 7 środkom pozwolisz, by ataki Brute Force trafiały w próżnię

Tobias Schüring Ostatnia aktualizacja 20.10.2020
.
. 8 Min.
Przy co najmniej 4 miliardach pojedynczych ataków w tym roku, ataki Brute Force są prawdopodobnie największym zagrożeniem dla witryn WordPress .
Ostatnia aktualizacja 20.10.2020

Przy kilku miliardach pojedynczych ataków rocznie, ataki na Brute Force są prawdopodobnie największym zagrożeniem dla witryn WordPress . Na szczęście ten rodzaj ataku jest również bardzo nieudolny i łatwy do oszukania. Pokażemy Ci cztery proste i szybkie środki przeciwko atakom hakerów. A także trzy bardziej złożone mechanizmy ochronne.

Tylko w kwietniu 2017 r. dostawca zabezpieczeń Wordfence naliczyłponad miliard ataków Brute Force na strony WordPress na całym świecie. A to tylko przybliżone dane - liczba niezgłoszonych przypadków jest znacznie wyższa. Oznacza to, że ataki, które automatycznie próbują odgadnąć hasła i nazwy użytkowników, stanowią poważne zagrożenie dla stron WordPress na całym świecie. Ale nie tylko. Ponad 37,5 procent z 10 milionów największych stron internetowych działa obecnie pod adresem WordPress . A to oznacza, że kwestia skutecznych mechanizmów ochrony dla WordPress dotyczy także Internetu jako całości.

Jeśli chcesz dowiedzieć się, jak dokładnie działają ataki Brute Force i jak są niebezpieczne, sprawdź nasz artykuł o atakach Brute Force .

Mimo ich dużej liczby jest jedna dobra wiadomość: istnieją sensowne zabezpieczenia przed atakami Brute Force , które można wdrożyć samodzielnie bez większego wysiłku, a przede wszystkim bez wiedzy programistycznej. Są też środki, które wymagają przynajmniej podstawowej znajomości pliku .htaccess.

Te siedem środków jest przedmiotem dzisiejszej debaty:

  1. Silne hasła (bardzo ważne!)
  2. Nie używaj "admin" jako nazwy użytkownika
  3. Ograniczenie liczby niepoprawnych logowań
  4. Uwierzytelnianie dwuskładnikowe
  5. Logowanie wielopoziomowe
  6. Czarna lista
  7. Ukryj obszar logowania (jest kontrowersyjny)

1. używaj silnego hasła

Silne hasło jest niezwykle ważne jako ochrona przed atakami Brute Force . Boty i botnety wykorzystują ogromne bazy danych haseł do swoich "zgadywanek". Są one wypróbowywane bez ogródek. Im bardziej nietypowe i trudne jest Twoje hasło, tym większe prawdopodobieństwo, że nie pojawi się ono w nim.

Im dłuższe i trudniejsze jest Twoje hasło, tym dłużej zajmie botom jego złamanie, jeśli będą próbowały odgadnąć hasło bez listy.

Twoje hasło powinno więc zawierać różne kombinacje znaków z ...

  • 10 różnych numerów (od 0 do 9)
  • 52 różne litery (od A do Z i od a do z)
  • 32 różne znaki specjalne ...

... i mieć długość co najmniej 8 znaków.

Menedżer haseł Passwort-Depot podaje kilka przykładów ilustrujących obliczenia. Tutaj zakłada się, że silny pojedynczy komputer może wygenerować dwa miliardy haseł na sekundę. Konkretnie oznacza to:

  • Hasło składające się z 5 znaków (3 małe litery, 2 cyfry) ma 60 466 176 możliwych kombinacji i może zostać złamane w ciągu 0,03 sekundy.
  • Hasło składające się z 8 znaków (4 małe litery, 2 znaki specjalne, 2 cyfry) ma już 457 163 239 653 376 możliwych kombinacji. Tutaj kalkulator potrzebuje około dwóch i pół dnia.
  • A hasło składające się z 12 znaków (3 duże litery, 4 małe litery, 3 znaki specjalne, 2 cyfry) ma oszałamiającą liczbę 475 920 314 814 253 376 475 136 możliwych kombinacji. Jeden komputer potrzebuje 7,5 miliona lat, aby złamać to hasło.

KodeksWordPress rekomenduje Plugin Force Strong Passwords do tworzenia takich haseł. Zmusza to użytkowników do wybierania odpowiednio skomplikowanych haseł. Tak więc, ten Plugin nie sprawia, że strony bezpośrednio bardziej bezpieczne, ale edukuje użytkowników do korzystania z silnych haseł. Zwłaszcza jeśli pracujesz w imieniu klienta, ten mały środek może być bardzo praktyczny.

Nie musisz pamiętać haseł!

Menedżery haseł pomagają w tworzeniu bezpiecznych haseł i zarządzaniu nimi. Wszystko, co musisz zrobić, to zapamiętać hasło główne (oczywiście jak najbardziej złożone). Program zrobi resztę za Ciebie. Komputery Apple mają już zainstalowaną aplikację o nazwie "Keychain Manager". W ten sam sposób działają programy do zarządzania hasłami w chmurze, takie jak 1Password, LastPass czy KeyPass.

Dzięki temu nie musisz pamiętać wszystkich swoich haseł. Szczególnie jeśli zarządzasz więcej niż jedną stroną i korzystasz z różnych usług, profesjonalne zarządzanie hasłami jest błogosławieństwem.

2. nie używaj nazwy użytkownika "admin

Jak już wspomniano: ataki Brute Force to w zasadzie próby zgadywania. Powinieneś więc maksymalnie utrudnić hakerom odgadnięcie Twojej nazwy użytkownika. Dlatego nie używaj nazwy użytkownika "admin" ustawionej przez WordPress - i dlatego nie używaj nazwy, którą system ustawił dla Ciebie. Ta nazwa użytkownika jest oczywiście również domyślna dla wszystkich innych użytkowników WordPress .

3. zablokować stronę logowania po zbyt wielu nieudanych próbach

Brute Force Ataki testują tysiące i tysiące kombinacji nazw użytkowników i haseł. I odwrotnie, oznacza to, że generują one tysiące i tysiące prób logowania do ograniczenia.

Twój serwer zauważy, że coś się dzieje. Za pomocą odpowiedniego Plugin można zdefiniować, że dostęp jest blokowany po określonej liczbie nieudanych prób, dzięki czemu hakerzy muszą wstrzymać swój atak. Możesz wdrożyć tę ochronę za pomocą Plugin jak WP Limit Login Attempts lub Limit Login Attempts Reloaded.

Na stronie RAIDBOXES , każda instalacja WordPress ma domyślnie zintegrowaną funkcję ograniczania prób logowania. Jeśli dana osoba lub bot zbyt często próbuje zalogować się na Twoją stronę, podając nieprawidłowe dane dostępu, początkowo blokujemy dany IP na 20 minut. Jeśli próby logowania z fałszywymi danymi będą się powtarzać, IP zostanie zablokowane nawet na 24 godziny. Oczywiście można również samodzielnie zdefiniować liczbę prób i okres blokady.

Limit prób logowania i Co. mają datę wygaśnięcia

Jest jednak jedna ważna rzecz, którą należy zrozumieć w tym Plugins : Ograniczanie prób logowania na dany adres IP ma poważną wadę. Nie jest w stanie przewidzieć zmiany adresu IP. Oznacza to, że na przykład przed atakami typu botnet można się bronić tylko w niewielkim stopniu, jeśli w ogóle. Dzięki nowej generacji adresów IP (adresy IPv6) pojedynczy napastnik może również zmienić swój adres IP w ułamku sekundy. Fakt ten zwiększa zagrożenie, jakie niosą ze sobą ataki botnetów.

Oraz: Duża liczba ataków Brute Force nie jest prawdopodobnie zwykłą zgadywanką. Jak wynika z obliczeń przedstawionych w rozdziale dotyczącym bezpiecznych haseł, nawet botnet z milionem urządzeń nie jest w stanie odgadnąć bezpiecznych haseł. Dlatego wielu hakerów pracuje z listami haseł. Dzięki temu liczba prób logowania jest ograniczona do możliwych kombinacji danej biblioteki haseł.

Choć ograniczenie liczby prób logowania na IP majeszcze sens, to znaczenie tego mechanizmu bezpieczeństwa będzie w przyszłości szybko maleć. Jedynym naprawdę bezpiecznym mechanizmem ochrony przed atakami ze zmieniającymi się adresami IP jest uwierzytelnianie dwuskładnikowe.

4. uwierzytelnianie dwuskładnikowe

Idea dwuskładnikowego uwierzytelniania polega na wymaganiu drugiego potwierdzenia oprócz hasła podczas logowania. Jest to zazwyczaj inny kod alfanumeryczny. Szczególną cechą jest to, że jest on przekazywany poza samym procesem logowania - na przykład za pomocą generatora kodów lub telefonu komórkowego. I tylko właściciel tego urządzenia jest ostatecznie w stanie się zalogować.

Dzięki aplikacji Google Google Authenticator i odpowiedniej Plugin , rozszerzone uwierzytelnianie może być stosunkowo łatwo zaimplementowane na WordPress . Często używane są np. Plugins Google Authenticator by Hendrik Schack lub Google Authenticator by miniOrange.

Aby zainstalować dodatkowe zabezpieczenie, należy pobrać aplikację Google na swój smartfon i zainstalować stronę Plugin w WordPress . W tym miejscu generowany jest teraz kod QR, który należy zeskanować za pomocą aplikacji. Alternatywnie można utworzyć konto ręcznie. Teraz Twoje konto użytkownika WordPress i aplikacja są połączone w Twoim telefonie komórkowym.

Aplikacja generuje teraz nowy kod bezpieczeństwa co 30 sekund. Każdy użytkownik, dla którego aktywowano uwierzytelnianie dwuskładnikowe, zobaczy teraz w obszarze logowania wiersz "Kod Google Authenticator" obok "Nazwy użytkownika" i "Hasła". Aby się zalogować, potrzebuje więc smartfona, na którym generowane są kody. Duże wtyczki bezpieczeństwa takie jak Wordfence oferują w niektórych przypadkach podobny mechanizm.

Proces podwójnego uwierzytelniania może wydawać się skomplikowany, ale z punktu widzenia bezpieczeństwa jest bardzo dobrym zabezpieczeniem przed atakami Brute Force . Zwłaszcza w obliczu wspomnianej wcześniej zmiany adresów z IPv4 na IPv6.

Silne hasła, zmiana nazwy użytkownika, Plugins jak Limit Login Attempts i uwierzytelnianie dwuskładnikowe to środki, które można wdrożyć łatwo, szybko i bez wiedzy programistycznej. A co najważniejsze, dodatkowe uwierzytelnianie i naprawdę silne hasła skutecznie chronią również przed atakami Brute Force .

Ale jeśli chcesz, możesz zrobić jeszcze więcej. Możesz zabezpieczyć swój obszar administracyjny WP dodatkowym hasłem, utworzyć czarną lub białą listę, a nawet ukryć swój obszar administracyjny WP. Wszystkie te środki nie zapewniają jednak większego bezpieczeństwa, lecz należy je raczej rozumieć jako opcje lub alternatywy.

5. dodatkowe zabezpieczenie hasłem

Jeśli prowadzisz swoją stronę WordPress na serwerze Apache, masz możliwość wprowadzenia wielopoziomowej procedury logowania bez Plugin . Dzieje się tak dlatego, że każda instalacja WordPress na serwerze Apache zawiera tzw. plik .htaccess. W tym pliku możesz przechowywać kod dla dodatkowego uwierzytelnienia HTTP, aby dodać kolejną ochronę hasłem do strony logowania. Serwer wymaga hasła, aby nawet przepuścić odwiedzających do ekranu logowania.

# Chroń wp-login
AuthUserFile ~/.htpasswd
 AuthName "Dostęp prywatny
 AuthType Basic
 wymagaj użytkownika mysecretuser

Z tym poleceniem, zapytanie o hasło jest generowane zanim obszar wp-admin może być nawet dostępny. Tutaj podajesz dodatkową nazwę użytkownika i hasło, aby w ogóle uzyskać dostęp do obszaru logowania. Dane dla dodatkowego użytkownika muszą być jednak zdefiniowane w .htpasswd. Aby to zrobić, nazwa użytkownika i hasło muszą być dodane do pliku w formie zaszyfrowanej. KodeksWordPress wyjaśnia, jak ten proces w zasadzie działa.

6. czarna lista i biała lista

Mówiąc o .htaccess: Ty móc inny potężny ochrona z ten kartoteka. Kilka linijek kodu sprawia, że tylko określone IP mają dostęp do pulpitu nawigacyjnego WordPress lub poszczególnych katalogów.

Aby to zrobić, umieszczamy dodatkowy .htaccess z następującym kodem w odpowiednim katalogu - najlepiej wp-admin:

# Zablokuj dostęp do wp-admin. 
 polecenie odmowa, zezwolenie
 zezwalaj z x.x.x.x
 zaprzeczyć wszystkim

x.x.x.x należy oczywiście zastąpić adresami IP, które powinny mieć dostęp do strony. Przykład pokazuje whitelistę, czyli listę IP, które mają prawo dostępu do strony. Oznacza to, że strona logowania jest zablokowana dla wszystkich innych IP. Przy okazji, kolejność komend - "allow" po "deny" - jest niezwykle ważna, ponieważ są one wykonywane w kolejności. Jeśli na pierwszym miejscu jest "odmowa od wszystkich", to również będziesz miał do czynienia z zamkniętymi drzwiami.

Czarna lista wprowadziłaby dokładnie odwrotny mechanizm: Pozwoliłoby to określić, które IP nie mają dostępu do strony. Oczywiście, istnieją również rozwiązania wtyczkowe dla obu. Na przykład, dobrze znane wtyczki bezpieczeństwa, takie jak All In One WP Security, Wordfence lub Sucuri, każde z nich oferuje funkcję czarnej lub białej listy. Należy jednak zauważyć, że te trzy Plugins mogą oczywiście zrobić znacznie więcej niż tylko tworzyć blaklisty lub whitelisty. Dlatego nie należy ich instalować wyłącznie dla tych funkcji. Popularną alternatywą jest Plugin Loginizer, który obecnie ma ponad 500 000 aktywnych instalacji.

7. ukryć obszar logowania

Brute Force Ataki atakują Twoją stronę logowania. Bardzo prostym sposobem zapobiegania takim atakom jest uniemożliwienie napastnikom dostępu do strony logowania. W tym celu niektórzy webmasterzy ukrywają maskę logowania. Obszar logowania jest wtedy dostępny tylko poprzez tajny adres URL.

Środek ten jest zgodny z (kontrowersyjną) zasadą bezpieczeństwa przez ukry cie i sam w sobie nie jest znaczącym środkiem bezpieczeństwa. My na RAIDBOXES nie jesteśmy wielkimi przyjaciółmi tej zasady. Jeśli zastosujesz powyższe środki, masz już bardzo dobrze zabezpieczony obszar logowania i nie musisz go dodatkowo ruszać. Jednakże, środek ten może przyczynić się do zwiększenia postrzeganego bezpieczeństwa, co może być szczególnie ważne dla postrzegania Twoich klientów.

Jeśli chcesz ukryć swój obszar wp-admin, możesz użyć jednej z dużych wtyczek bezpieczeństwa (które oferują o wiele więcej funkcji). Możesz też spróbować jednego z tych popularnych Plugins :

Jak powiedzieliśmy: Naszym zdaniem, ukrywanie wp-admin nie jest rozsądnym środkiem - przynajmniej nie w celu ochrony witryny przed atakami Brute Force . Jeśli wybrałeś silne hasło i wdrożyłeś rozsądną procedurę wykluczania IP lub uwierzytelniania dwuskładnikowego, to już znacznie zmniejszyłeś ryzyko udanego ataku Brute Force .

Wnioski

Z obecnym udziałem w rynku wynoszącym ponad 32 procent, WordPress jest zdecydowanie największym systemem CMS na świecie. Jest mało prawdopodobne, aby w przyszłości miało się to zmienić. Prawdopodobieństwo stania się celem ataku Brute Force jest więc, czysto matematycznie, niezwykle wysokie. Trzeba mieć tego świadomość. Na szczęście można się przed nimi bardzo łatwo uchronić. Ponieważ kilka środków, tj. bezpieczne hasła i dwuskładnikowe uwierzytelnianie, można wdrożyć w kilka chwil i całkowicie bez wiedzy programistycznej.

I nawet te rzekomo trudniejsze środki, takie jak blacklisting lub whitelisting, dodatkowa ochrona hasłem lub mechanizm blokowania obszaru logowania można wdrożyć za pomocą Plugins . Więc jeśli tylko zastosujesz się do pierwszych trzech lub czterech punktów tego postu, jesteś już dobrze zabezpieczony przed atakami Brute Force . Oczywiście, zawsze można zrobić więcej, np. stworzyć dodatkowe zabezpieczenia hasłem lub ustawić czarne i białe listy. W takich przypadkach należy jednak rozważyć, czy dodatkowe mechanizmy bezpieczeństwa są rzeczywiście tego warte, zwłaszcza w odniesieniu do nakładu pracy administracyjnej.

Jako administrator systemu Tobiasz czuwa nad naszą infrastrukturą i znajduje każdą śrubkę, aby zoptymalizować wydajność naszych serwerów. Dzięki jego niestrudzonym wysiłkom, często można go spotkać w nocy na stronie Slack .

Powiązane artykuły

Komentarze do tego artykułu

Napisz komentarz

Twój adres e-mail nie zostanie opublikowany. Pola wymagane oznaczone są *.