Kali Linux disponuje rozsáhlou sadou nástrojů, které jsou neocenitelné při provádění bezpečnostních testů. Zásadní roli v těchto testech, stejně jako při úlohách souvisejících s hesly, hrají seznamy slov.
Nástroj crunch, dostupný v Linuxu, umožňuje generovat různorodé seznamy slov, které lze následně využít při bezpečnostních auditech. Osvojení si práce s tímto nástrojem je významným přínosem pro každého, kdo se zabývá kybernetickou bezpečností. Následující text představuje postup, jak crunch efektivně nainstalovat a používat pro tvorbu seznamů slov v prostředí Kali Linux.
Instalace nástroje crunch v Kali Linux
Většinou je crunch v Kali Linuxu již předinstalován. Nicméně, pokud tomu tak není, můžete jej snadno doinstalovat z oficiálních repozitářů. Před samotnou instalací je doporučeno aktualizovat systémové repozitáře pomocí příkazu:
sudo apt update
Samotnou instalaci nástroje crunch provedete příkazem:
sudo apt install crunch
Jak používat příkaz crunch v Linuxu
Pro získání základních informací o nástroji crunch můžete použít příkaz:
crunch -h
Tento příkaz zobrazí stručný úvod do nástroje a jeho základní syntaxi.
Pro detailnější informace o všech možnostech a funkcích příkazu crunch, je možné využít manuálovou stránku nebo nápovědu v příkazovém řádku, a to pomocí příkazu:
man crunch
Základní syntaxe příkazu crunch
Základní syntaxe příkazu crunch vypadá následovně:
crunch <min> <max> [volby]
Parametr „min“ reprezentuje minimální délku generovaných slov, zatímco „max“ udává jejich maximální délku.
Pokud požadujete slova o stejné délce, nastavte obě hodnoty na shodné číslo. Příkaz crunch nabízí široké spektrum voleb pro generování různých typů seznamů slov.
Chcete-li vytvořit seznam slov obsahující všechny možné kombinace znaků „abc“ o délce tří znaků, použijte:
crunch 3 3 abc
Definování rozsahů znaků pomocí crunch
Seznamy slov je možné přizpůsobit definováním specifických rozsahů znaků, jako jsou například pouze číslice, malá písmena, velká písmena nebo symboly. Pro vygenerování seznamu obsahujícího všechna malá písmena s délkou od čtyř do šesti znaků, použijte:
crunch 4 6 abcdefghijklmnopqrstuvwxyz
Pro vytvoření seznamu slov obsahujícího výhradně číslice, použijte:
crunch 10 10 0123456789
Lze tedy přesně specifikovat délku a charakter generovaných slov.
Uložení výstupu do souboru pomocí crunch
Pomocí volby „-o“ je možné určit výstupní soubor, do kterého bude vygenerovaný seznam slov uložen. Pokud chcete například vytvořit seznam slov tvořený kombinacemi znaků „abc123“, každé o délce čtyř znaků, a uložit jej do souboru „seznam_slov.txt“, použijte:
crunch 4 4 abc123 -o seznam_slov.txt
Použití režimu brute-force v crunch
Volba „-b“ umožňuje definovat znakovou sadu pro generování seznamu slov metodou hrubé síly. V základním režimu crunch generuje slova s kombinacemi znaků z dané sady v rámci stanovené délky slova.
Režim „-b“ je komplexnější, jelikož generuje seznamy slov na základě permutací znaků ze zadané sady, což umožňuje obsáhnout všechny teoreticky možné kombinace.
crunch 6 6 -b 1234567890abcdef -o bruteforce.txt
Tento příkaz vygeneruje seznam slov o délce šesti znaků, obsahující všechny možné kombinace znaků „1234567890abcdef“, a uloží jej do souboru „bruteforce.txt“.
Použití kombinovaného režimu v crunch
Volba „-c“ slouží ke generování kombinací znaků z více sad.
crunch 8 8 -c 1@% -o combinations.txt
Tento příkaz vytvoří seznam slov, který kombinuje znaky ze sad „1“ a „@%“, vygeneruje všechny možné kombinace o délce osmi znaků a uloží je do souboru „combinations.txt“.
Generování seznamů slov s vlastním vzorem
Volba „-t“ umožňuje tvorbu seznamů slov na základě definovaného vzoru.
crunch 8 8 -t MyPass@@@@ -o unique.txt
Tento příkaz generuje seznam slov, kde „@“ představuje proměnné znaky a „MyPass“ je konstantní. Výsledný seznam je uložen do souboru „unique.txt“.
Výsledný seznam bude obsahovat slova, která odpovídají zadanému vzoru. V tomto konkrétním případě bude obsahovat slova začínající „MyPass“, následovaná čtyřmi proměnnými znaky, které mohou být libovolnou kombinací znaků ze zadané znakové sady (pokud není zadána, použije se výchozí, která zahrnuje alfanumerické znaky).
Tato funkce je obzvláště užitečná v případech, kdy je vyžadován seznam slov, který odpovídá specifickému formátu, nebo pro testování hesel, která se řídí předvídatelným vzorem. Je však důležité mít na paměti, že pro generování silných hesel je klíčové vyhýbat se běžným chybám.
Vytváření seznamů slov pomocí slovníku
Volba „-d“ umožňuje importovat externí slovník jako zdroj pro váš seznam slov.
crunch 6 6 -f /usr/share/dict/words -o dictionary-list.txt
V tomto příkladu příkaz vygeneruje seznam slov o délce šesti znaků, přičemž jako zdroj použije soubor slovníku a výstup uloží do souboru „dictionary-list.txt“.
Generování slov bez opakování znaků
Pro generování slov, ve kterých se žádný znak neopakuje (každý znak ve slově je unikátní), lze použít volbu „-p“. Tato volba zaručí, že vygenerovaná slova budou unikátní, eliminací opakujících se znaků v každém slově.
Pro vytvoření seznamu slov o šesti znacích bez opakování znaků, použijte například:
crunch 6 6 -p ABCDEF -o non-repeating-words.txt
Tento příkaz vygeneruje slova složená ze znaků „A“, „B“, „C“, „D“, „E“ a „F“, bez opakování, a uloží je do souboru „non-repeating-words.txt“.
Využití příkazu Crunch s dalšími příkazy Linuxu
V Linuxu existuje mnoho příkazů, které lze kombinovat a vytvářet tak vysoce specifické seznamy slov přesně podle vašich požadavků. Klíčové je znát dostupné možnosti a umět je správně použít!
Příkaz crunch je možné kombinovat s dalšími linuxovými příkazy, jako jsou grep a sort, pro filtrování a řazení seznamů slov, příkaz wc pro počítání prvků nebo příkaz hydra pro provedení útoku slovníkem.