Hvordan knækker man adgangskoder ved hjælp af Hashcat Tool?

Ved etisk hacking og penetrationstestning er kodeordsknækning afgørende for at få adgang til et system eller en server.

I systemer og databaser gemmes adgangskoder sjældent i almindelig tekstform.

Adgangskoder hashes altid, før de gemmes i databasen, og hashen sammenlignes under verifikationsprocessen.

Afhængigt af den anvendte kryptering gemmer forskellige systemer adgangskodehash på forskellige måder. Og hvis du har hashes, kan du nemt knække en hvilken som helst adgangskode.

Og i denne artikel vil vi undersøge, hvordan man knækker adgangskodehash ved hjælp af et praktisk og fremragende Hashcat-kommandolinjeværktøj.

Så lad os komme i gang.

Men før det…

Hvad er en Hash-funktion?

Hashing er processen med at konvertere en normal inputtekst til en tekststreng af fast størrelse ved hjælp af en matematisk funktion, der er kendt som Hash-funktionen. Enhver tekst, uanset længde, kan omdannes til en tilfældig kombination af heltal og alfabeter ved hjælp af en algoritme.

  • Input refererer til den meddelelse, der vil blive hashed.
  • Hash-funktionen er krypteringsalgoritmen som MD5 og SHA-256, der konverterer en streng til en hashværdi.
  • Og endelig er hashværdien resultatet.

Hvad er Hashcat?

Hashcat er det hurtigste værktøj til gendannelse af adgangskode. Det blev designet til at bryde de høje komplekse adgangskoder på kort tid. Og dette værktøj er også i stand til både ordliste- og brute force-angreb.

Hashcat har to varianter. CPU og GPU (Graphical Processing Unit) baseret. Det GPU-baserede værktøj kan knække hasherne på kortere tid end CPU’en. Du kan tjekke GPU-driverkravene på deres officielle hjemmeside.

  Sådan migrerer du din Nest-konto til en Google-konto

Funktioner

  • Gratis og open source
  • Mere end 200 varianter af hash-type kan implementeres.
  • Understøtter multioperativsystemer som Linux, Windows og macOS.
  • Multi-platforme som CPU og GPU understøttelse er tilgængelige.
  • Flere hashes kan knækkes på samme tid.
  • Hex-salt- og hex-charset-filer understøttes sammen med den automatiske ydelsesjustering.
  • Et indbygget benchmarking-system er tilgængeligt.
  • Distribuerede cracking-netværk kan understøttes ved hjælp af overlays.

Og du kan også se andre funktioner fra deres hjemmeside.

Installation af Hashcat

Først skal du sørge for, at dit Linux-system er opdateret med de nyeste programmer og værktøjer.

Til dette skal du åbne en terminal og skrive:

$ sudo apt update && sudo apt upgrade

Hashcat er normalt forudinstalleret i Kali Linux. Du kan finde værktøjet under afsnittet om krakning af adgangskode. Men hvis du skal installere det manuelt i enhver Linux-distribution, skal du skrive følgende kommando i terminalen.

$ sudo apt-get install hashcat

Brug af værktøj

For at komme i gang med Hashcat har vi brug for nogle hash-koder til adgangskode. Hvis du ikke har en hash at knække, laver vi nogle hash først.

For at oprette hashes ved hjælp af kommandolinjen skal du blot følge nedenstående format.

echo -n "input" | algorithm | tr -d "-">>outputfiename

For eksempel kan du se, at jeg forvandlede nogle ord til hash ved hjælp af md5-algoritmen nedenfor.

┌──(root💀kali)-[/home/writer/Desktop]
└─# echo -n "toadmin.dk" | 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

Og outputtet vil blive gemt i crackhash.txt-filen.

  Sådan ser du amerikansk tv uden for USA

Nu vil vi kontrollere hasherne, der blev gemt i den givne fil.

┌──(root💀kali)-[/home/writer/Desktop]
└─# cat crackhash.txt

066d45208667198296e0688629e28b14
482c811da5d5b4bcd497ffeaa98491e3
72a2bc267579aae943326d17e14a8048
2192d208d304b75bcd00b29bc8de5024
caae8dd682acb088ed63e2d492fe1e13

Du kan se, nu har vi nogle hashes at knække. Dette er proceduren til at oprette en hash ved at bruge algoritmen efter eget valg.

Det næste trin er at kickstarte et Hashcat-værktøj på din Linux-maskine. Bare brug følgende kommando for at bruge Hashcat.

$ hashcat --help

Det viser alle de muligheder, du skal vide for at køre værktøjet. På terminalen kan du finde alle angrebs- og hash-tilstande.

Den generelle form for kommandoen er

$ hashcat -a num -m num hashfile wordlistfile

Her repræsenterer ‘num’et et specifikt angreb og hash-tilstand, der skal bruges. Hvis du ruller i terminalen, kan du finde de nøjagtige tal for hvert angreb og hash-tilstand, som for md4 – tallet er 0, og for sha256-algoritmen – tallet er 1740.

Ordlisten jeg vil bruge er rockyou ordliste. Du kan nemt finde den ordliste i stien /usr/share/wordlists.

Du kan endda bruge lokaliseringskommandoen til at finde den ordlistesti.

┌──(root💀kali)-[/home/writer]
└─# locate rockyou.txt

Og endelig, for at knække hasherne ved hjælp af ordlistefilen, brug følgende kommando.

$ hashcat -a 0 -m 0 ./crackhash.txt rockyou.txt

Efter at have kørt denne kommando, kan du få en runtime-fejl ( Token length exception error ), som let kan løses.

  Sådan installeres og konfigureres MariaDB på Ubuntu & CentOS

For at løse dette skal du gemme hver hash separat i en anden fil. Denne fejl opstår, hvis du har en lav CPU- eller GPU-hastighed. Hvis din computer har en højhastighedsprocessor, kan du nemt knække alle hasherne på samme tid som selve en enkelt fil.

Så efter at have rettet fejlen og alt, vil resultatet være sådan her.

┌──(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

I ovenstående resultat, efter ordbogens cachedetaljer, kan du bemærke, at hashen blev knækket, og adgangskoden blev afsløret.

Konklusion

Jeg håber du har fået en bedre forståelse af at bruge Hashcat til at knække adgangskoder.

Du kan også være interesseret i at vide om de forskellige brute-force værktøjer til penetrationstestning og nogle af de bedste pentesting værktøjer.