Parola kırma konusu çoğu zaman yanlış yerden anlatılıyor; sanki amaç "başkasının şifresini bulmak" gibi sunuluyor. Oysa bir pentester için Hashcat, bir kurumun parola politikasının gerçekten ne kadar dayanıklı olduğunu ölçen bir denetim aracı. Bu rehberde Hashcat'i kendi lab ortamınızda, kendi ürettiğiniz hash'ler üzerinde öğreteceğim.
Konuda anlatılacaklar
- Hashcat nedir, ne işe yarar?
- Hash nedir, kırma neden mümkün?
- Kurulum ve donanım (GPU/CPU)
- Mod (-m) ve saldırı tipi (-a) kavramı
- Sözlük, kural ve kaba kuvvet örnekleri
- Kendi lab hash'inizi üretme
- Savunma: parolaları nasıl kırılamaz saklarız?
- Yasal uyarı
Hashcat Nedir?
Hashcat, açık kaynaklı ve çok hızlı bir parola kurtarma / hash kırma aracıdır. GPU hızlandırmayı desteklediği için saniyede milyarlarca denemeye ulaşabilir. Bir hash değerini alıp, tahmin ettiği parolaları aynı algoritmayla hashleyip sonucu karşılaştırır; eşleşirse parolayı bulmuş olur.
Önemli: Hashcat parolayı "geri çözmez". Hash tek yönlüdür. Hashcat sadece doğru parolayı tahmin edip doğrular. Bu yüzden güçlü ve uzun parolalar pratikte kırılamaz kalır.
Hash Nedir, Kırma Neden Mümkün?
Hash, bir veriyi sabit uzunlukta bir özete çeviren tek yönlü fonksiyondur (MD5, SHA-256, bcrypt gibi). Sistemler parolayı düz metin saklamak yerine hash'ini saklar. Saldırgan veritabanını ele geçirdiğinde elinde hash'ler olur. Eğer:
- Hash algoritması hızlıysa (MD5, SHA-1 gibi),
- Parola kısa/tahmin edilebilirse,
- Tuz (salt) kullanılmamışsa,
Kurulum
# Kali/Debian
sudo apt install hashcat
# Sürüm ve cihaz kontrolü
hashcat --version
hashcat -I # algılanan OpenCL/CUDA cihazlarıGPU'nuz yoksa CPU ile de çalışır, sadece yavaştır. Öğrenmek için yeterli.
Mod ve Saldırı Tipi Kavramı
Hashcat'te iki temel seçenek vardır:
-m (hash modu): Hangi hash türü olduğunu söyler.
- 0 = MD5
- 100 = SHA1
- 1400 = SHA-256
- 1800 = sha512crypt (Linux /etc/shadow)
- 3200 = bcrypt
-a (saldırı tipi):
- 0 = Sözlük (straight)
- 1 = Kombinasyon
- 3 = Kaba kuvvet / maske
- 6, 7 = Hibrit (sözlük + maske)
Pratik Örnekler
1) Sözlük saldırısı:
hashcat -m 0 -a 0 hashes.txt rockyou.txt2) Sözlük + kural:
hashcat -m 0 -a 0 hashes.txt rockyou.txt -r rules/best64.rule3) Maske (kaba kuvvet) saldırısı:
hashcat -m 0 -a 3 hashes.txt ?u?l?l?l?l?d?dSonuçları görme:
hashcat -m 0 hashes.txt --showKendi Lab Hash'inizi Üretin
Başkasının hash'iyle uğraşmadan, kendi test hash'inizi üretip kırmayı deneyin:
echo -n "Yaz2026!" | md5sum
# çıktıdaki hash'i hashes.txt içine yazın, sonra:
hashcat -m 0 -a 3 hashes.txt ?u?l?l?d?d?d?d?sBöylece hem aracı öğrenir hem de hangi parola uzunluğunun ne kadar sürede kırıldığını kendi gözünüzle görürsünüz. Bu, parola politikası tartışmalarında çok ikna edici bir deneyimdir.
Savunma: Parolaları Nasıl Saklamalı?
- bcrypt, scrypt veya Argon2 kullanın; MD5/SHA-1 ile parola saklamak 2026'da affedilmez.
- Her parolaya benzersiz tuz (salt) ekleyin; rainbow table saldırısını etkisiz kılar.
- Kullanıcıları uzun parola cümlelerine (passphrase) yönlendirin; uzunluk, karmaşıklıktan daha önemlidir.
- Mümkün olan her yerde çok faktörlü kimlik doğrulama (MFA) zorunlu kılın.
- Sızmış parola listelerine karşı kontrol yapın (ör. Have I Been Pwned Passwords API).
Sonuç
Hashcat'i öğrenmenin en sağlıklı yolu, saldırı tarafını anlamak ama gözü savunmada tutmak. Kendi ürettiğiniz hash'lerle oynayın, kaç karakterin gerçekten güvenli olduğunu ölçün. Hangi kural setini (best64, OneRuleToRuleThemAll vb.) verimli buluyorsunuz, yorumlarda paylaşın.
Yasal Uyarı
Parola kırma yalnızca kendinize ait veya yazılı olarak yetkilendirildiğiniz sistemlerdeki hash'ler için yapılabilir. Başkasına ait hash/parola kırmak ve çalıntı veri (combo/log) kullanmak TCK 243-245 kapsamında suçtur. Bu forumda çalıntı veri paylaşımı yasaktır.
Görsel: PonyDuck21, Wikimedia Commons, lisans CC0 - https://commons.wikimedia.org/wiki/File:...t_Info.png
