Bu ders, siber güvenlik eğitiminde standart bir konu olan brute-force (kaba kuvvet) saldırı mantığını, tamamen eğitim amaçlı ve kontrollü bir örnek üzerinden anlatır. Amaç, olası tüm kombinasyonları deneyerek çalışan bu tekniğin arka planda nasıl işlediğini anlamaktır — bu tekniği yalnızca kendi unuttuğunuz şifreleri kurtarmak için, kendi dosyalarınız/hesaplarınız üzerinde kullanın. Başkasına ait bir hesaba veya dosyaya izinsiz erişmeye çalışmak hem etik hem de yasal olarak ciddi sonuçlar doğurur.
Brute-Force'un Temel Mantığı
Brute-force, doğru şifreyi "tahmin etmek" yerine, olası her kombinasyonu sırayla deneyip doğru olanı bulana kadar devam eder. Bu yaklaşımın pratikteki gerçek sınırı, karakter uzayının büyüklüğüdür — sadece rakamlardan oluşan kısa bir şifre saniyeler içinde denenebilirken, büyük/küçük harf + rakam + sembol karışımı uzun bir şifre pratikte denenemeyecek kadar çok kombinasyon içerir.
4 Haneli Sayısal Bir Şifreyi Deneme
Öğretim amaçlı, yalnızca 0-9 arası rakamlardan oluşan 4 haneli bir şifreyi ele alalım:
rakamlar = "0123456789"
sifre = "4269" # gerçek senaryoda bilmediğiniz, unuttuğunuz şifre
bulundu = False
for b1 in rakamlar:
for b2 in rakamlar:
for b3 in rakamlar:
for b4 in rakamlar:
deneme = b1 + b2 + b3 + b4
if deneme == sifre:
print(f"Şifre bulundu: {deneme}")
bulundu = True
break
if bulundu:
break
if bulundu:
break
if bulundu:
break
Dört iç içe döngü, 4 hanenin her birinin 0'dan 9'a kadar tüm kombinasyonlarını (toplamda 10.000 olasılık) sırayla üretir. Doğru kombinasyona ulaşıldığında bulundu bayrağı True yapılır ve her seviyedeki döngü tek tek break ile durdurulur.
Neden Bu Kadar Hızlı Buluyor?
10.000 ihtimalin tamamını denemek bile normal bir bilgisayarda saniyeler sürer — bu, sadece rakamlardan oluşan kısa PIN benzeri şifrelerin neden güvenlik açısından zayıf kabul edildiğini somut olarak gösterir. Harf, büyük/küçük harf ve semboller eklendikçe olasılık uzayı katlanarak büyür ve aynı yaklaşım artık pratikte işe yaramaz hale gelir.
Gerçek Sistemlerde Neden Bu Kadar Kolay Değil?
Instagram, Twitter gibi platformlar birkaç yanlış denemeden sonra hesabı geçici kilitler, CAPTCHA ister veya IP'yi engeller — yani "dene, yanlışsa bir sonrakini dene" döngüsü gerçek dünyada karşınıza böyle savunma mekanizmaları çıkarır. Bu derste gösterilen saf mantık, yalnızca hiçbir hız/deneme sınırlaması olmayan yerel bir dosya gibi senaryolarda pratik olarak işe yarar — ki bu tam olarak sıradaki dersin konusu.
Sırada Ne Var?
Sırada, bu brute-force mantığını gerçek bir senaryoya — kendi unuttuğunuz bir Excel dosya şifresini kurtarmaya — uygulayacağız.