Password CrackerKako probiti/pogoditi lozinku
⚡ Pametni sažetak
Probijanje lozinki je praksa oporavka vjerodajnica sustavnim pogađanjem, uspoređivanjem ili izračunavanjem s pohranjenim hashovima. Ovaj pregled objašnjava kako napadači djeluju, alate koje koriste, čimbenike snage koji im se odupiru i kontrole koje administratori moraju provoditi.

Probijanje lozinki jedna je od najstarijih disciplina u ofenzivnoj sigurnosti, no ostaje jednako relevantna kao i uvijek jer korisnici i dalje biraju predvidljive tajne. U ovom vodiču predstavit ćemo uobičajene tehnike koje napadači koriste za oporavak lozinki, alate koji automatiziraju rad i protumjere koje administratori mogu primijeniti kako bi zaštitili sustave od ovih napada.
Što je probijanje lozinki?
Probijanje lozinki je proces pokušaja neovlaštenog pristupa ograničenom sustavu otkrivanjem tajne koja štiti mehanizam autentifikacije. Proces probijanja može uključivati usporedbu pohranjenih hashova lozinki s unaprijed izračunatim popisom riječi ili pokretanje algoritama koji generiraju kandidate za lozinke dok se ne pronađe podudaranje. Nakon što se pronađe podudaranje, napadač se može autentificirati kao legitimni korisnik bez ikakvog nagađanja na mreži.
Što je jačina lozinke?
Snaga lozinke je mjera učinkovitosti lozinke u odupiranju napadima probijanja lozinke. Snaga bilo koje lozinke određena je trima svojstvima:
- Dužina: ukupan broj znakova koje lozinka sadrži.
- Složenost: koristi li kombinaciju velikih slova, malih slova, brojeva i simbola.
- Nepredvidivo: može li napadač koji poznaje korisnika lako pogoditi lozinku.
Usporedimo tri lozinke: lozinka, password1i #lozinka1$Za ovaj primjer koristit ćemo indikator jačine lozinke cPanela. Slike u nastavku prikazuju jačinu svakog kandidata.
Napomena: korištena lozinka je lozinka; snaga je 1, što je vrlo slabo.
Napomena: korištena lozinka je password1; snaga je 28, što je još uvijek slabo.
Napomena: korištena lozinka je #lozinka1$; snaga je 60, što je jako. Što je veći broj snage, to je lozinka bolja.
Pretpostavimo da moramo pohraniti iste lozinke koristeći MD5 hashiranje. Koristit ćemo online MD5 generator hashiranja za pretvaranje svake lozinke u njezinu hash vrijednost. Tablica u nastavku prikazuje rezultirajuće hashove.
| Lozinka | MD5 Hash | Pokazatelj snage cPanela |
|---|---|---|
| lozinka | 5f4dcc3b5aa765d61d8327deb882cf99 | 1 |
| password1 | 7c6a180b36896a0a8c02787eeafb0e4c | 28 |
| #lozinka1$ | 29e08fb7103c327d68327f23d8d9256c | 60 |
Sada ćemo koristiti javnu MD5 stranicu za obrnuto pretraživanje kako bismo probili gore navedene hasheve. Slike u nastavku prikazuju rezultate probijanja lozinke za svaku vrijednost.
Kao što možete vidjeti iz gornjih rezultata, uspjeli smo probiti prvu i drugu lozinku, koje su imale niže brojeve jačine. Nismo uspjeli probiti treću lozinku, koja je bila duža, složenija i nepredvidljivija. Također je imala veći broj jačine.
Tehnike razbijanja lozinki
Postoji nekoliko provjerenih tehnika koje napadači koriste za oporavak lozinki. U nastavku ćemo opisati najčešće korištene kategorije.
- Napad na rječnik: Ova metoda koristi popis riječi vjerojatnih kandidata i uspoređuje svaki od njih sa snimljenim korisničkim lozinkama ili hashovima lozinki.
- Napad brutalnom silom: Napadi grubom silom kombiniraju alfanumeričke znakove i simbole koristeći algoritme za sustavno generiranje svake moguće lozinke dok se ne pronađe podudaranje. Na primjer, lozinka kao što je lozinka može se isprobati i kao riječ korištenjem hibridnog pravila grube sile.
- Napad na dugin stol: Ova metoda se oslanja na unaprijed izračunate hashove. Pretpostavimo da baza podataka pohranjuje lozinke kao MD5 hashove. Napadač stvara drugu tablicu koja pohranjuje MD5 hashove uobičajenih lozinki i uspoređuje snimljeni hash s unaprijed izračunatom tablicom. Ako se pronađe podudaranje, lozinka se oporavlja.
- Pogodi: Kao što i samo ime govori, ova metoda uključuje nagađanje. Lozinke poput QWERTY, lozinkai admin se često koriste ili postavljaju kao zadane. Ako se ne promijene, mogu se brzo kompromitirati.
- Paučarstvo: Većina organizacija koristi lozinke koje sadrže podatke o tvrtki. Ove informacije mogu se prikupiti s korporativnih web stranica i društvenih mreža poput Facebooka i Twittera. Spidering prikuplja podatke iz tih izvora kako bi izradio ciljane popise riječi, koji se zatim koriste u rječnicima i napadima grubom silom.
- Punjenje vjerodajnica: Napadači ponovno reproduciraju parove korisničkog imena i lozinke procurile iz jednog proboja na nepovezane usluge, iskorištavajući korisnike koji ponovno koriste vjerodajnice.
Popis riječi za izmišljenu tvrtku mogao bi kombinirati: 1976. (godina rođenja osnivača); smith, jones (prezimena); acme (naziv tvrtke); built, to, last (ključne riječi vizije); golf, chess, soccer (hobiji).
Donja tablica uspoređuje tehnike prema brzini, preduvjetima i mogućnosti detekcije.
| Tehnika | Brzina | Zahtijeva li hash? | Može li se otkriti na internetu? |
|---|---|---|---|
| Rječnik | pompeznost | Izborni | Da |
| Sirova snaga | Usporiti | Izborni | Da |
| Dugin stol | Vrlo brzo | Da | Ne (izvan mreže) |
| nagađanje | Varijabla | Ne | Da |
| Spidering | Usporiti | Ne | Da |
| Punjenje vjerodajnica | pompeznost | Ne | Da |
Password Cracker Alati
Alati za probijanje lozinki su softverski programi koji automatiziraju gore opisane tehnike. Već smo se ranije dotaknuli jednog takvog uslužnog programa u primjeru snage, gdje javna MD5 pretraga koristi duginu tablicu za obrnuto korištenje uobičajenih hashova. Sada ćemo pogledati dodatne alate na koje se praktičari oslanjaju tijekom ovlaštenih procjena.
1) John the Ripper
John the Ripper Koristi naredbeni redak i prihvaća popise riječi s pravilima za generiranje kandidata. Automatski detektira mnoge uobičajene formate hash-a. Program je besplatan, dok su odabrani komercijalni popisi riječi dostupni zasebno. Posjetite https://www.openwall.com/john/.
2) Cain & Abel
Cain & Abel radi na Windows i oporavlja korisničke lozinke, izvodi mrežno njuškanje i još mnogo toga. Njegovo grafičko sučelje čini ga popularnim među novim korisnicima. Alat se aktivno ne održava od 2014., stoga ga koristite samo na starijim laboratorijskim sustavima. Vidi https://sectools.org/tool/cain/.
3) Ophcrack
Ophcrack je cross-platforma Windows kreker lozinki koji koristi dugine tablice. Radi na Windows, Linux i macOS, i uključuje modul za grubu silu. Posjetite https://ophcrack.sourceforge.io/.
4) Hashcat
Hashcat je moderni standard za oporavak lozinki izvan mreže. Podržava više od 300 algoritama za hashiranje, koristi GPU ubrzanje i nudi napade temeljene na pravilima. Dokumentacija se nalazi na https://hashcat.net/hashcat/.
5) Hidra
Hydra (THC-Hydra) cilja online usluge kao što su SSH, FTP, RDP i HTTP obrasci za prijavu. Dolazi s Kali Linux i široko se koristi u ovlaštenim operacijama crvenog tima.
Kako se zaštititi od napada za probijanje lozinki?
Organizacija može koristiti sljedeće mjere kako bi smanjila vjerojatnost probijanja lozinki:
- Zahtijevajte najmanje 12 znakova i izbjegavajte predvidljive obrasce poput 11552266 ili qwerty1234.
- Lozinke pohranjujte pomoću spore jednosmjerne hash funkcije kao što su bcrypt, scrypt ili Argon2, umjesto brzih hash funkcija kao što su MD5 ili SHA-1.
- Solite svaku lozinku prije hashiranja; soli onemogućuju pretraživanja u rainbow tablici čak i kada je samo hashiranje brzo.
- Usvojite pravila o lozinkama koja favoriziraju visoke ocjene jačine i potiču lozinke, kako preporučuje NIST SP 800-63B.
- Omogućite višefaktorsku autentifikaciju (MFA) tako da sama ukradena lozinka ne odobrava pristup.
- Koristite upravitelj lozinki za generiranje jedinstvenih vjerodajnica za svaku uslugu, neutralizirajući napade prenamjenskog korištenja vjerodajnica.
- Konfigurirajte zaključavanje računa, ograničavanje i kontinuirano praćenje kako biste rano otkrili online aktivnosti brutalne sile.
Hakiranje: hakirajte sada!
U ovom praktičnom scenariju, probit ćemo Windows račun koji koristi jednostavnu lozinku. Windows pohranjuje lokalne vjerodajnice kao NTLM hasheve (shema temeljena na MD4), a mi ćemo koristiti NTLM cracker modul u Cainu i Abelu za oporavak vrijednosti.
Kajin i Abel mogu probiti lozinke pomoću napada rječnikom, grube sile ili kriptoanalize (unaprijed izračunate tablice). Ovdje ćemo koristiti napad rječnikom. Preuzmite popis riječi 10k-Most-Common.zip s uglednog ogledala. Za ovu demonstraciju kreirali smo račun pod nazivom Računi s lozinkom QWERTY na Windows 7 laboratorijskih strojeva.
Kako razbiti lozinku
U nastavku slijedi uparivanje svakog zaslona Kaina i Abela s radnjom koju treba poduzeti. Slijedite korake redom na vlastitom laboratorijskom računu, nikada na sustavu koji nije u vašem vlasništvu.
Korak 1) Otvorite Kain i Abel.
Pokrenite aplikaciju; vidjet ćete sljedeći glavni zaslon.
Korak 2) Pronađite gumb Dodaj.
Provjerite je li kartica Cracker odabrana kao što je prikazano gore i kliknite gumb Dodaj na alatnoj traci.
Korak 3) Odaberite izvor uvoza.
Pojavit će se sljedeći dijaloški prozor. Odaberite Uvoz hasheva iz lokalnog sustava i kliknite Dalje.
Korak 4) Revpregledajte uvezene račune.
Lokalni korisnički računi navedeni su u nastavku. Točni rezultati odražavat će korisničke račune na vašem laboratorijskom računalu.
Korak 5) Desnom tipkom miša kliknite ciljni račun.
Desnom tipkom miša kliknite račun koji želite provaliti. Za ovaj vodič koristit ćemo Računi korisnik.
Korak 6) Otvorite ploču za napad rječnikom.
U prozoru za napad rječnikom kliknite desnom tipkom miša u odjeljak rječnika i odaberite Dodaj u popis kao što je prikazano u nastavku.
Korak 7) Pregledajte datoteku s popisom riječi.
Pregledajte 10k-najčešći.txt datoteku koju ste upravo preuzeli i odaberite je.
Korak 8) Revpogledajte oporavljenu lozinku.
Ako je korisnik odabrao jednostavnu lozinku, npr. QWERTY, vidjet ćete rezultate slične onima na donjem zaslonu, s vrijednošću čistog teksta pored korisničkog računa.
Napomena: vrijeme potrebno za dešifriranje lozinke ovisi o jačini lozinke, složenosti popisa kandidata i procesorskoj snazi vašeg računala. Ako napad rječnikom ne oporavi lozinku, pokušajte sljedeći napad grubom silom ili kriptoanalizom.
Kako je umjetna inteligencija Reshaping Probijanje lozinki i obrana
Umjetna inteligencija postala je ozbiljna sila na obje strane u probijanju lozinki. Napadači treniraju jezične modele na procurjelim podacima o vjerodajnicama kako bi predvidjeli realistične lozinke, dok branitelji uparuju iste modele s telemetrijskim kanalima kako bi brže otkrili kompromitiranje.
Evo kako umjetna inteligencija danas mijenja područje:
- Pametnije generiranje popisa riječi: Generativni modeli poput PassGAN-a uče ljudske obrasce lozinki i stvaraju liste kandidata koje probijaju više hashova nego statički rječnici.
- Bodovanje bihevioralnog rizika: Obrambena umjetna inteligencija provjerava geografiju prijave, otisak prsta uređaja i TYping ritam, slanje neobičnih konteksta za pojačanu autentifikaciju.
- Otkrivanje anomalija u stvarnom vremenu: Klasifikatori strojnog učenja prate zapisnike autentifikacije i označavaju dodavanje podataka za prijavu ili spore kampanje grube sile koje pravila potpisa propuštaju.
- Automatizirano savjetovanje o pravilima: Platforme za identifikaciju ocjenjuju nove lozinke u odnosu na korpuse specifične za organizaciju i predlažu jače zamjene prije nego što ih korisnici finaliziraju.
- Obrana od phishinga: Umjetna inteligencija ubrzava uvođenje FIDO2 i tokova lozinki analizirajući signale rizika i smanjujući trenje među korisnicima.
Spojite AI praćenje s višefaktorskom autentifikacijom, modernim hashiranjem kao što je Argon2 i brzim obavijestima o kršenju sigurnosti kako biste automatiziranu obranu držali ispred automatiziranog napada.















