Bir Hacker Aracı Kullanarak Verilerin Şifrelenmesi ve Şifresinin Çözülmesi
1. Giriş
Günümüzde kurumlar, çalışanların taşınabilir medya araçları (USB bellek, harici disk vb.) kullanarak veri taşımasını sınırlandırmak ve güvenli hale getirmek için çeşitli güvenlik politikaları uygular.
Özellikle finans, sağlık, savunma ve kamu kurumlarında hassas bilgilerin korunması büyük önem taşır. Bu nedenle birçok kurum:
USB bellek kullanımını sınırlar,
Taşınabilir medyadaki dosyaların şifrelenmesini zorunlu kılar,
Dosyaların parola korumalı arşivler içinde taşınmasını ister,
Veri sızıntısını önlemek için DLP (Data Loss Prevention) çözümleri kullanır.
Bu laboratuvarda iki temel güvenlik konusu ele alınacaktır:
Dosyaların şifrelenmesi ve korunması
Kayıp parola kurtarma süreçlerinin anlaşılması
Bu çalışma aynı zamanda bir güvenlik uzmanının sahip olması gereken iki bakış açısını göstermektedir:
Savunmacı bakış açısı (Defensive Security): Verileri güçlü şekilde korumak
Saldırgan bakış açısı (Offensive Security): Zayıf parolaların nasıl kırılabildiğini anlamak
Önemli: Bu laboratuvar yalnızca eğitim ve yetkilendirilmiş test ortamları için hazırlanmıştır. Başkasına ait dosyalara izinsiz erişmek yasa dışıdır.
2. Laboratuvar Senaryosu
Bir şirketin taşınabilir medya kullanım politikası aşağıdaki gibidir:
USB belleklerde yalnızca şifrelenmiş dosyalar bulunabilir.
Hassas belgeler parola korumalı ZIP dosyaları içinde taşınmalıdır.
Parolalar çalışanlar tarafından güvenli şekilde saklanmalıdır.
Bir gün şirketin CFO'su şehir dışındayken önemli finans belgelerine erişmek ister.
Ancak:
USB belleğindeki ZIP dosyası açılmaz.
Daha önce kullanılan parola kabul edilmez.
Belgeler acilen gerekmektedir.
Siber güvenlik analisti olarak göreviniz:
Dosyanın gerçekten parola korumalı olduğunu doğrulamak,
Kurumsal yetki dahilinde parola kurtarma işlemi gerçekleştirmek,
Zayıf parola kullanımının risklerini raporlamaktır.
3. Kullanılan Araçlar
Bu laboratuvarda Linux ortamında çalışan araçlar kullanılacaktır.
Kullanılacak araç:
fcrackzip
fcrackzip, parola korumalı ZIP dosyalarında parola kurtarma denemeleri yapan bir araçtır.
Desteklediği yöntemler:
Brute Force (Kaba kuvvet)
Dictionary Attack (Sözlük saldırısı)
Kurulum
Debian / Ubuntu / Pardus sistemlerinde:
sudo apt update
Ardından:
sudo apt install fcrackzip
Kurulum kontrolü:
fcrackzip --help
Örnek çıktı:
fcrackzip version 1.0usage:fcrackzip [options] file
BÖLÜM 1
Dosyaları Oluşturma ve Şifreleme
4. Çalışma Dizini Oluşturma
Öncelikle laboratuvar için bir klasör oluşturulur.
mkdir sifreleme_lab
Klasöre girilir:
cd sifreleme_lab
Kontrol:
pwd
Örnek:
/home/user/sifreleme_lab
5. Örnek Dosyaların Oluşturulması
Bir metin dosyası oluşturalım.
nano finans.txt
İçerik:
Şirket Finans RaporuToplam gelir:250000 TLGizli finans bilgileri.
Kaydetme:
CTRL + O
Çıkış:
CTRL + X
Dosya kontrolü:
cat finans.txt
Çıktı:
Şirket Finans RaporuToplam gelir:250000 TL
6. ZIP Dosyası Oluşturma ve Şifreleme
Linux ortamında zip komutu kullanılabilir.
Önce yükleme:
sudo apt install zip
Şifreli ZIP oluşturma:
zip -e finans.zip finans.txt
Sistem parola isteyecektir:
Enter password:Verify password:
Örnek parola:
123456
Sonuç:
adding: finans.txt
Dosyaları listeleme:
ls -l
Çıktı:
finans.txtfinans.zip
7. Şifreli ZIP Dosyasını Test Etme
Dosyayı açmayı deneyelim:
unzip finans.zip
Çıktı:
password required
Yanlış parola girilirse:
incorrect password
Bu noktada elimizde:
finans.zip
adında parola korumalı bir dosya bulunmaktadır.
BÖLÜM 2
Şifrelenmiş ZIP Dosyası Parolalarını Kurtarma
8. Parola Kurtarma Mantığı
Parola kurtarma araçları aslında şu mantıkla çalışır:
Bir parola tahmin edilir.
ZIP dosyası ile denenir.
Doğruysa dosya açılır.
Yanlışsa yeni parola denenir.
Örneğin:
123450123451123452123453...
Bu yönteme:
Brute Force Attack
denir.
9. fcrackzip ile Parola Denemesi
Temel kullanım:
fcrackzip finans.zip
Ancak varsayılan kullanım sınırlıdır.
Daha ayrıntılı kullanım:
fcrackzip -v -u finans.zip
Parametreler:
| Parametre | Açıklama |
|---|---|
| -v | Ayrıntılı çıktı |
| -u | Bulunan parolayı doğrular |
10. Karakter Seti Belirleme
Örneğin parola sadece rakamlardan oluşuyorsa:
fcrackzip -v -u -c 1 -l 4 finans.zip
Açıklama:
| Seçenek | Anlamı |
|---|---|
| -c 1 | Sayısal karakterler |
| -l 4 | 4 karakter uzunluk |
Denenecekler:
000000010002...9999
11. Sözlük Saldırısı
Gerçek hayatta kullanıcılar genellikle:
isim,
doğum tarihi,
kurum adı,
basit kelimeler
kullanır.
Bu nedenle sözlük saldırıları oldukça etkilidir.
Örnek parola listesi:
nano passwords.txt
İçerik:
123456passwordadminfinanceankara
Kaydet.
Saldırı:
fcrackzip -v -u -D -p passwords.txt finans.zip
Parametreler:
| Parametre | Açıklama |
|---|---|
| -D | Dictionary mode |
| -p | Parola listesi |
12. Başarılı Parola Kurtarma
Başarılı durumda:
Örnek:
PASSWORD FOUND!!!!:123456
Artık ZIP dosyası açılabilir:
unzip finans.zip
Parola:
123456
13. Güçlü Parola Analizi
Bu laboratuvarın en önemli güvenlik mesajı:
Zayıf parola = Kolay kırılabilir parola
Örnek:
123456
Tahmin edilmesi çok kolaydır.
Daha güçlü:
Nuri2026!
Daha iyi:
N7!pL@29xQz#
14. Parola Gücü Faktörleri
1. Uzunluk
Parola uzunluğu arttıkça saldırı süresi artar.
Örnek:
| Parola | Güvenlik |
|---|---|
| 1234 | Çok zayıf |
| 123456 | Zayıf |
| Nuri2026 | Orta |
| N7!pL@29xQz# | Güçlü |
2. Karakter Çeşitliliği
Güçlü parola:
Örnek:
Siber@Guvenlik2026!
15. Hackerların Kullandığı Benzer Araçlar
Saldırganlar da aynı prensipleri kullanır.
Yaygın araçlar:
John the Ripper
Parola hash analizleri için kullanılır.
Hashcat
GPU hızlandırmalı parola kırma aracıdır.
Özellikle:
NTLM hash
SHA hash
WPA hash
analizlerinde kullanılır.
Hydra
Çevrimiçi parola saldırıları için kullanılır.
Örneğin:
SSH
FTP
HTTP Login
16. Savunma Önlemleri
Kurumsal ortamlarda aşağıdaki önlemler uygulanmalıdır.
Güçlü parola politikası
Örnek:
Minimum:
12 karakter
Karmaşık karakter kullanımı
Parola geçmişi kontrolü
Çok Faktörlü Kimlik Doğrulama
MFA kullanımı:
Şifre + Telefon doğrulaması
Şifreleme Standartları
ZIP yerine:
VeraCrypt
BitLocker
LUKS
gibi güçlü disk şifreleme çözümleri tercih edilmelidir.
17. Laboratuvar Sonuçları
Bu uygulamada:
18. Siber Güvenlik Açısından Değerlendirme
Bu laboratuvar bize önemli bir gerçeği göstermektedir:
Şifreleme algoritması ne kadar güçlü olursa olsun, kullanılan parola zayıfsa sistem güvensiz hale gelir.
AES gibi güçlü algoritmalar bile:
kısa parola,
tahmin edilebilir parola,
tekrar kullanılan parola
durumlarında kullanıcı hatası nedeniyle risk altına girer.
Siber güvenlik uzmanlarının görevi yalnızca saldırıları gerçekleştirmek değil, aynı zamanda bu saldırı yöntemlerini anlayarak daha güvenli sistemler tasarlamaktır.
Parola korumalı dosyaların veya parola özetlerinin (hash) yetkili kurtarma, denetim ve güvenlik testleri amacıyla kullanılan birçok araç bulunmaktadır. Ancak bu araçların desteklediği dosya türleri, performansları ve kullanım amaçları farklıdır.
Aşağıdaki araçlar siber güvenlik eğitimlerinde ve adli bilişim çalışmalarında en sık kullanılanlardır.
| Araç | Desteklediği Formatlar | GPU Desteği | Platform | Kullanım Amacı |
|---|---|---|---|---|
| John the Ripper | ZIP, RAR, PDF, Office, Linux hash, Windows hash | Kısmi | Linux, Windows, macOS | Parola denetimi ve kurtarma |
| Hashcat | 300'den fazla hash türü | Evet | Linux, Windows, macOS | Yüksek performanslı parola denetimi |
| fcrackzip | ZIP | Hayır | Linux | ZIP parola kurtarma |
| RARCrack | ZIP, RAR, 7z | Hayır | Linux, Windows | Arşiv parola denetimi |
| Crark | ZIP, Office | Evet | Windows | GPU destekli kurtarma |
| Elcomsoft Distributed Password Recovery | Office, PDF, ZIP, RAR vb. | Evet | Windows | Kurumsal parola kurtarma |
| Passware Kit | Çok sayıda dosya formatı | Evet | Windows | Adli bilişim ve parola kurtarma |
| L0phtCrack | Windows parola özetleri | Evet | Windows | Active Directory ve Windows parola denetimi |
| Cain & Abel | Windows parolaları | Hayır | Windows | Eski sistemlerde parola analizi |
| ophcrack | Windows NTLM | Hayır | Linux, Windows | Rainbow table tabanlı kurtarma |
1. John the Ripper
John the Ripper, en eski ve en yaygın kullanılan açık kaynak parola denetim araçlarından biridir.
Desteklediği bazı formatlar:
Linux
/etc/shadowWindows NTLM
ZIP
RAR
PDF
Microsoft Office
SSH anahtarları
OpenSSL
KeePass
Öne çıkan özellikleri:
Açık kaynak
Çok sayıda format desteği
Sözlük tabanlı denetim
Kural (rule) desteği
Artımlı (incremental) denetim
Hibrit yöntemler
2. Hashcat
Hashcat günümüzde en hızlı parola denetim araçlarından biridir ve GPU hızlandırmasını destekler.
Öne çıkan özellikleri:
CUDA ve OpenCL desteği
NVIDIA ve AMD ekran kartlarıyla çalışma
Yüzlerce algoritma desteği
Dağıtık (distributed) çalışma
Maske tabanlı ve kural tabanlı denetimler
Desteklediği örnek algoritmalar:
MD5
SHA-1
SHA-256
bcrypt
NTLM
Kerberos
WPA/WPA2
WPA3
PDF
Office
ZIP
RAR
VeraCrypt
Hashcat, özellikle kurumsal parola denetimleri ve güvenlik değerlendirmelerinde yaygın olarak kullanılır.
3. fcrackzip
Bu laboratuvarda kullanılan araçtır.
Avantajları:
Kurulumu kolaydır.
Küçük ve hafiftir.
ZIP dosyalarına odaklanır.
Eğitim ortamları için uygundur.
Dezavantajları:
Sadece ZIP formatını destekler.
GPU desteği bulunmaz.
Büyük parola uzaylarında modern araçlara göre daha yavaştır.
4. RARCrack
RARCrack aşağıdaki arşiv biçimlerini destekler:
ZIP
RAR
7z
Avantajları:
Birden fazla arşiv biçimi
Basit kullanım
Linux desteği
5. Elcomsoft Distributed Password Recovery
Ticari bir çözümdür ve özellikle adli bilişim ile kurumsal olay müdahale ekipleri tarafından tercih edilir.
Desteklediği uygulamalardan bazıları:
Microsoft Office
PDF
BitLocker
VeraCrypt
Apple Notes
iTunes yedekleri
ZIP ve RAR arşivleri
Öne çıkan özellikleri:
Çoklu GPU kullanımı
Dağıtık işlem
Merkezi yönetim
6. Passware Kit
Adli bilişim laboratuvarlarında sık kullanılan ticari araçlardan biridir.
Desteklediği format sayısı oldukça fazladır.
Kullanım alanları:
Disk imajları
Office belgeleri
PDF
ZIP
RAR
Apple cihaz yedekleri
VeraCrypt konteynerleri
7. ophcrack
Özellikle eski Windows sistemlerinde NTLM parola özetlerinin denetimi için geliştirilmiştir.
Özellikleri:
Rainbow table kullanımı
Grafik arayüz
Linux Live CD desteği
Eğitim amaçlı gösterimler için uygun
Araçların Karşılaştırması
| Araç | ZIP | RAR | Office | Windows Hash | Linux Hash | GPU | |
|---|---|---|---|---|---|---|---|
| John the Ripper | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ⚠️ Kısmi |
| Hashcat | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| fcrackzip | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
| RARCrack | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ |
| Elcomsoft | ✅ | ✅ | ✅ | ✅ | ✅ | ⚠️ Sınırlı | ✅ |
| Passware Kit | ✅ | ✅ | ✅ | ✅ | ✅ | ⚠️ Sınırlı | ✅ |
| ophcrack | ❌ | ❌ | ❌ | ❌ | ✅ | ❌ | ❌ |
Eğitim açısından hangisi tercih edilmeli?
Başlangıç seviyesi:
fcrackzip(ZIP arşivleri üzerinde temel kavramları öğretmek için)Orta seviye: John the Ripper (farklı dosya türleri ve parola denetim yöntemleri)
İleri seviye: Hashcat (GPU hızlandırmalı ve çok çeşitli format desteği)
Adli bilişim ve kurumsal ortam: Elcomsoft Distributed Password Recovery ve Passware Kit
Bu araçlar, yalnızca sahibi olduğunuz veya açıkça yetkilendirildiğiniz sistem ve dosyalarda parola kurtarma ya da güvenlik denetimi amacıyla kullanılmalıdır. Eğitim ve yetkili güvenlik testleri dışında kullanımları hukuki ve etik sorunlara yol açabilir.
John the Ripper (JtR) ile Parola Güvenliği Analizi ve Kurtarma
Ayrıntılı Eğitim Makalesi
Etik Uyarı: Bu makale yalnızca eğitim, yetkili sızma testleri (Pentest), güvenlik denetimleri ve adli bilişim çalışmaları amacıyla hazırlanmıştır. John the Ripper yalnızca sahibi olduğunuz veya açıkça yetkilendirildiğiniz sistemlerde kullanılmalıdır.
İçindekiler
John the Ripper Nedir?
Tarihçesi
Çalışma Prensibi
Desteklediği Dosya Türleri
Kurulum
Temel Kullanım
Wordlist (Sözlük) Saldırıları
Rule (Kural) Motoru
Incremental Mod
Mask Modu
Hash Türleri
ZIP, PDF ve Office Dosyalarında Kullanımı
Linux Parola Denetimi
Windows Parola Denetimi
Performans Optimizasyonu
Gerçek Hayat Senaryoları
En İyi Uygulamalar
Laboratuvar Çalışmaları
Sonuç
1. John the Ripper Nedir?
John the Ripper (JtR), parola güvenliği denetimi ve parola kurtarma amacıyla geliştirilen dünyanın en popüler açık kaynak güvenlik araçlarından biridir.
1996 yılında geliştirilmeye başlanmış olup günümüzde hem bireysel güvenlik araştırmacıları hem de kurumsal siber güvenlik ekipleri tarafından yaygın olarak kullanılmaktadır.
Temel amacı, kullanıcıların kullandıkları parolaların ne kadar güçlü olduğunu test etmek ve zayıf parolaları tespit ederek güvenliği artırmaktır.
2. John the Ripper Nerelerde Kullanılır?
Başlıca kullanım alanları şunlardır:
Kurumsal parola denetimleri
Active Directory güvenlik analizleri
Linux sunucu güvenliği
Adli bilişim (Digital Forensics)
Olay müdahale (Incident Response)
Penetrasyon testleri
Siber güvenlik eğitimleri
Güvenlik farkındalık çalışmaları
3. John the Ripper Nasıl Çalışır?
John the Ripper, hedef sisteme doğrudan saldırmaz. Bunun yerine, daha önce elde edilmiş veya kullanıcı tarafından sağlanan parola özetlerini (hash) ya da parola korumalı dosyaları analiz ederek aday parolaları dener.
Temel işleyiş şu şekildedir:
Parola özeti (hash) veya desteklenen bir dosya biçimi alınır.
Aday parolalar belirli yöntemlerle üretilir.
Her aday parola ilgili algoritmayla işlenir.
Üretilen sonuç mevcut hash ile karşılaştırılır.
Eşleşme bulunursa parola doğrulanmış olur.
Bu süreç çevrimdışı (offline) gerçekleştiğinden, çevrimiçi hesaplara yönelik denemelerden farklıdır.
4. Desteklediği Formatlar
John the Ripper yüzlerce formatı destekler.
İşletim Sistemleri
Linux (/etc/shadow)
Windows NTLM
Windows LM
macOS
Belgeler
Microsoft Office
PDF
ZIP
RAR
7-Zip
OpenDocument
Veritabanları
MySQL
PostgreSQL
Oracle
MSSQL
Ağ Kimlik Doğrulama
Kerberos
WPA/WPA2 (uygun dönüştürülmüş yakalamalar üzerinden)
SSH anahtarları
OpenSSH
Diğer
KeePass
VeraCrypt
BitLocker (uygun dönüştürülmüş biçimler)
TrueCrypt
5. Desteklediği Parola Denetim Modları
John birden fazla denetim yaklaşımını destekler.
Single Crack Mode
Mevcut kullanıcı bilgilerini kullanarak olası parolaları üretir.
Örneğin:
ad
soyad
kullanıcı adı
doğum yılı gibi bilgilerden türetilmiş adaylar.
Wordlist Mode
Hazır bir parola listesindeki adaylar tek tek denenir.
Bu yöntem:
en hızlı
en başarılı
en çok kullanılan yöntemlerden biridir.
Rule Mode
Wordlist içindeki kelimeleri çeşitli kurallarla dönüştürür.
Örneğin:
password
şu adaylara dönüşebilir:
Passwordpassword1Password2026Password!P@ssword
Bu sayede tek bir kelime listesinden çok daha fazla aday oluşturulabilir.
Incremental Mode
Sistematik olarak karakter kombinasyonları üretir.
Bu yöntem daha kapsamlıdır ancak daha uzun sürebilir.
Mask Mode
Parolanın belirli özellikleri biliniyorsa (örneğin ilk harfin büyük, son iki karakterin rakam olması gibi), bu bilgi aday üretimini daraltmak için kullanılabilir.
6. Kurulum
Debian / Ubuntu / Pardus
sudo apt updatesudo apt install john
Kurulum doğrulaması:
john --version
Fedora
sudo dnf install john
Arch Linux
sudo pacman -S john
macOS (Homebrew)
brew install john-jumbo
7. Temel Komutlar
Yüklü formatları görüntüleme:
john --list=formats
CPU çekirdeklerini görüntüleme:
john --test
Oturumu durdurma:
Ctrl+C
Devam ettirme:
john --restore
Sonuçları gösterme:
john --show
8. Wordlist Mantığı
Wordlist, olası parolaların bulunduğu bir metin dosyasıdır.
Örnek içerik:
123456passwordadminqwertyAnkara2026
Kurumsal güvenlik denetimlerinde, kullanıcıların tahmin edilebilir parolalar kullanıp kullanmadığını değerlendirmek için bu tür listelerden yararlanılır.
9. Rule Motoru
John'un en güçlü özelliklerinden biri Rule Engine'dir.
Tek bir parola:
Ankara
çok sayıda farklı aday hâline getirilebilir.
Örneğin:
ankaraANKARAAnkara1Ankara!Ankara2026
Bu yaklaşım, gerçek kullanıcı davranışlarını daha iyi yansıttığı için parola denetimlerinde etkilidir.
10. Incremental Mod
Incremental mod, belirlenen karakter kümesine göre sistematik kombinasyonlar oluşturur.
Örneğin küçük harflerden oluşan dört karakterlik adaylar sırasıyla üretilebilir:
aaaaaaabaaac...
Bu yöntem en kapsamlı yaklaşımlardan biridir ancak parola uzayı büyüdükçe işlem süresi de önemli ölçüde artar.
11. Hash Türleri
John çok sayıda hash algoritmasını destekler.
Yaygın örnekler:
| Hash Türü | Kullanım Alanı |
|---|---|
| MD5 | Eski uygulamalar |
| SHA-1 | Eski sistemler |
| SHA-256 | Modern uygulamalar |
| SHA-512 | Linux sistemleri |
| bcrypt | Web uygulamaları |
| NTLM | Windows |
| LM | Eski Windows sürümleri |
| PBKDF2 | Modern kimlik doğrulama |
| Argon2 | Güncel parola saklama |
12. Linux Parola Güvenliği
Linux sistemlerinde parola özetleri genellikle:
/etc/shadow
dosyasında saklanır.
Modern Linux dağıtımları:
SHA-512
yescrypt
Argon2 (dağıtıma bağlı olarak)
gibi güçlü algoritmalar kullanmaktadır.
13. Windows Parolaları
Windows sistemlerinde parola özetleri çoğunlukla:
NTLM
formatında bulunur.
Kurumsal güvenlik denetimlerinde Active Directory ortamlarında parola politikalarının etkinliği değerlendirilebilir.
14. Performans
John'un performansı şu faktörlere bağlıdır:
CPU çekirdek sayısı
Kullanılan hash algoritması
Parola uzunluğu
Karakter kümesi
Rule sayısı
Wordlist kalitesi
GPU hızlandırması gereken senaryolarda, çoğu zaman Hashcat daha uygun bir seçenek olarak değerlendirilir.
15. Gerçek Hayat Senaryoları
Senaryo 1
Bir şirket, çalışanlarının zayıf parola kullanıp kullanmadığını yılda bir kez denetlemek istiyor.
Yetkilendirilmiş güvenlik ekibi, parola özetlerini analiz ederek riskli hesapları belirliyor ve kullanıcıların güçlü parolalara geçmesini sağlıyor.
Senaryo 2
Bir kullanıcı, yıllar önce oluşturduğu parola korumalı bir arşivin parolasını unuttu.
Kendi dosyası üzerinde yetkili parola kurtarma çalışması yürütülüyor.
Senaryo 3
Olay müdahale ekibi, ele geçirilen bir sistemde bulunan parola özetlerini analiz ederek saldırganın kullandığı zayıf kimlik bilgilerini belirlemeye çalışıyor.
16. Güvenlik Önerileri
Parola güvenliğini artırmak için:
En az 12–16 karakter uzunluğunda parola kullanın.
Büyük/küçük harf, rakam ve özel karakterleri birlikte tercih edin.
Her hizmet için farklı parola oluşturun.
Parola yöneticisi kullanmayı değerlendirin.
Çok faktörlü kimlik doğrulamayı (MFA) etkinleştirin.
Varsayılan parolaları değiştirmeden sistemleri kullanmayın.
17. Laboratuvar Fikirleri
Bu makaleyi desteklemek için aşağıdaki laboratuvarlar hazırlanabilir:
John the Ripper kurulumu
Wordlist kavramının incelenmesi
Rule Engine mantığının gösterimi
Hash türlerinin tanınması
Linux parola politikalarının değerlendirilmesi
Windows NTLM parola güvenliği analizi
Güçlü ve zayıf parola karşılaştırmaları
Parola uzunluğunun güvenliğe etkisi
Olay müdahale senaryolarında parola analizi
John the Ripper ve Hashcat karşılaştırması
18. Sonuç
John the Ripper, parola güvenliği denetimi ve eğitim amaçlı kullanılan en köklü açık kaynak araçlardan biridir. Farklı parola üretim stratejilerini desteklemesi, geniş format uyumluluğu ve platform bağımsız yapısı sayesinde hem eğitim laboratuvarlarında hem de kurumsal güvenlik değerlendirmelerinde önemli bir yer tutar.
Ancak unutulmamalıdır ki bu tür araçların amacı, sistemlere izinsiz erişim sağlamak değil; güvenlik açıklarını yetkili ve etik sınırlar içinde tespit ederek daha güçlü parola politikalarının uygulanmasına katkıda bulunmaktır.
Bu senaryo, özellikle siber güvenlik eğitimlerinde temel şifreleme mantığını ve parola zayıflıklarını öğrencilere veya okuyuculara aktarmak için harika bir temel oluşturuyor. Blogunuzda veya laboratuvar ortamında kullanabileceğiniz, pedagojik adımlara bölünmüş ve teknik detaylarla zenginleştirilmiş makale taslağını aşağıda bulabilirsiniz.
Laboratuvar: Şifreleme ve Brute-Force Araçlarıyla Parola Kurtarma
Günümüzde veri güvenliği, kurumsal politikaların en önemli parçalarından biridir. Peki ya korumak için kurduğumuz şifreleme sistemleri, parolaların unutulmasıyla kendi işleyişimizi tehdit ederse?
Senaryo: Panik Halindeki CFO
Çıkarılabilir medya kullanımına dair sıkı güvenlik politikaları olan büyük bir şirkette siber güvenlik analisti olarak çalışıyorsunuz. Şirket politikası gereği, taşınabilir USB belleklere yalnızca şifrelenmiş (encrypted) ve sıkıştırılmış (zipped) belgeler kopyalanabiliyor.
Şirketin Mali İşler Sorumlusu (CFO), acil bir iş gezisindeyken panik halinde sizinle iletişime geçiyor. USB belleğindeki şifreli zip dosyasından son derece kritik finansal belgeleri çıkarması gerekiyor, ancak belirlediği parolayı tam olarak hatırlayamıyor. Sadece parolanın sadece rakamlardan oluştuğunu ve çok uzun olmadığını (yaklaşık 4-5 haneli) hayal meyal hatırladığını belirtiyor.
Bir siber güvenlik uzmanı olarak, bu sınırlı bilgiyi (parola uzunluğu ve karakter türü) kullanarak fcrackzip gibi araçlarla bu dosyayı kurtarmanız gerekiyor. Ancak unutmayın: Aynı yöntemler, zayıf parolaları hedef alan siber saldırganlar tarafından da kullanılmaktadır.
Yasal Uyarı: Bu laboratuvar çalışması tamamen eğitim amaçlıdır. Burada gösterilen yöntemler, yalnızca yetkiniz olan dosyalar üzerinde ve sistemlerin güvenlik açıklarını anlamak/kapatmak amacıyla kullanılmalıdır. Gerçek hassas verileri korumak için zayıf parolalar KULLANILMAMALIDIR.
Bölüm 1: Dosyaları Oluşturma ve Şifreleme
Bu aşamada CFO'nun USB belleğindeki durumu simüle etmek için örnek bir metin belgesi oluşturacak ve bunu parolalı bir zip dosyası haline getireceğiz.
1.Laboratuvar Ortamını Hazırlama:Pardus / Debian Tabanlı Sistemler.
İlk olarak sisteminizde gerekli araçların (zip ve fcrackzip) kurulu olduğundan emin olun. Terminali açarak aşağıdaki komutu çalıştırın:
Bash
sudo apt update && sudo apt install zip fcrackzip -y
2.Örnek Veri Dosyası Oluşturma:
İçerisinde hassas verilerin bulunduğu örnek bir metin belgesi oluşturun:
Bash
echo "Çok gizli finansal raporlar ve Q3 bütçe detayları." > gizli_belge.txt
3.Dosyayı Şifreleyerek Sıkıştırma:
Oluşturduğumuz metin belgesini zip aracını kullanarak şifreleyelim. Parametre olarak vereceğimiz -e (encrypt) bayrağı, bizden bir parola isteyecektir. Laboratuvar amaçlı olarak parolayı 1995 olarak belirleyelim:
Bash
zip -e gizli_belge.zip gizli_belge.txt
Komutu girdikten sonra sizden parolayı (1995) iki kez girmeniz istenecektir. Yazdığınız karakterler terminalde görünmez.
4.Orijinal Dosyayı Silme ve Test:
Orijinal korumasız dosyayı sistemden kaldıralım ve zip dosyasının gerçekten şifreli olduğunu test edelim:
Bash
rm gizli_belge.txt
unzip gizli_belge.zip
Sistem sizden parola isteyecektir. Yanlış bir parola girerek (örn: 1234) erişimin engellendiğini doğrulayın.
Bölüm 2: Şifrelenmiş Zip Dosyası Parolalarını Kurtarma
CFO'dan aldığımız istihbarata göre parola sadece rakamlardan (0-9) oluşuyor ve 4 haneli. Bu kısıtlı bilgiyi kullanarak arama uzayını (search space) daraltacak ve fcrackzip ile bir kaba kuvvet (brute-force) saldırısı simüle edeceğiz.
1.Parametreleri Belirleme ve fcrackzip'i Çalıştırma:
Terminal üzerinden fcrackzip aracını kullanarak kaba kuvvet saldırısını başlatalım:
Bash
fcrackzip -u -c 1 -l 4-4 gizli_belge.zip
2.Komutun Anatomisini Anlama:Parametre İncelemesi.
Yukarıda kullandığımız komutun argümanları şu anlama gelmektedir:
-u (use unzip): Bulunan parolayı unzip ile test eder, böylece yanlış pozitif (false positive) sonuçların önüne geçer.
-c 1 (charset): Sadece rakamları (1 = numeric) denemesini söyler. (Örn: a küçük harfler, A büyük harfler içindir).
-l 4-4 (length): Parolanın minimum ve maksimum uzunluğunu belirler. CFO'nun verdiği bilgi sayesinde aralığı 4 karakterden başlatıp 4 karakterde bitiriyoruz.
3.Sonucu Analiz Etme ve Dosyayı Çıkartma:
Saniyeler içerisinde araç kombinasyonları deneyecek ve size parolayı sunacaktır:
PASSWORD FOUND!!!!: pw == 1995
Artık doğru parolayı bildiğinize göre dosyayı güvenle dışarı aktarabilirsiniz:
Bash
unzip gizli_belge.zip
Sonuç ve Güvenlik Çıkarımları
Bu senaryoda CFO'nun parolası zayıftı (sadece 4 haneli rakam) ve parolaya dair bazı ön bilgilerimiz vardı. Araç sadece $10^4$ (10.000) olası kombinasyonu denedi ve sonuca saliseler içerisinde ulaştı.
Peki ya parola 12 haneli olsaydı ve içinde büyük/küçük harf, rakam ve özel karakterler (-c aA1!) barındırsaydı? Kaba kuvvet (brute-force) yöntemiyle bu parolayı kırmak yıllar hatta yüzyıllar sürebilirdi. Bu laboratuvar, kurumsal ağlarda Neden karmaşık parola politikalarının zorunlu tutulduğunu açıkça göstermektedir. Bilinmeyen parolaları ele geçirmek isteyen siber suçlular, güçlü kriptografi ve uzun parolalar karşısında en büyük engelle karşılaşırlar.
Önceki senaryomuzu genişleterek, siber güvenlik eğitimlerinde ve CTF (Capture The Flag) yarışmalarında en sık karşılaşılan konseptlerden biri olan Sözlük (Dictionary) Saldırılarını laboratuvarımıza ekleyelim.
Brute-force (kaba kuvvet) saldırıları kısa ve öngörülebilir parolalar için etkili olsa da, parola uzadıkça arama uzayı devasa boyutlara ulaşır. Siber saldırganlar (ve güvenlik uzmanları) zaman kazanmak için sızdırılmış gerçek parolalardan oluşan kelime listelerini (wordlist) kullanırlar. Bunların en meşhuru, 2009 yılındaki bir veri ihlalinden elde edilen ve 14 milyondan fazla benzersiz parola barındıran rockyou.txt dosyasıdır.
Aşağıdaki bölümü, hazırladığınız eğitim makalesine veya laboratuvar föyüne doğrudan entegre edebilirsiniz.
Bölüm 3: Sözlük (Dictionary) Saldırısı ve rockyou.txt Kullanımı
Yeni Senaryo Gelişmesi: CFO, parolanın sadece rakamlardan oluşmadığını, yıllar önce bir sosyal medya hesabında kullandığı eski ve akılda kalıcı bir parola olduğunu hatırlıyor. Parolanın uzunluğunu veya karakter türlerini tam olarak bilmiyor. Kaba kuvvet saldırısı ile milyarlarca kombinasyonu denemek yıllar sürebileceğinden, bilinen zayıf parolaların bulunduğu bir kelime listesi (dictionary) üzerinden saldırı simüle edeceğiz.
1.rockyou.txt Dosyasının Hazırlanması:Kelime Listesi Temini.
Kali Linux gibi siber güvenlik odaklı dağıtımlarda rockyou.txt dosyası genellikle sıkıştırılmış halde bulunur. Pardus veya Ubuntu gibi bir laboratuvar sistemindeyseniz, bu dosyayı indirip çıkartmanız gerekebilir. Terminali açın ve şu komutları çalıştırın:
Bash
# Eğer sisteminizde yoksa, örnek bir wordlist indirelim
wget https://github.com/brannondorsey/naive-hashcat/releases/download/data/rockyou.txt
2.Yeni Bir Hedef Dosya Oluşturma:
Öğrencilerin veya katılımcıların denemesi için, rockyou listesinde sıkça karşılaşılan zayıf bir parolayı (örneğin superman123) barındıran yeni bir şifreli dosya hazırlayalım:
Bash
echo "Gizli şirket birleşme anlaşması detayları." > sirket_anlasmasi.txt
zip -e sirket_anlasmasi.zip sirket_anlasmasi.txt
İpucu: Komutu girdikten sonra parola olarak superman123 yazın. Orijinal dosyayı silmeyi unutmayın: rm sirket_anlasmasi.txt
3.fcrackzip ile Dictionary Saldırısı Başlatma:Sözlük Modu.
Şimdi fcrackzip aracına rastgele karakterler üretmek yerine hazırladığımız kelime listesini satır satır denemesini söyleyeceğiz. Bu işlem, kaba kuvvet saldırısına kıyasla çok daha verimlidir:
Bash
fcrackzip -u -D -p rockyou.txt sirket_anlasmasi.zip
4.Komutun Anatomisi:Parametre İncelemesi.
Sözlük saldırısında kullandığımız yeni parametrelerin anlamları şunlardır:
-D (Dictionary): Araca kaba kuvvet yerine bir kelime listesi kullanacağını belirtir.
-p rockyou.txt (Password file): Kullanılacak kelime listesinin dosya yolunu gösterir (önceki senaryoda bu parametreyi string olarak parola vermek için kullanmamıştık, ancak -D ile kullanıldığında dosya yolu belirtir).
5.Sonucu Analiz Etme:
Liste üzerinde satır satır okuma yapıldığı için araç, parolayı kısa süre içinde ekrana basacaktır:
PASSWORD FOUND!!!!: pw == superman123
Bu başarı, parolanın uzunluğundan bağımsız olarak, şifrenin daha önce sızdırılmış "zayıf parolalar" havuzunda yer almasından kaynaklanmaktadır.
Güvenlik Perspektifi: Neden Eşsiz Parolalar Kullanmalıyız?
Bir parola $11$ karakter uzunluğunda olsa bile (örneğin superman123), popüler bir kelime ve rakam kombinasyonundan oluşuyorsa saniyeler içinde kırılabilir. Bu laboratuvar çalışması; parola uzunluğunun tek başına yeterli olmadığını, parolaların tahmin edilemez ve her platform için eşsiz (unique) olması gerektiğini kanıtlamaktadır.
Öğrenciler veya sistem yöneticileri, bu zafiyetlerin önüne geçmek için parola yöneticileri (Password Managers) kullanma alışkanlığı edinmeli ve kurumsal ortamlarda bilinen zayıf parolaların kullanımını engelleyen aktif dizin politikaları (Password Filter) uygulamalıdır.
Yorumlar