Az etikus hackelés és behatolási tesztelés során a jelszó feltörése döntő fontosságú a rendszerhez vagy szerverhez való hozzáférésben.
A rendszerekben és adatbázisokban a jelszavakat ritkán mentik egyszerű szöveges formában.
A jelszavakat az adatbázisban való tárolás előtt mindig kivonatolja, és az ellenőrzési folyamat során összehasonlítja a kivonatot.
Az alkalmazott titkosítástól függően a különböző rendszerek különböző módon tárolják a jelszókivonatokat. Ha pedig hash-ek vannak, könnyedén feltörhet bármilyen jelszót.
Ebben a cikkben pedig megvizsgáljuk, hogyan lehet feltörni a jelszókivonatokat egy praktikus és kiváló Hashcat parancssori eszköz segítségével.
Tehát kezdjük.
De előtte…
Tartalomjegyzék
Mi az a hash függvény?
A kivonatolás az a folyamat, amelynek során a normál bemeneti szöveget rögzített méretű szöveggé alakítják valamilyen matematikai függvény segítségével, amelyet hash-függvénynek neveznek. Bármely szöveg, hosszától függetlenül, egész számok és ábécé véletlenszerű kombinációjává alakítható egy algoritmus segítségével.
- A bemenet a kivonatolt üzenetre vonatkozik.
- A hash függvény egy olyan titkosítási algoritmus, mint az MD5 és az SHA-256, amely egy karakterláncot hash értékké alakít át.
- És végül a hash érték az eredmény.
Mi az a Hashcat?
Hashcat a leggyorsabb jelszó-helyreállító eszköz. Úgy tervezték, hogy rövid időn belül megtörje a bonyolult jelszavakat. És ez az eszköz képes mind a wordlist, mind a brute force támadásokra.
A Hashcatnak két változata van. CPU és GPU (Graphical Processing Unit) alapú. A GPU-alapú eszköz rövidebb idő alatt képes feltörni a hash-eket, mint a CPU. A GPU-illesztőprogram követelményeit a hivatalos webhelyükön ellenőrizheti.
Jellemzők
- Ingyenes és nyílt forráskódú
- Több mint 200 hash típusú variáció valósítható meg.
- Támogatja a több operációs rendszert, mint például a Linux, a Windows és a macOS.
- Több platform, például CPU és GPU támogatás elérhető.
- Egyszerre több hash is feltörhető.
- A hexa-só és a hex-karakterkészlet fájlok, valamint az automatikus teljesítményhangolás támogatott.
- Beépített benchmarking rendszer áll rendelkezésre.
- Az elosztott feltörő hálózatok átfedések segítségével támogathatók.
És más funkciókat is láthat a webhelyükről.
A Hashcat telepítése
Először is győződjön meg arról, hogy Linux rendszere naprakész a legújabb programokkal és eszközökkel.
Ehhez nyisson meg egy terminált, és írja be:
$ sudo apt update && sudo apt upgrade
A Hashcat általában előre telepítve van a Kali Linuxban. Az eszközt a jelszó feltörése rész alatt találja meg. De ha manuálisan kell telepítenie bármely Linux disztribúcióban, írja be a következő parancsot a terminálba.
$ sudo apt-get install hashcat
Eszközhasználat
A Hashcat használatának megkezdéséhez szükségünk lesz néhány jelszókivonatra. Ha nincs feltörnivalója, akkor először létrehozunk néhány hash-t.
Ha kivonatokat szeretne létrehozni a parancssor használatával, kövesse az alábbi formátumot.
echo -n "input" | algorithm | tr -d "-">>outputfiename
Például láthatja, hogy néhány szót hash-ekké alakítottam az alábbi md5 algoritmus segítségével.
┌──(root💀kali)-[/home/writer/Desktop] └─# echo -n "etoppc.com" | md5sum | tr -d "-">>crackhash.txt echo -n "password123" | md5sum | tr -d "-">>crackhash.txt echo -n "Webtechnology" | md5sum | tr -d "-">>crackhash.txt echo -n "microsoftteams" | md5sum | tr -d "-">>crackhash.txt echo -n "recyclebin" | md5sum | tr -d "-">>crackhash.txt
A kimenet pedig a crackhash.txt fájlba kerül.
Most ellenőrizzük az adott fájlba mentett hash-eket.
┌──(root💀kali)-[/home/writer/Desktop] └─# cat crackhash.txt 066d45208667198296e0688629e28b14 482c811da5d5b4bcd497ffeaa98491e3 72a2bc267579aae943326d17e14a8048 2192d208d304b75bcd00b29bc8de5024 caae8dd682acb088ed63e2d492fe1e13
Láthatja, most van néhány feltörnivalónk. Ez az eljárás a hash létrehozásához az Ön által választott algoritmus használatával.
A következő lépés egy Hashcat eszköz elindítása a Linux-gépen. Csak használja a következő parancsot a Hashcat használatához.
$ hashcat --help
Megjelenik az összes lehetőség, amelyet tudnia kell az eszköz futtatásához. A terminálon megtalálja az összes támadási és hash módot.
A parancs általános formája az
$ hashcat -a num -m num hashfile wordlistfile
Itt a „szám” egy adott támadást és hash módot jelöl. Ha görgetjük a terminált, minden támadáshoz és hash módhoz megtalálhatjuk a pontos számokat, például az md4-nél – a szám 0, az sha256 algoritmusnál pedig – az 1740.
A szólista, amit használni fogok, a rockyou szólista. Könnyen megtalálhatja ezt a szólistát a /usr/share/wordlists útvonalon.
Még a locate parancsot is használhatja a szólista elérési útjának megtalálásához.
┌──(root💀kali)-[/home/writer] └─# locate rockyou.txt
Végül pedig a kivonatok feltöréséhez a szólista fájl használatával használja a következő parancsot.
$ hashcat -a 0 -m 0 ./crackhash.txt rockyou.txt
A parancs futtatása után futásidejű hibaüzenetet kaphat (Token length kivétel hiba), amely könnyen megoldható.
Ennek megoldásához mentse az egyes hash-eket külön-külön egy másik fájlba. Ez a hiba akkor fordul elő, ha alacsony a CPU vagy a GPU sebessége. Ha számítógépe nagy sebességű processzorral rendelkezik, könnyedén feltörheti az összes hash-t egyidejűleg, egyetlen fájlként.
Tehát a hiba és minden kijavítása után az eredmény ilyen lesz.
┌──(root💀kali)-[/home/writer/Desktop] └─# hashcat -a 0 -m 0 hashcrack.txt rockyou.txt hashcat (v6.1.1) starting... OpenCL API (OpenCL 1.2 pocl 1.6, None+Asserts, LLVM 9.0.1, RELOC, SLEEF, DISTRO, POCL_DEBUG) - Platform #1 [The pocl project] ============================================================================================================================= * Device #1: pthread-Intel(R) Core(TM) i5-8265U CPU @ 1.60GHz, 2403/2467 MB (1024 MB allocatable), 4MCU Minimum password length supported by kernel: 0 Maximum password length supported by kernel: 256 Hashes: 1 digests; 1 unique digests, 1 unique salts Bitmaps: 16 bits, 65536 entries, 0x0000ffff mask, 262144 bytes, 5/13 rotates Rules: 1 Dictionary cache built: * Filename..: rockyou.txt * Passwords.: 14344405 * Bytes.....: 139921671 * Keyspace..: 14344398 * Runtime...: 1 sec 8276b0e763d7c9044d255e025fe0c212: [email protected] Session..........: hashcat Status...........: Cracked Hash.Name........: MD5 Hash.Target......: 8276b0e763d7c9044d255e025fe0c212 Time.Started.....: Sun Dec 12 08:06:15 2021 (0 secs) Time.Estimated...: Sun Dec 12 08:06:15 2021 (0 secs) Guess.Base.......: File (rockyou.txt) Guess.Queue......: 1/1 (100.00%) Speed.#1.........: 1059.6 kH/s (0.52ms) @ Accel:1024 Loops:1 Thr:1 Vec:8 Recovered........: 1/1 (100.00%) Digests Progress.........: 4096/14344398 (0.03%) Rejected.........: 0/4096 (0.00%) Restore.Point....: 0/14344398 (0.00%) Restore.Sub.#1...: Salt:0 Amplifier:0-1 Iteration:0-1 Candidates.#1....: 123456 -> pampam Started: Sun Dec 12 08:06:13 2021 Stopped: Sun Dec 12 08:06:16 2021
A fenti eredményben a szótár gyorsítótár adatai után észrevehető, hogy a hash feltört, és a jelszó kiderült.
Következtetés
Remélem, jobban megértette a Hashcat használatát jelszavak feltörésére.
Érdekelheti a behatolástesztek különféle nyers erővel történő eszközeit és a legjobb tesztelési eszközöket is.