Jak se bránit DoS útoku u sdíleného webhostingu

DoS (Denial of Service) je druh útoku, kdy někdo vytváří umělou zátěž na vaše stránky a snaží se je takovýmto způsobem znefunkčnit. Ve většině případech pocítíte pomalé načítání webu, následují krátké chybové zprávy končící vracením stavového kódu s číslem 503 – Service Unavailable, tedy služba nedostupná.

U sdíleného webhgostingu nemáte moc možností jak se bránit. Ideální je neprodleně kontaktovat provozovatele a požádat jej o pomoc. U DoS útoku dokáže poměrně rychle zakročit a útočníky zablokovat. Ve většině případů to řeší služba Fail2ban, která zakazuje přístup z IP adres, které překročí určité množství požadavků na stanovené časové období. Dotazy z těchto IP adres server zahazuje a dále neřeší.

503-troll

Jak poznat, že se něco děje

Prvním znakem je znatelně zpomalený web. Podobá se to návštěvám ve špičce. Pokud využíváte monitorování návštěvnosti můžete se zkusit podívat po neobvyklém provozu. Často používané služby postavené na javascriptu (Google Analytics) anebo načítání obrázku vám nic neukáží (TopList). Ideální jsou nástroje, které zpracovávají přímo logy serveru jako AWStats.

Jakmile zpozorujete podivnou aktivitu anebo už došlo k přetížení samotného webu potřebujete mít jistotu. Tu získáte z access log. Jsou v něm údaje z jaké IP adresy jde útok a na kterou konkrétní stránku. Většina hostingů jej automaticky ukládá do adresáře „vedle“ samotného webu. Stáhněte si jej přes FTP a analyzujte.

Jak se proti DoS útoku bránit

Předně je ideální kontaktovat zákaznickou podporu vašeho poskytovatele webhostingu a na celou věc jej upozornit. U silnějšího útoku to už bude vědět a možná vyřeší bez vaší výzvy.

Ovšem u menšího DoS útoku, který jen zpomaluje váš web si často budete muset poradit sami, zvláště pokud váš hoster nemá 24 hodinovou podporu. Možností máte omezené, ale máte.

Zákaz IP adres útočníka

Pokud znáte IP adresy útočníků můžete je zakázat pomocí modifikace souboru .htaccess. Stačí do něj vložit následující řádky:

order allow,deny
deny from 192.168.0.1
deny from 192.168.0.2
deny from 192.168.0.3
allow from all

Samozřejmě použijete IP adresy útočníků. Slabší útoky, kde se na vás jen někdo naštval a zuřivě refreshuje několik prohlížečů naráz to zastaví.

Tato metoda se dá využít i na příliš aktivní roboty různých služeb.

Zablokování cíle útoku

Útočník si za cíl většinou vybírá tu nejslabší stránku. Například výsledek vyhledávání anebo stránku s přihlášením (brute force útok na formuláře se podobají DoS útokům). Pomocí následujícího .htaccess zablokujete přístup k jedné konkrétní stránce.

<Files vyhledavani.php>
deny from all
</Files>

Místo vyhledavani.php zadáte název souboru, který chcete blokovat. Problém je, že jej zablokujete pro všechny, což při déle trvajícím útoku nemusí být zrovna ideální. Pokud máte z access logu informace, které jsou pro útočníka specifické (například prohlížeč, kterým se identifikuje útočníkův skript), můžete příkazy upravit.

<Files vyhledavani.php>
BrowserMatchNoCase ProhlizecUtocnika utocnik 
Order Deny,Allow 
Deny from env=utocnik
</Files>

Zkuste vždy dohledat něco, co být specifické. Většinou útočník používá nějaký program na přetěžování a ten může mít přednastavený například konkrétní starší verzi prohlížeče.

Využití třetí strany

Existují služby, které vás mohou před častými útoky ochránit a to dokonce i pokud se jedná o masivnější variantu zvanou DDoS (Distributed Denial of Service) útok, kdy se proti vašemu webu postaví celý botnet. Samozřejmě záleží na rozsahu. Když se to udělá dobře, tak nemáte šanci a nakonec vás vypne provozovatel hostingu, protože mu přetížíte linky. Většina má 1 Gbitové linky a jednotlivé servery připojené na 100 Mbit.

Ale zpět k ochraně třetí stranou. Vaše spása se nazývá CDN neboli (content delivery network). Jedná se i službu, která snižuje zátěž serveru, pomocí ukládání dat k sobě. Navíc tím, že všechno jde přes ně zároveň dokáže poskytnout i ochranu proti některým útokům včetně DoS a DDoS. Ve většině případech jsou tato řešení placená. Naštěstí existují i osekané verze zdarma. Jedno takové poskytuje CloudFlare. Zaregistrujete se, přidáte svůj web, vše připravíte, nasměřujete na ně DNS záznamy o je hotovo.

Následující útoky už půjdou přes ně a vy můžete jen doufat že budou zastaveny. Navíc získáte pár hezkých výhod pro váš web spojených s užívání CDN – například monitoring síťového provozu.

Využití CDN má však několik nevýhod. Jednou z nich je, že všechen váš provoz je sledován třetí stranou, takže pokud máte nějaká citlivá data, měl by být šifrován. Bohužel podpora SSL je podporována až u varianty CloudFlare Pro, která je za 20 USD měsíc. Dále musíte počítat s tím, že bude vše o pár desítek milisekund pomalejší.

 

Share Button

Tento článek byl byl přečten 5704 krát

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *