Poznámka s Michalem Kolesou neměla vyznít takhle.
Ten člověk měl velmi podobné dotazy, byť o něco nižší úrovně. Bral jsem ho vcelku kladně, protože se snažil.Proti DDoS se bránit lze a nelze. Ten rozpor vyplývá z principu útoku:Vy poskytujete službu, a potřebujete obsloužit zákazníky.
Útočník se snaží vypadat a chovat se jako zákazník, jenom je jich mnoho.Jak mezi 10M IP adresami poznáte (~95%) těch 10k správných? Základní metoda je silou, tzn. budete schopen obsloužit 10M dlouhodobě.Když to zúžím (a velmi zjednoduším) na web, ten běží na TCP a uzavírá při každém novém uživateli tzv. TCP handshake. To je relativně náročná operace, kdy je potřeba vygenerovat nějaká čísla a rezervovat pro toto spojení nějakou tu paměť na serveru a v normálním případě i klientovi. Jenže klient je fake a okamžitě spojení zahodí a zahájí další. Server si pamatuje předchozí, a vytváří další. U některých webserverů je tento čas, po který se čeká, nastaven třeba na 5 minut. Takže vy generujete několik takových za 1 s z jedné stanice, zatímco server je zapomíná po 300s.Vás napadlo vcelku logické řešení, vsadit před server firewall. Jenže jak ten firewall zjistí, co má blokovat? Na webu root.cz se třeba dočtete z jejich vlastní zkušenosti, že to lze například pomocí lokace IP (je zhruba známo, kterému kontinentu/státu atd. IP adresa patří). Například povolíte IP pouze z ČR, nebo bude útok z jednoho místa, které dovede identifikovat a zablokovat.V prvním případě jste se zbavil například uživatelů z ČR, kteří jsou v zahraničí, nebo mají trochu exotičtější připojení, v tom druhém je to trochu lepší.
Nakonec je tu ještě jedna ošklivá věc - váš zákazník a člen botnetu může být jeden a ten samý PC...Útočník se brání, a používá botnety rozšířené všude po světě ve všech sítích složené z klasických PC nic netušících uživatelů. Auch. To jen tak nerozeznáte.A pak jste navrhnul ještě jedno slušné řešení, tzn. identifikovat špatné IP adresy podle počtu jejich spojení od začátku útoku. 160Gb/s pouze na TCP handshake je strašně moc paketů, to vám běžná databáze nedá. Jak jsem psal, řešení na toto existují, ale jsou drahá (proti útoku z článku 10M Kč+).U ostatních služeb jsou problémy veskrze podobné.Jediná věc pak hovoří pro vás jako oběť - ten útok je strašně vzácný a tím drahý. Botnetů moc není, navíc nesmí být příliš nápadné, takže útočit někam jen tak pro nic za nic se může pěkně vymstít (ztráta botnetu). Jako správce sítě stejně nestihnete reagovat ani během hodiny (ono to asi teoreticky možné je, ale v praxi jsem to neviděl), a takový útok je třeba na jedno odpoledne, kdy se celou dobu snažíte najít algoritmus podobného typu, jaký jste popsal, a jakmile ho najdete, útočník toho nechá, počká si den, a zaútočí zcela jinou metodou, zase v době, kdy máte nejvíc návštěvníků. Vy vidíte dostupnost 23 hodin denně, ale je to třeba jenom 30% uživatelů...