Útoky hrubou silou

Útoky hrubou silou provádějí hackeři, kteří se snaží prolomit heslo jednoduchým zkoušením různých kombinací znaků v rychlém sledu. Algoritmus je velmi jednoduchý a omezuje se na vyzkoušení co největšího počtu kombinací znaků, proto se mu také říká "vyčerpávající hledání". Útočník obvykle používá výkonný počítač, který za sekundu provede velké množství výpočtů, a proto může vyzkoušet vysoký počet kombinací v co nejkratším čase.

Tato metoda se v praxi často úspěšně používá, protože mnoho uživatelů používá krátká hesla, která se často skládají pouze z písmen abecedy, což výrazně snižuje počet možných kombinací a usnadňuje hádání.

Dešifrování hesel

Projekt RC5 organizace Distributed.net ukazuje, jak rychle lze hesla dešifrovat. Cílem projektu je dešifrování zprávy, která byla zašifrována 72bitovým klíčem. Za tímto účelem jsou vyzkoušeny všechny možné klíče, dokud není nalezen vhodný klíč. Vzhledem k tomu, že několik uživatelů dává k dispozici své počítačové kapacity pro tento projekt, lze v současné době (k 8. květnu 2012) vygenerovat více než 800 miliard klíčů za sekundu. Starší projekty této organizace vyluštily 56bitový klíč během 250 dnů a 64bitový klíč během 1757 dnů.

Kombinace a délka hesla

Některé příklady výpočtu ilustrují interakci délky a použitých znaků pro bezpečnost hesla. V příkladech výpočtu se předpokládá generování 2 miliard klíčů za sekundu, protože to přibližně odpovídá rychlosti velmi silného jediného počítače.

Při vytváření hesla jsou obvykle k dispozici následující znaky:

  • Čísla (10 různých: 0-9)
  • Písmena (52 různých: A-Z a a-z)
  • Speciální znaky (32 různých).

Počet možných kombinací se vypočítá podle následujícího vzorce:

Možné kombinace = možný početznakůDélka hesla

Výsledkem jsou následující příklady výpočtu bez zohlednění dalších faktorů, jako jsou slovníkové útoky:

Heslo se skládá z Možné kombinace Doba potřebná k dešifrování

5 znaků
(3 malá písmena,
2 číslice)

365= 60,466,176

60,466,176 /
2 000 000 000 =
0,03 sekundy

7 znaků
(1 velké písmeno,
6 malých písmen)

527= 1,028,071,702,528

1,028,071,702,528 /
2,000,000,000 =
514 sekund =
přibližně 9 minut

8 znaků
(4 malá písmena,
2 speciální znaky,
2 číslice)

688= 457,163,239,653,376

457,163,239,653,376 /
2,000,000,000 =
228 581 sekund =
přibližně 2,6 dne

9 znaků
(2 velká písmena,
3 malá písmena,
2 číslice,
2 speciální znaky)

949= 572,994,802,228,616,704

572,994,802,228,616,704 /
2,000,000,000 =
286 497 401 sekund =
přibližně 9,1 roku

12 znaků
(3 velká písmena,
4 malá písmena,
3 speciální znaky,
2 číslice)

9412= 475,920,314,814,253,376,475,136

475,920,314,814,253,376,475,136 /
2,000,000,000 =
237 960 157 407 127 sekund =
přibližně 7,5 milionu let

Velmi zřetelně je vidět vliv délky hesla a použití různých skupin znaků na bezpečnost hesla.

Ochrana proti útokům hrubou silou

Jediný způsob, jak se bránit proti útokům hrubou silou, je používat složité hlavní heslo, které je dostatečně dlouhé a skládá se z kombinace písmen, speciálních znaků, číslic a velkých a malých písmen. Čím složitější a delší je vaše heslo, tím menší je pravděpodobnost, že použitý software "uhodne" vámi zvolenou kombinaci náhodou, jak je vidět z výše uvedených příkladů výpočtu.

Při vytváření nového hesla v aplikaci Password Depot nebo při jeho automatickém generování pomocí generátoru hesel uvidíte, jak dlouho by trvalo prolomení tohoto hesla. Password Depot bere v úvahu nejen výše uvedené faktory, jako je počet znaků, ale také další zranitelnosti, například zranitelnost slovníkovými útoky.

Dalším způsobem, jak ztížit útoky hrubou silou, je prodloužit dobu mezi dvěma pokusy o přihlášení (po nesprávném zadání hesla). V důsledku toho může být hackerův výkonný počítač zpomalen navzdory mnoha výpočtům za sekundu, kterých by teoreticky byl schopen. Proto se v aplikaci Password Depot dialogové okno hlavního hesla při zadání nesprávného hlavního hesla na několik sekund uzamkne. S rostoucí četností zadávání chybných hesel se prodlužuje i tato čekací doba.