Python ile Brute Force (Kaba Kuvvet) Şifre Deneme Mantığı Nasıl Çalışır?

kusha · 03 Ağustos 2026 · 5 dk okuma

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.