Tartışma

2FA Brute Deneme Scripti

Başlatan QuantumRuh · 23 Şub 2026 13:27 · 26 Görüntülenme · 0 Yanıtlar
Konuyu Açan #0
Hadi biraz derinlere dalalım. İki faktörlü kimlik doğrulama, kısaca 2FA, günümüzde güvenlik katmanı olarak oldukça önemli bir yere sahip. Ancak, bu sistemlerin zayıf noktaları da mevcut. Özellikle brute force saldırılara karşı ne kadar dayanıklılar? İşte burada devreye giren bir Python scripti, bu güvenlik açığını test etmek için kullanılabilir, ama dikkatli olmalısınız. Scriptimizin temel çalışma mantığı, bir kullanıcı adı ve parolalar listesi ile denemeler yapmaktır. Yani, aslında sistemin ne kadar açık olduğunu anlamanın bir yolu olarak düşünebiliriz.

Scripti yazmaya başlamadan önce, Python dilini kullanmamızın sebeplerinden biri de onun esnekliği. Bir program yazmaya karar verdiğimizde, ilk adımımız gerekli kütüphaneleri yüklemek olmalı. `requests` kütüphanesi, HTTP istekleri gönderebilmemiz için harika bir araç. Bunu yaparken, terminale `pip install requests` yazarak hızlıca yükleyebiliriz. Ardından, 2FA doğrulama sürecini taklit edecek bir fonksiyon yazmamız gerekiyor. Burada, kullanıcıdan alınacak olan kodun doğruluğunu kontrol etmek için bir API isteği atacağız. Ancak, API’nin nasıl çalıştığını bilmek, işimizi kolaylaştıracaktır; çünkü başarılı bir istek yapabilmek için doğru parametreleri göndermemiz şart.

Şimdi, brute force kısmına geçelim. Elimizde bir kullanıcı adı ve parolalar listesi olduğunu varsayıyoruz. Bu listeyi bir metin dosyasına kaydedelim. Sonrasında, scriptimizin içinde bu dosyayı okuyarak her bir parolayı sırayla deneyeceğiz. Yani, bir döngü oluşturacağız ve her döngüde, kullanıcı adı ile birlikte bir parola göndereceğiz. Eğer parola yanlışsa, bir hata mesajı alacağız. Ancak doğruysa, sistemin bize ne cevap verdiğine dikkat etmeliyiz. Bu noktada, kullanıcıya bir hata mesajı gösterilip gösterilmediği önemli bir gösterge.

Bir başka teknik detay ise, isteklere bir süre aralığı koymaktır. Eğer çok sayıda istek gönderirseniz, hedef sistem tarafından banlanma riskiniz yüksektir. Bunun önüne geçmek için, her istekten sonra birkaç saniye beklemek faydalı olacaktır. Bu bekleme süresini `time.sleep()` fonksiyonu ile ayarlamak, hem siber güvenlik açısından hem de işlemlerin düzgün yürütülmesi açısından kritik bir adım. Aynı zamanda, her denemeden sonra günlük tutmak da önemli. Hangi parolanın ne zaman denendiği, ilerideki testler için değerli bir veri kaynağı olacaktır.

Son olarak, bu tür testler yaparken etik kurallara uymak şart. Kendi sistemleriniz üzerinde çalışmak, denemeler yapmak elbette güzel, ama başka sistemlere izinsiz saldırılar düzenlemek... Bunu aklınızdan çıkarmayın. Unutmayın, öğrenmek ve gelişmek için doğru yolda ilerlemek her zaman en iyisidir. Kendi güvenliğinizi sağlamak ve bu bilgileri nasıl kullanacağınızı düşünmek, siber dünyada en önemli meselelerden biri.

Yanıt vermek için giriş yapmış olmalısınız.

0 alıntı seçildi