Generování hesel
Zdravím. Dnes si ukážeme, jak si vygenerovat wordlist s heslama v jazyce C.
Co je to wordlist?
Wordlist je nějaký soubor, plný třeba hesel, který se používá pomocí nějakého software k prolomení hesla. Možná už jste viděli nějaký wordlist, v kterém jsou všemožné kombinace hesel pod sebou, aby je mohl nějaký ten software načíst a zkoušet je. Teď si ukážeme, jak jednoduše si takový wordlist můžeme udělat sami v jazyce C.
Co k tomu budeme potřebovat?
Bude nám bohatě stačit knihovna stdio, stdlib pro vstup/výstup a
ukládání do souboru + jedna proměnná!
Jak jistě víte, mnoho lidí používá čtyřmístná hesla, nehledě na to, že třeba i na platební kartu máte čtyřmístný PIN kód. Takovýto wordlist se v jazyce C dá napsat na pár řádků.
#include <stdio.h> #include <stdlib.h> int main(int i) { FILE *soubor; soubor = fopen("Hesla.txt","a+"); for(i = 0; i < 10000; i++) { fprintf(soubor,"%04d\n",i); } return 0; }
Vytvoříme si nějaký soubor, v našem případě je to soubor Hesla.txt. A poté pomocí cyklu zapisujeme čísla do souboru. "%04d%\n" znamená, že to bude psát čísla ve formátu čtyř míst, například : 0001,9951 a odřádkuje. V souboru poté vidíme opravdu všechny možné kombinace čísel 0 až 9999. Vualá a máme všechna čtyřmístná hesla na světě. Asi si říkáte, "ale co když chci osmimístná hesla?" Odpověď je jednoduchá, místo "%04d\n" napíšeme "%08d\n" a místo 10000 v našem cyklu dáme největší možné osmimístné číslo tedy 100 000 000 tedy :
#include <stdio.h> #include <stdlib.h> int main(int i) { FILE *soubor; soubor = fopen("Hesla.txt","a+"); for(i = 0; i < 100000000; i++) { fprintf(soubor,"%08d\n",i); } return 0; }
A vypíší se nám všechny možné kombinace do souboru Hesla.txt. Ovšem
to už je trošičku drastické, protože ten soubor už bude mít nějaký ten
MB možná i GB
. No a výsledný wordlist už
můžeme hodit do našeho software pro zkoušení hesel, třeba Brutus
nebo si napsat vlastní aplikaci
pro přihlašování se na nějaký server.