V dešifrování a počítačové bezpečnosti je prolomení hesla (anglicky: cracking hesla ) proces získávání hesel z dat uložených nebo přenášených počítačovým systémem. Běžným přístupem, známým jako útok hrubou silou , je vyzkoušet několik potenciálních hesel a porovnat jejich kryptografický hash s kryptografickým hashem požadovaného hesla.
Účelem prolomení hesla je
Existuje mnoho prolomení hesla software tam , nejpopulárnější jsou Aircrack , Cain & Abel , John the Ripper , Ophcrack , Konboot , Hashcat (en) , Hydra , Dave Grohl (en) a ElcomSoft (en) .
Mnoho forenzních počítačových programů obsahuje funkci prolomení hesla. Většina tohoto softwaru používá kombinaci strategií, včetně útoků hrubou silou a slovníkových útoků .
Dostupnost výpočetního výkonu a snadno použitelný automatizovaný software pro prolomení hesel umožňuje jejich použití skriptovými dětmi .
Doba potřebná k prolomení hesla závisí na
Většina metod prolomení hesla vyžaduje, aby počítač vygeneroval mnoho kandidátských hesel a ověřil je jednotlivě. Jednoduchou metodou je útok hrubou silou , při kterém počítač zkouší všechny možné obměny znaků, dokud nenajde heslo.
Rychlejší metody, jako jsou slovníky , se pokoušejí snížit počet pokusů potřebných k prolomení hesla. Tyto metody se obecně použijí před hrubou silou. Zvýšení síly hesla zvyšuje počet kandidátských hesel, která mají být zkontrolována na porušení hesla, a snižuje pravděpodobnost, že heslo bude nalezeno v prolomeném slovníku.
Čas potřebný k prolomení hesla pomocí počítačových programů závisí také na počtu hesel, která lze ověřit za sekundu. Pokud má útočník kryptografický hash cílového hesla, může být počet kontrol za sekundu řádově miliarda, protože je možný útok offline. Další situací, kdy je možné rychle otestovat velký počet hesel, je situace, kdy je heslo použito k vytvoření kryptografického klíče . V tomto případě může útočník rychle ověřit, zda heslo kandidáta úspěšně dekóduje šifrovaná data. Pokud útočník nemá ani jednu z předchozích dvou pomůcek, počet ověřování za sekundu závisí na ověřovacím softwaru, který omezuje frekvenci, s níž lze heslo ověřit, nebo na dobu zpracování hesla, pomocí CAPTCHA nebo vynucených zámků po určitý počet neúspěšných pokusů.
U některých typů hash hesel mohou běžné stolní počítače testovat více než sto milionů hesel za sekundu pomocí crackovacích nástrojů běžících na standardním procesoru a miliardy hesel za sekundu pomocí nástrojů založených na grafickém procesoru . Počet potenciálně testovaných hesel za sekundu je vysoce závislý na kryptografické hashovací funkci používané systémem ke generování hashů hesel. Vhodná hashovací funkce, jako je bcrypt , je řádově výhodnější než naivní funkce, jako je jednoduchá MD5 nebo SHA . Podle Národního institutu pro standardy a technologie (NIST) má osmimístné heslo obsahující čísla, velká písmena, malá písmena a symboly a kromě běžně používaných hesel a slov s rozbitím slovník sílu 30 bitů. Jelikož 2 30 představuje pouze miliardu permutací, bude takové heslo prolomeno za několik sekund, pokud je hash funkce naivní. Když jsou běžné pracovní plochy kombinovány v úsilí o prolomení, jak to lze udělat u botnetů , možnosti prolomení hesla se výrazně zvýší. V roce 2002 se společnosti Distributed.net podařilo do čtyř let najít 64bitový klíč RC5 , který seskupil více než 300 000 různých počítačů najednou a testoval průměrně více než 12 miliard klíčů za sekundu.
Tyto GPU může urychlit prolomení hesla o faktor 50 až 100 přes standardní procesory. Od roku 2011 si komerční produkty nárokují schopnost testovat až 2 800 000 000 hesel za sekundu na standardním stolním počítači pomocí špičkového grafického procesoru. Takové zařízení dokáže prolomit 10 písmenné heslo s jedinou přestávkou za jeden den. Práce může být rozdělena do mnoha počítačů pro další zrychlení úměrné počtu dostupných počítačů.
Navzdory svým schopnostem jsou stolní procesory při prolomení hesel pomalejší než stroje navržené speciálně pro tento účel. V roce 1998 společnost Electronic Frontier Foundation (EFF) vyvinula jednoúčelové zařízení pro prolomení hesel pomocí ASIC , na rozdíl od procesorů pro všeobecné účely. Jejich stroj Deep Crack zlomil 56bitový klíč DES za 56 hodin a testoval přes 90 miliard klíčů za sekundu. V roce 2010 vyvinul Georgia Tech Research Institute (en) metodu používání GPGPU pro prolomení hesel. Získané výsledky je vedly k doporučení minimální délky 12 znaků pro zabezpečení hesel.
Nejlepší metodou, jak zabránit prolomení hesla, je zajistit, aby útočníci neměli přístup ani k hašovanému heslu. Například v operačním systému Unix byla hašovaná hesla původně uložena ve veřejně přístupném souboru / etc / passwd. Nevýhody jsou na moderních systémech Unix (a podobných) uloženy v souboru hesel shadow / etc / shadow, který je přístupný pouze programům, které mají oprávnění pro správce systému ). To uživateli se zlými úmysly ztěžuje získání hashovaných hesel, ale i přes tuto ochranu bylo odcizeno mnoho souborů hash hesel. Dalším efektivním přístupem je přidružení tajného klíče pro konkrétní web k hash hesla. Tím se zabrání obnovení hesla, i když dojde ke krádeži hodnot hash.
Existují další techniky pro získání hesla, například: