Hashcat Aracını Kullanarak Şifreler Nasıl Kırılır?
Yayınlanan: 2021-12-14Etik bilgisayar korsanlığı ve sızma testinde, bir sisteme veya sunucuya erişim elde etmede şifre kırma çok önemlidir.
Sistemlerde ve veritabanlarında parolalar nadiren düz metin biçiminde kaydedilir.
Parolalar, veritabanında saklanmadan önce her zaman hashlenir ve hash, doğrulama işlemi sırasında karşılaştırılır.
Kullanılan şifrelemeye bağlı olarak, farklı sistemler parola karmalarını farklı şekillerde saklar. Karmalarınız varsa, herhangi bir şifreyi kolayca kırabilirsiniz.
Ve bu makalede, kullanışlı ve mükemmel bir Hashcat komut satırı aracını kullanarak parola karmalarının nasıl kırılacağını keşfedeceğiz.
O halde başlayalım.
Ama ondan önce…
Hash işlevi nedir?
Hashing, Hash Fonksiyonu olarak bilinen bazı matematiksel fonksiyonları kullanarak normal bir girdi metnini sabit boyutlu bir metin dizisine dönüştürme işlemidir. Uzunluğundan bağımsız olarak herhangi bir metin, bir algoritma kullanılarak rastgele bir tamsayı ve alfabe kombinasyonuna dönüştürülebilir.
- Giriş, hash işlemi yapılacak mesajı ifade eder.
- Karma işlevi, bir dizeyi karma değerine dönüştüren MD5 ve SHA-256 gibi şifreleme algoritmasıdır.
- Ve son olarak, hash değeri sonuçtur.
Hashcat nedir?
Hashcat en hızlı şifre kurtarma aracıdır. Yüksek karmaşık şifreleri kısa sürede kırmak için tasarlanmıştır. Ve bu araç aynı zamanda hem kelime listesi hem de kaba kuvvet saldırıları yapabilir.
Hashcat'in iki çeşidi vardır. CPU ve GPU (Grafik İşlem Birimi) tabanlı. GPU tabanlı araç, karmaları CPU'dan daha kısa sürede kırabilir. GPU sürücü gereksinimlerini resmi web sitelerinden kontrol edebilirsiniz.
Özellikler
- Ücretsiz ve açık kaynak
- 200'den fazla karma türü varyasyonu uygulanabilir.
- Linux, Windows ve macOS gibi çoklu işletim sistemlerini destekler.
- CPU ve GPU desteği gibi Çoklu Platformlar mevcuttur.
- Aynı anda birden fazla karma kırılabilir.
- Otomatik performans ayarının yanı sıra altıgen -tuz ve altıgen-karakter seti dosyaları desteklenir.
- Yerleşik bir kıyaslama sistemi mevcuttur.
- Dağıtılmış kırma ağları, bindirmeler kullanılarak desteklenebilir.
Ve diğer özelliklerini web sitelerinden de görebilirsiniz.
Hashcat'in Kurulumu
İlk olarak, Linux sisteminizin en yeni programlar ve araçlarla güncel olduğundan emin olun.
Bunun için bir terminal açın ve şunu yazın:
$ sudo apt update && sudo apt upgrade
Hashcat genellikle Kali Linux'ta önceden kuruludur. Aracı şifre kırma bölümünün altında bulabilirsiniz. Ancak herhangi bir Linux dağıtımında manuel olarak kurmanız gerekiyorsa, terminale aşağıdaki komutu yazın.
$ sudo apt-get install hashcat
Araç Kullanımı
Hashcat'i kullanmaya başlamak için bazı parola karmalarına ihtiyacımız olacak. Eğer kırılacak bir hash'iniz yoksa, önce bazı hash'ler oluşturacağız.
Komut satırını kullanarak hash oluşturmak için aşağıdaki formatı takip etmeniz yeterlidir.
echo -n "input" | algorithm | tr -d "-">>outputfiename
Örneğin, aşağıdaki md5 algoritmasını kullanarak bazı kelimeleri karmalara dönüştürdüğümü görebilirsiniz.
┌──(rootkali)-[/home/writer/Desktop] └─# echo -n "geekflare" | 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
Ve çıktı crackhash.txt dosyasına kaydedilecektir.

Şimdi verilen dosyaya kaydedilen hashleri kontrol edeceğiz.
┌──(rootkali)-[/home/writer/Desktop] └─# cat crackhash.txt 066d45208667198296e0688629e28b14 482c811da5d5b4bcd497ffeaa98491e3 72a2bc267579aae943326d17e14a8048 2192d208d304b75bcd00b29bc8de5024 caae8dd682acb088ed63e2d492fe1e13
Görüyorsunuz, şimdi kırmamız gereken bazı karmalar var. Bu, seçtiğiniz algoritmayı kullanarak bir karma oluşturma prosedürüdür.
Bir sonraki adım, Linux makinenizde bir Hashcat aracını başlatmaktır. Hashcat'i kullanmak için aşağıdaki komutu kullanmanız yeterlidir.
$ hashcat --help
Aracı çalıştırmak için bilmeniz gereken tüm seçenekleri getirecektir. Terminalde tüm saldırı ve hash modlarını bulabilirsiniz.
Komutun genel biçimi şudur:
$ hashcat -a num -m num hashfile wordlistfile
Burada 'num' kullanılacak belirli bir saldırı ve karma modunu temsil eder. Terminali kaydırırsanız, her saldırı ve karma modu için tam sayıları bulabilirsiniz, örneğin md4 için sayı 0 ve sha256 algoritması için sayı 1740'tır.
Kullanacağım kelime listesi rockyou kelime listesi. Bu kelime listesini /usr/share/wordlists yolunda kolayca bulabilirsiniz.
Bu kelime listesi yolunu bulmak için bul komutunu bile kullanabilirsiniz.
┌──(rootkali)-[/home/writer] └─# locate rockyou.txt
Ve son olarak, wordlist dosyasını kullanarak hashleri kırmak için aşağıdaki komutu kullanın.
$ hashcat -a 0 -m 0 ./crackhash.txt rockyou.txt
Bu komutu çalıştırdıktan sonra, kolayca çözülebilecek bir çalışma zamanı hatası (Belirteç uzunluğu istisna hatası) alabilirsiniz.
Bunu çözmek için, her bir hash'i farklı bir dosyaya ayrı ayrı kaydedin. Bu hata, düşük bir CPU veya GPU hızınız varsa oluşur. Bilgisayarınızda yüksek hızlı bir işlemci varsa, tek bir dosyanın kendisi gibi tüm hashleri aynı anda kolayca kırabilirsiniz.
Yani hatayı ve her şeyi düzelttikten sonra sonuç böyle olacak.
┌──(rootkali)-[/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
Yukarıdaki sonuçta, sözlük önbellek detaylarından sonra, hash'in kırıldığını ve şifrenin ortaya çıktığını fark edebilirsiniz.
Çözüm
Umarım şifreleri kırmak için Hashcat'i kullanmayı daha iyi anlamışsınızdır.
Sızma testi için çeşitli kaba kuvvet araçları ve en iyi sızma testi araçlarından bazıları hakkında bilgi edinmek de ilginizi çekebilir.