WordPress Brute Force Útok

4 Opatření, která zabraňují útokům hrubou silou na váš WordPress

Co jsou útoky hrubou silou, k čemu je útočníci používají a jak můžete těmto útokům na váš WordPress zabránit? Určitě si takové otázky kladete, když se zabýváte tématem. Na tyto otázky jsme shromáždili odpovědi.

Co jsou útoky hrubou silou?

Útoky hrubou silou jsou pokusy o získání přístupu k vašemu systému (ve vašem případě pravděpodobně k vašemu WordPressu). To se provádí pokusem uhodnout uživatelské jméno a heslo. Koneckonců, tento účet již má přístup k systému. 

Je to velmi jednoduchá a primitivní metoda (jak název napovídá – hrubá síla), která je stále velmi účinná. Zároveň je však také velmi snadné mu zabránit.

Jaké typy útoků hrubou silou existují?

Existují malé, ale jemné rozdíly mezi útoky hrubou silou a jejich scénáři útoku. Nejběžnější druhy lze rozdělit do 5 kategorií:

  1. Jednoduchý útok hrubou silou
  2. Slovníkový útok
  3. Hybridní útok hrubou silou
  4. Reverzní útok hrubou silou / Stříkání hesel
  5. Vycpávka pověření

V následujícím textu vás podrobně seznámíme s každou z těchto kategorií.

"*" povinný údaj

Souhlas*
Toto pole slouží k ověření a nemělo by se měnit.

1. Jednoduchý útok hrubou silou

Jedná se o nejčistší formu útoku hrubou silou. Zkouší jakoukoli kombinaci postav kousek po kousku - bez výzkumu nebo samostatného postupu, s výjimkou jednoduchého počítání znaků nahoru nebo dolů.

WordPress Brute Force Jednoduchý útok
Kredit: Matthias Held

Tato metoda je jednoduchá, ale stojí čas nebo spoustu výpočetního výkonu. Nicméně se stále se zvyšujícími procesory nebo schopností uvolnit mnoho různých systémů současně na jednom cíli (například pomocí botnetů nebo cloudových serverů) je to stále platná metoda. 

Existují jak laboratorní zkoušky , tak aplikace v reálném světě, které mohou prolomit 8místné heslo za méně než 12 minut. Jak technologie postupuje, bude ještě rychlejší a snazší se tam dostat. Proto tato metoda zůstává populární mezi útočníky, kteří se specificky zaměřují na konkrétní cíl.

Výhoda: Jakákoli hesla lze uhodnout.
Nevýhoda: Může to trvat velmi dlouho a vyžaduje velké výpočetní úsilí.

Dobré metody obrany: Používejte dlouhá hesla se širokou škálou znaků.

2. Slovníkový útok

Na rozdíl od metody Simple Brute Force používá Dictionary Attack pro testování existující datovou sadu.

Mohou to být data z různých zdrojů:

  1. Skutečné slovníky (slovníky), například všechna slova z Dudenu.
  2. Seznamy hesel, jako je 10 000 nejčastěji používaných hesel.
  3. Hesla z minulých porušení (uživatelská jména a hesla z předchozích hacků webových stránek a aplikací).

První varianta je stále méně důležitá, ale poslední dvě se v průběhu let staly silnějšími a silnějšími, protože s rostoucími kybernetickými útoky se samozřejmě zvyšuje i množství dat v těchto seznamech.

WordPress Brute Force slovník útok
Kredit: Matthias Held

Výhoda: Vzhledem k tomu, že uživatelé rádi používají hesla, která jsou také patrná, často si to usnadňují a používají jednotlivá slova ze slovníku nebo jména znovu a znovu na všech službách, webových stránkách a aplikacích. Proto je pravděpodobnost úspěchu poměrně vysoká, abyste s ním získali přístup, a metoda je mnohem rychlejší než jednoduchá hrubá síla.


Nevýhoda: Pravděpodobnost úspěchu již není 100%.

Dobré metody obrany: Nepoužívejte jednotlivá slova ze slovníku nebo jména, položky a podobně. Stejné heslo používejte také pouze pro jeden účet a ne pro několik. 

3. Hybridní útok hrubou silou

Hybridní brute force attack je kombinací Simple Brute Force Attack a Dictionary Attack.


Zde je slovo převzato z Simple Brute Force a kombinováno s potenciálními čísly, která se často používají, jako je rok narození nebo výročí svatby. To drasticky omezuje počet potenciálních pokusů a tím zjednodušuje proces útoku.

WordPress Brute Force Hybridní útok
Kredit: Matthias Held

Výhoda: Tato metoda má stejnou výhodu jako Dictionary Brute Force, pouze zde je počet pokusů zvýšen a rozšířen o vysoký počet pokusů s jednoduchým přidáním znaků, jako jsou smajlíky v textové podobě nebo letech (Maga2020 je slavný příklad).
Nevýhoda: Stejně jako u slovníkové hrubé síly, pravděpodobnost úspěchu již není 100%.

Dobré metody obrany: Nepoužívejte důležitá data nebo čísla v heslech.

4. Reverzní útok hrubou silou nebo stříkání hesel

Zde se útočníci pokoušejí kombinovat heslo s různými uživatelskými jmény. Takže uživatelské jméno se liší, heslo zůstává stejné.

WordPress Brute Force Reverzní útok
Kredit: Matthias Held

Výhoda: Jak je popsáno výše, lidé mají tendenci znovu používat svá hesla a brát je co nejnápadněji. To platí i pro tento typ útoku. Kromě toho se jedná o uzamčení (zámek přihlášení pro účet), pokud se pokusíte příliš mnoho pokusů o obejití stejného uživatelského účtu.

Nevýhoda: Tato metoda může vést k mnoha přístupům, ale možná ne k požadovaným účtům.

Dobré metody obrany: Vzhledem k tomu, že se zde obvykle používají i standardní seznamy pro uživatelské účty (pokud je nelze přečíst ), je vhodné zvolit uživatelské jméno s mnoha alfanumerickými znaky a speciálními znaky, které je obtížné uhodnout, stejně jako u hesla.

5. Vycpávka pověření

I zde hrají roli data z minulých porušení (viz Dictionary Attack, bod 2). Vycpávání přihlašovacích údajů nedělá nic jiného, než znovu používá přihlašovací údaje stávajících porušení.

Máte například někde na webu nebo v aplikaci?
yourmail@yourwebsite.com uživatelské jméno a heslo Cola123
a tato data unikla prostřednictvím narušení, útočníci je použijí k přihlášení do jiných služeb a aplikací.

WordPress Brute Force Pověření Stuffing
Kredit: Matthias Held

Tento útok má velmi vysokou šanci na úspěch a je stále populárnější. Proto je také jedním z nejnebezpečnějších v současné době.

Pokud některý z vašich účtů již došlo k porušení, můžete zkontrolovat webové stránky haveibeenpwned.com .

Raidboxes a porušení

Zaškrtnuto při vytváření nového uživatelského účtu Raidboxeszda heslo bylo někdy porušeno (anonymní a nesledovatelné).

Výhoda: I zde vstupuje do hry, že lidé jsou tvorové ze zvyku. Většina lidí používá stejnou e-mailovou adresu a heslo pro mnoho služeb. Zde je také zabráněno uzamčení účtů, jako je reverzní hrubá síla.

Nevýhoda: Při tomto útoku musí být předem vyjasněno, zda osoba, v jejímž účtu chcete použít, také používá službu / webovou stránku / aplikaci. Ale pokud chcete přístup vůbec, je to velmi úspěšná metoda.

Dobré metody obrany: Nikdy nepoužívejte stejné přihlašovací údaje několikrát. Udržujte je jedinečné, ať už se zaregistrujete kdekoli.

Jak mohu chránit své webové stránky WordPress před útoky hrubou silou?

Často čtu a slyším radu: "Používejte silná hesla."

To může být v zásadě pravda, ale s dostatkem času a zdrojů může být jakákoli kombinace přihlášení prolomena hrubou silou, pokud nepoužijete žádná jiná ochranná opatření.

Tyto útoky také znamenají zbytečné zatížení vašeho serveru - a to nejen poškozuje dobu načítání vašich webových stránek, ale také vaši peněženku, když váš hostitel účtuje za provoz. 

Nejlepší metodou je stále nepovolit tyto útoky na prvním místě a zcela zablokovat přístup.

Na úrovni serveru

Akce 1: Blokování neoprávněných požadavků na přihlašovací formulář

Můžete použít kombinaci bezpečného přihlášení, bylo by to prasklé se spoustou času, výpočetním výkonem a bez další ochrany.
Nejúčinnějším způsobem je ve skutečnosti vytvořit ochranu, která zcela blokuje jakýkoli neoprávněný požadavek na přihlašovací formulář WordPress. To znamená, že automatizované a manuální útoky ani neprojdou. To nakonec také chrání váš server.

Existuje několik způsobů, jak to udělat. Ne každá možnost se hodí, záleží na tom, jak technicky zdatní jste a kolik možností nastavení máte, pokud jde o nastavení DNS a serveru. 

Tip: Vytvoření seznamu povolených ip adres


Ochrana: 🔒🔒🔒🔒🔒
Technické úsilí: 🛠️🛠️🛠️

Pokud vždy přistupujete k Internetu se stejnou IP adresou, například proto, že máte vlastní VPN nebo máte pevnou IP adresu ve vaší agentuře, nejbezpečnější metodou je vytvořit seznam povolených adres pro tuto IP adresu na /wp-admin a /wp-login.

Apač

Pokud váš webový server běží na Apache, přidejte tuto část do svého .htaccess:

RewriteEngine na

RewriteCond %{REQUEST_URI} ^(.*)?wp-login\.php(.*)$ [OR]

RewriteCond %{REQUEST_URI} ^(.*)?wp-admin$

RewriteCond %{REMOTE_ADDR} !^123\.123\.123\.123$ 

RewriteRule ^(.*)$ – [R=403,L]


Důležité:
Všimněte si, že v řádcích, které obsahují REMOTE_ADDR, stačí nahradit ČÍSLA příslušnými čísly vaší IP.
Pokud byla například vaše IP adresa 95.217.228.176, řádek by měl znít:

RewriteCond %{REMOTE_ADDR} !^95\.217\.228\.176$

Pro každou povolenou IP adresu přidejte samostatný řádek. Pak restartujte službu Apache, aby se změny projevily.

Moderátor

Vložte tento fragment do serverového bloku souboru virtuálního hostitele. Opět musíte přidat řádek povolení pro každou povolenou adresu IP.

location = /wp-login.php {

     povolit 192.168.1.1; #IP adresu 1 jeden řádek pro každou povolenou adresu IP

     povolit 172.16.1.1; #IP adresa 2

     popírat všechno.

     zahrnují úryvky / fastcgi-php.conf;

     fastcgi_pass unix:/run/php/php7.4-fpm.sock;

     }

Restartujte službu nginx, aby se změny projevily.

Tip: Použijte bránu firewall CDN


Ochrana: 🔒🔒🔒🔒🔒
Technické úsilí: 🛠️

Sítě CDN mohou poskytovat velmi dobrou ochranu konfigurací brány firewall tak, aby spouštěla dotaz captcha před přihlašovacím formulářem.
Zde je návod pro Cloudflare. V bezplatném plánu Cloudflare můžete vytvořit až 5 pravidel.

1. Přihlaste se do cloudflareDashboard , přejděte do části Brána firewall a vytvořte nové pravidlo brány firewall.

2. Údaje pravidla jsou:

WordPress Brute Force CDN Firewall

To je o tom.

Tip: Vytvořte seznam blokovaných přes Fail2Ban


Ochrana: 🔒🔒🔒🔒
Technické úsilí: 🛠️🛠️🛠️🛠️

Pokud nemáte pevnou IP adresu a nepoužíváte CDN, můžete vytvořit seznam blokovaných prostřednictvím Fail2Ban. Dobré návody naleznete zde:

Všimněte si však, že je třeba to přizpůsobit konkrétně adrese URL /wp-login.

Spropitné: Raidboxes Dashboard prospěch

Ochrana: 🔒🔒🔒🔒🔒
Technické úsilí: 🛠️

V kombinaci se zabezpečeným uživatelským jménem a heslem a Raidboxes Jednotné přihlašování.

Raidboxes Zákazníci již mají konfigurovatelný modul Anti Brute Force na každé ze svých instancí.
Spolu s jednotným přihlašováním se jedná o jedno z nejvyšších nastavení zabezpečení, které můžete mít bez jakýchkoli technických potíží.

V samotném WordPressu

Jakmile provedete tyto kroky, budete příliš dobře chráněni před útoky.
Pokud však nemůžete použít toto řešení, protože nemusíte mít přístup k nastavení serveru nebo záznamům DNS pro nastavení CDN , mám pro vás několik dalších kroků.

Opatření 2: Zabránit výčtu uživatelských jmen

Než se obrátíme na bezpečná hesla, začněme na začátku: s uživatelským jménem.

Uživatelská jména představují 50 procent přístupu - a WordPress bohužel velmi usnadňuje čtení uživatelského (přihlašovacího) jména pro všechny vytvořené účty s administrátorskými právy. A automatizované. Tomu můžete zabránit buď tím, že to uděláte sami a zabezpečíte svůj WordPress - nebo instalací následujících pluginů.

Tip: Řešení pomocí pluginů


Ochrana: 🔒🔒🔒
Technické úsilí: 🛠️

Plugin 1: Jednotné přihlašovací chybové zprávy
Tento plugin potlačuje výstup různých chybových zpráv v případě nesprávných pokusů o přihlášení. Protože WordPress v současné době vydává jinou chybovou zprávu, pokud existuje uživatelské jméno nebo ne. Díky tomu je snadné zjistit, zda zadaný uživatel existuje.

Plugin 2: Zastavit výčet uživatelů
Stop User Enumeration dělá přesně to, co říká: Blokuje neoprávněné požadavky na váš WordPress, například číst uživatelská jména prostřednictvím archivu autorů.

Tip: Řešení pomocí funkcí.php

Ochrana: 🔒🔒🔒
Technické úsilí: 🛠️🛠️

Pokud dáváte přednost tomu, abyste převzali kontrolu sami, můžete upravit funkce.php aktivního motivu ( předem si vytvořte zálohu).

Přidejte následující kód:

Kód PHP

// If the user is not authenticated as an admin
if (!is_admin()) {
// RegEx to check if the request went to an “/author=INT” endpoint
if (preg_match('/author=([0-9]*)/i', $_SERVER['QUERY_STRING'])) die();    add_filter('redirect_canonical', 'stop_user_enum', 10, 2);
}
function stop_user_enum($redirect, $request) {
// // RegEx to check if the the request went to an “/author=INT” endpoint but with the permalink furl format
if (preg_match('/\?author=([0-9]*)(\/*)/i', $request)) die(); else return $redirect;
}

Spropitné: Raidboxes Dashboard prospěch


Ochrana: 🔒🔒🔒
Technické úsilí: 🛠️

Raidboxes Zákazníci těží z již hotových řešení v Raidboxes Dashboard. Nezbývá nic jiného, než je najmout.

Opatření 3: "Používejte pouze silná hesla"

Poznámka: Pro Raidboxes Při registraci nového účtu žádáme o věci při přiřazování hesel, které mnohem ztěžují dotazy hrubou silou. To zahrnuje: 

  • Specifikovaná minimální délka
  • Komplexnost
  • zda lze heslo nalézt ve slovníku (anglicky nebo německy)
  • zda obsahuje datum
  • Pokud se někdy vyskytlo známé porušení hesla (anonymní a nesledovatelné)

Hesla jsou nedostatečná: protože jsou uhodnutelná (hrubá síla), čitelná (key logger atd.), čitelná (kvůli žádnému nebo špatnému šifrování / ukládání v datových úložištích), rozpoznávají pouze autorizaci zařízení, ale ne identitu osoby za ním a jsou obvykle obtížně zapamatovatelná (pokud jsou "bezpečná").

Pro druhý problém existují správci hesel, jako jsou 1Password, BitWarden, KeePass a další. 

Pokud jsme v prostředí WordPress, musíme se vyrovnat se skutečností, že musíme používat hesla.

Co je tedy "bezpečné" heslo?

Bezpečné heslo je dlouhé heslo, které má určitý stupeň složitosti. 

Ano, délka hesla je důležitější než složitost. 8místné heslo lze uhodnout za 25 USD během 12 minut , i když se skládá ze spousty speciálních znaků, velkých písmen a čísel.

Následující GIF velmi dobře ilustruje, proč má délka větší váhu než složitost:

WordPress Brute Force Bezpečné heslo
Kredit: Intel Security // Intel.com

Hackeři také nemají pocit, že investují spoustu peněz nebo času do intenzivních výpočtů dlouhých hesel. Proto je pravidlem: čím delší je vaše heslo, tím lépe!

Ale dlouhá a složitá hesla jsou těžko zapamatovatelná!

To je pravda, ale v době správců hesel si stačí zapamatovat dlouhé a složité heslo a zbytek vytvořit a uložit těmito správci.

Pokud máme toto jedno heslo a v nejlepším případě jej občas změníme, jsme na bezpečné straně.

Zde je veřejné tajemství, jak vytvořit dlouhá a složitá hesla a okamžitě si je zapamatovat:

WordPress Brute Force komplexní hesla
Kredit: xkcd.com 

To znamená, že si můžeme vzít tento komiks XKCD k srdci a vytvořit dlouhé heslo podle jednoho z následujících vzorů:

Sedadlo ve vlaku + polní cesta-7Eark

Nebo použijeme celé věty s trochu větší složitostí:

Ich_Mag_Spinat_nur-3 _Mal_am_Tag

Vytvořili jsme poměrně nesmyslnou větu se speciálními znaky a číslem, která je velmi obtížně uhodnutelná a zároveň znatelná (plus body za rým). To se také nazývá přístupové heslo.

Mnoho správců hesel, jako je BitWarden, pro vás vytváří takové nápadné, ale složité přístupové fráze.

Dodatek: Použití zabezpečeného uživatelského jména

Jak bylo uvedeno výše: 50 procent vašeho přístupu je uživatelské jméno.

Pokud útočící osoba zná tuto část přístupu, pak je polovina hotová. Vše, co zbývá, je heslo. Nepoužívejte tedy uživatelská jména, jako je admin, administrator nebo vaše jméno, nepoužívejte název webu nebo domény ani nic, co má co do činění se samotnou stránkou. 

Příklad

Pokud se váš web jmenuje www.ireallylovecats.com, neberte si název, který obsahuje něco o kočkách

Ještě lépe, vezměte stejný trik s heslem shora a použijte dlouhou větu a přidejte složitost jako asfalt / plechovka / také / s / 7 / koření.

Vytvořit heslo na adrese Raidboxes

Vytvořte heslo a uživatelské jméno s maximální délkou (ve WordPressu aktuálně 60 znaků pro uživatelské jméno a 64 znaků pro heslo, viz vlastnosti databáze) a mnoho písmen, číslic a speciálních znaků - pak jednoduše použijte jednotné přihlašování v Dashboard. Bezpečné přihlášení jedním kliknutím.

Opatření 4: Bezpečnostní pluginy

Tip: Všestranné pluginy

Ochrana: 🔒🔒🔒🔒

Technické úsilí: 🛠️🛠️ až do 🛠️🛠️🛠️

Na trhu existuje mnoho bezpečnostních pluginů WordPress, například:

Všechny tyto bezpečnostní pluginy nabízejí vestavěnou ochranu hrubou silou a mnoho dalšího. Pro většinu webových stránek WordPress bude instalace a údržba těchto pluginů postačovat jako ochrana. Stejně tak konfigurace a údržba je minimální.

Pluginy však mají (ve většině případů malou) nevýhodu: zatížení serveru hrubou silou nelze těmito pluginy snížit. Tyto pluginy potřebují proces PHP pro kontrolu, zda se jedná o platný přístup, zda IP není na seznamu blokovaných

To vše zatěžuje server na požadavek. Samozřejmě, stále méně než samotný pokus o přihlášení - a dokud není server skutečně ovlivněn, útok musí nabývat téměř rozměrů D / DOS - ale není třeba ignorovat.

Ale zpět k mnoha výhodám pluginů: Pokud jsou vždy aktuální, i nové útoky jsou rychle detekovány a zmírněny, aniž byste museli podat pomocnou ruku.

Tip: Skrýt přihlášení WP

Ochrana: 🔒

Technické úsilí: 🛠️

"Bezpečnost prostřednictvím temnoty" je fráze pro tuto metodu často zmiňovanou v zabezpečení.

V konečném důsledku to znamená pokusit se zastavit útoky pouhým zamlžením problému. To funguje dobře v několika případech, protože útoky hrubou silou neprocházejí přihlašovacím formulářem, ale používají parametry dotazu ke spuštění pokusů o přihlášení.


Jen proto, že výchozí adresa URL, například /wp-admin nebo /wp-login.* není volatelná, tyto útoky se nezastaví.

Závěr

Doufám, že jsem byl schopen vysvětlit různé typy útoků hrubou silou a dát vám tipy, jak chránit svůj WordPress před nimi v budoucnu. Máte-li jakékoli další dotazy, těšíme se na váš komentář!

Líbil se vám tento článek?

Svou recenzí nám pomůžete zlepšit náš obsah.

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Povinná pole jsou označena *.