Biblioteca de site rus-linux.net
Producția de bitcoins a rămas în trecut. Utilizați un GPU scump și puternic pentru parolele de hacking.
Apoi, Bitcoin "sa acoperit cu un bazin de cupru". Și asta, în general, nu eram foarte supărat, pentru că nu aveam timp să mă deranjez cu crearea propriei "foraj". În plus, am găsit o aplicație mai interesantă pentru hardware-ul pentru miniere bitcoin: crack-ul parolei. Extracția bitcoinelor și parolelor de hacking sunt operații foarte asemănătoare, iar GPU-ul poate sparge parolele mult mai rapid decât un procesor sau chiar un mic grup de procesoare. În acest articol din două părți, vă voi explica cum să configurați și să utilizați un computer pentru a sparge parolele. În prima parte, mă voi concentra asupra principiilor care stau la baza cracării parolei și a configurației hardware generale. Și vă voi spune despre metode specifice de atacuri cu exemple de comenzi în articolul următor.
Motivele legale pentru parolele de hacking
Înainte de a începe, trebuie să recunoaștem că majoritatea motivelor pentru spargerea parolelor, să le spui ușor, nu sunt foarte legitime. Foarte des puteți auzi o poveste despre un site hacked, o bază de date cu parole compromise și mii de parole deschise "slabe". Deseori, persoanele implicate în spargerea parolelor, deoarece acestea încearcă să pătrundă în sistemul altcuiva, sau au pătruns deja, furat parolele HASH și le sparge pentru a obține posibilitatea de a ataca un alt sistem.
Cu toate acestea, există motive destul de legitime pentru parolele de hacking, în special pentru un administrator de sistem sau un webmaster:
- Verificați fiabilitatea parolelor pentru utilizatorii locali;
- Capacitatea de a se asigura că utilizatorii respectă politica adoptată cu privire la parole;
- O modalitate de a înțelege ce ar trebui să fie această politică;
- Criptografia în sine este o activitate interesantă;
- Producția de bitcoins nu mai aduce profit.
Introducere în hashes-ul parolei
Au fost inventate parolele pentru a rezolva o sarcină dificilă. Dacă utilizatorii trebuie să introducă parole pentru a vă conecta, atunci trebuie să păstrați aceste parole undeva în sistem. Cum să faceți acest lucru astfel încât să nu fie stocate ca text simplu, dar puteți verifica dacă utilizatorii le scriu corect când se conectează? Soluția este criptarea unidirecțională a parolei utilizând un hash. Ideea unui hashing unidirecțional este că parola poate fi criptată cu ușurință, dar este aproape imposibil să se restaureze prin hash. Dacă ați descarcă vreodată ISO-imagine de distribuție Linux și a alerga md5sum, pentru a vedea dacă el nu este „rupt“, atunci știi că ai folosit un foarte popular one-way hashing algoritm MD5. Alte comune one-way hash algoritmi includ familia SHA (SHA1, SHA256 și SHA512), precum și phpass, care a devenit standardul de facto pentru site-urile moderne, scrise în PHP, de exemplu, WordPress.
Când vă conectați la un sistem bazat pe Linux, parola pe care ați introdus-o este convertită într-un hash utilizând algoritmul utilizat pentru a crea această parolă. Sistemul compară hash-ul primit cu hash-ul existent și dacă se potrivesc, parola introdusă este considerată corectă și sunteți permis în sistem. Apropo, de exemplu, dacă sunteți înregistrat pe orice site moderne, scris în PHP și parola - „123456“, atunci acesta poate fi bine păstrate în această formă - „$ P $ BPlIiO5xdHmThnjjSyJ1jBICfPkpay1“.
Cum se face spargerea parolei?
Fișierele / etc / passwd și / etc / shadow
Cel mai important lucru pe care îl veți avea înainte de a începe crack-ul de parolă este hash-urile. Deoarece vorbim de o utilizare perfect legitime a hacking-ului, obținerea hash-urilor va fi ușoară. La urma urmei, pur și simplu trebuie să aveți acces rădăcină la propriile sisteme și baze de date, inclusiv hash-uri de parole. În Linux, aceste hash-uri au fost stocate o dată în fișierul / etc / passwd. Pare a fi locul logic pentru a stoca parolele, dar problema a fost că în acest fișier stochează, de asemenea, numele și ID-urile de utilizator, și din această cauză trebuie să fie citit de oricine. Din nou, atunci când acest fișier conține date de parolă, orice utilizator local ar putea obține o listă completă de hash-uri și să-i hackeze. În zilele noastre, Linux păstrează hash-uri de parole în fișierul / etc / shadow, care poate fi citit numai de utilizatorul rădăcină. În ceea ce privește parolele pentru site-uri Web, hașurile lor sunt de obicei stocate oriunde în sistemul de fișiere al serverului sau (și acest lucru se întâmplă mai des) într-un tabel special de bază de date.
Cel de-al doilea lucru important pe care trebuie să îl cunoașteți este algoritmul prin care parolele au fost șterse, deoarece va trebui să le folosiți pentru atac. Dacă aveți de-a face cu hashes de parole din conturile OS, atunci știu că tipul de hash puteți învăța de la hash în sine. Dacă vă uitați la intrările din fișierul / etc / shadow, veți observa o mulțime de personaje ciudate, cu câteva simboluri în dolari ("$") împrăștiate între ele. Caracterele "$" separă intrarea hash în următoarele secțiuni:
Secțiunea "id" conține informații despre tipul de algoritm:
În prezent, este foarte probabil să întâlniți parole care sunt codate utilizând algoritmii SHA-256 și SHA-512. Deoarece tipul de algoritm și sarea sunt stocate împreună cu hash-ul, parolele Linux au o toleranță foarte bună. Cu un hash, îl puteți copia pe un alt computer și utilizați aceeași parolă pentru a vă conecta.
De ce să utilizați un GPU?
echipament
În ceea ce privește cazul meu, nu aveam o mașină potrivită la îndemână și, prin urmare, am asamblat un computer special pentru hacking parole. Dacă doriți să urmați pe urmele mele, aici este lista exactă a echipamentului meu cu prețuri:
Despre asta, probabil, terminăm. Deci, acum ai ceva timp pentru a colecta echipamentul, iar data viitoare voi uita la partea de software de hacking parole, explica ce sunt atac de dicționar, brute force și o mască, și să dea exemple din propria lor experiență.