Ești începător în domeniul securității cibernetice? Vrei să fii pe partea sa ofensivă? Ca echipă roșie, înveți multe tehnici și tactici care te ajută să desfășori activitățile lanțului cibernetic de distrugere. O astfel de sarcină este escaladarea privilegiilor, în care obțineți hash-uri de parole.
hashcat este un instrument puternic și versatil care forțează în mod brut acreditările stocate folosind hashuri cunoscute prin efectuarea diferitelor moduri de atacuri. Articolul acoperă acest utilitar de spargere a parolelor folosit de testerii de penetrare, administratorii de sistem, spioni sau hackeri pentru a găsi parole.
Ce sunt hashe-urile?
Hashing este o funcție matematică unidirecțională sau un identificator unic care returnează o ieșire cu lungime fixă, indiferent de dimensiunea/lungimea intrării. Prin urmare, este un proces ireversibil care nu necesită o cheie ca în criptare pentru a descifra valoarea hash.
Cel mai obișnuit scop al hashing-ului este de a asigura integritatea datelor de la falsificare în timpul transmiterii datelor. Proprietățile hashingului sunt următoarele:
- Oferă calcul rapid
- Algoritmii buni evită aceeași ieșire pentru intrări diferite
- Au o natură deterministă
- Modificările mici ale intrării influențează semnificativ valoarea hash de ieșire
De ce să folosiți hashcat?
hashcat este un utilitar multithreaded care vă permite să configurați numărul de fire și să limitați execuția în funcție de prioritate. Acceptă peste 300 de algoritmi de hashing, cum ar fi MD4, MD5, SHA1, SHA512, bcrypt, HMAC-SHA512, NTLM, MySQL, WHIRLPOOL, printre multe altele. Este disponibil pentru toate tipurile de sisteme de operare, inclusiv Windows, Linux, Unix și BSD.
Modalități de spargere a hashurilor de parolă folosind hashcat
hashcat oferă o varietate de moduri de atac (combinator, bazat pe reguli, atacuri cu forță brută, hibrid și dicționar) pentru a oferi o acoperire mai bună. Iată o explicație a unor atacuri pe care hashcat le folosește pentru a sparge parolele cu hash:
- Atac cu forță brută: Un atac cu forță brută utilizează toate combinațiile de caractere posibile pentru a determina parola exactă. Cu toate acestea, are o limitare a lungimii maxime a parolei și a numărului de caractere. Mai mult, un nivel avansat de atac cu forță brută poate, de asemenea, optimiza timpul prin ipoteze de complexitate. De exemplu, o tehnică avansată de forță brută poate presupune că primul caracter este mai probabil să fie majuscule, iar cifrele sunt cel mai probabil să apară la sfârșitul unei parole etc.
- Dicţionar attack: Un atac de dicționar utilizează o listă precalculată de parole în funcție de informațiile adunate în jurul țintei sau de un model observat între utilizatori. Prin urmare, este nevoie de unele parole cele mai frecvent utilizate și le adaugă unele permutări pentru a crește domeniul de aplicare.
- Atacul hibrid: Hybrid este o combinație a atacurilor discutate mai sus, deoarece verifică dacă parola este „crackabilă” printr-un atac de dicționar și trece la tehnica forței brute, dacă nu este posibil.
Cum se instalează hashcat pe Linux
hashcat este disponibil implicit în Kali Linux. Pentru a-l instala pe Ubuntu și Debian:
sudo apt-get update
sudo apt-get install hashcat
Pe Fedora, CentOS și alte distribuții bazate pe RHEL:
actualizare sudo dnf
sudo dnf install hashcat
Pentru a instala hashcat pe Arch Linux:
sudo pacman -Syu
sudo pacman -S hashcat
Post-instalare, utilizați comanda de ajutor pentru a enumera toate opțiunile disponibile:
hashcat --ajutor
Unele opțiuni hashcat și descrierea lor sunt după cum urmează:
Opțiuni | Descriere |
---|---|
-m | Tipul de hash cu o valoare implicită de 0, adică MD5 hash |
-A | Tip de atac, 0 pentru un atac direct, 2 pentru combinație și 3 pentru un atac cu forță brută |
-o | Stochează parola spartă într-un fișier de ieșire |
listă de cuvinte | Necesită o cale către lista de cuvinte a parolelor pentru a se potrivi și a sparge hashurile |
Notă: Înainte de a lucra cu hashcat, asigurați-vă că sistemul dumneavoastră respectă cerințele de funcționare hardware. Verificați site oficial pentru mai multe detalii.
Crack hash-uri din fișierul /etc/shadow din Linux
The fișierul /etc/shadow stochează valorile eronate sau hashing ale tuturor parolelor utilizatorului pe Linux. Este un fișier critic cu permisiuni de acces stricte; este și trebuie să fie accesibil doar de către contul root.
Prin urmare, dacă dați peste un lizibil /etc/shadow fișier prin orice cont de utilizator obișnuit, puteți obține valoarea hash a contului root și puteți sparge hash-ul parolei folosind utilitarul hashcat.
În scopuri demonstrative, treceți la contul root și creați un nou cont de utilizatoralice pentru a înțelege cum funcționează hashcat:
sudo su
sudo useradd -c "Alice" alice
Creați o parolă folosind comanda passwd:
passwd alice
Verificați valoarea parolei hashing din interiorul /etc/shadow fișier după cum urmează:
cut -d: -f1 /etc/shadow | grep alice
Ieșire:
alice:$y$j9T$TANXgpk59y8r3jgPbDl/w/$UqiK6yahwqfyqhcegWLa1.z64TyePP5.VQpUnLqI3VD: 19023:0:99999:7::
Hash-ul din ieșirea de mai sus începe de la "alice:„în continuare; salvați-l într-un fișier nou hash.txt.
Poti sa te duci la site-ul hashcat pentru a identifica tipul funcției hash și valoarea de referință asociată. Modul hash SHA512 este, în general, identificat de $6$ termen și are o valoare de referință de 1800.
De asemenea, puteți căuta metoda de criptare în interiorul login.defs fişier:
grep ENCRYPT_METHOD /etc/login.defs
Apoi, verificați valoarea asociată a funcției de hashing folosind comanda hashcat, după cum urmează:
hashcat -h | grep sha512
Acum utilizați utilitarul hashcat pentru a sparge hash-ul cu -A steag pentru modul de atac, -m flag pentru valoarea de referință hash (deoarece nu acceptă numele funcției hash), hash.txt calea fișierului și o cale către lista de cuvinte rockyou.txt.
hashcat -m 1800 -a 0 hash.txt /usr/share/wordlists/rockyou.txt
Ieșire:
.
.
$y$j9T$TANXgpk59y8r3jgPbDl/w/$UqiK6yahwqfyqhcegWLa1.z64TyePP5.VQpUnLqI3VD: 12345
.
.
Notă: Pe Kali Linux, rockyou.txt fișierul este disponibil implicit în interiorul /usr/share/wordlists director. De asemenea, puteți utiliza alte liste de cuvinte rulând următoarea comandă în terminal:
localiza liste de cuvinte | Mai puțin
Ieșire:
Cu toate acestea, pentru alte distribuții Linux, va trebui să descărcați rockyou.txt fișier din depozitul GitHub, după cum urmează:
wget https://github.com/danielmiessler/SecLists/blob/master/Passwords/Leaked-Databases/rockyou-20.txt
Schimbarea parolelor pe Linux cu hashcat
Un sistem de autentificare bine construit nu stochează parolele utilizatorului în text simplu și vizibil, deoarece pot cauza vulnerabilități de securitate. Un mecanism de autentificare mai bun stochează parolele ca hash-uri în fișiere sigure și inaccesibile. Cu toate acestea, un dispozitiv de spargere a parolelor, cum ar fi hashcat, este conceput pentru a descifra sau a ghici parolele folosind diferite moduri de atac.
Acest articol detaliază modalitățile pe care un tester de penetrare trebuie să știe pentru a sparge parolele cu hash folosind utilitarul hashcat. Ca echipă roșie, este necesar să înțelegeți tehnicile pe care un atacator le poate folosi pentru a compromite controalele de autentificare și pentru a oferi linii directoare pentru acoperirea lacunelor sistemului.
Ignorați verificarea hash de fișiere pe propria răspundere? Utilizați aceste instrumente pentru a verifica că fișierul pe care îl descărcați este sigur.
Citiți în continuare
- Linux
- Securitate
- Securitate
- Aplicații Linux
- Comenzi Linux
- Hacking etic
- Hacking
Rumaisa este un scriitor independent la MUO. Ea a purtat multe pălării, de la un matematician la un pasionat de securitate a informațiilor, iar acum lucrează ca analist SOC. Interesele ei includ citirea și scrierea despre noile tehnologii, distribuțiile Linux și orice despre securitatea informațiilor.
Aboneaza-te la newsletter-ul nostru
Alăturați-vă buletinului nostru informativ pentru sfaturi tehnice, recenzii, cărți electronice gratuite și oferte exclusive!
Click aici pentru a te abona