sitemde böyle bir javascript kodu çalışıyor fark edebileceğiniz gibi else if bölümünde
kullanıcı adı doğru ama şifre yanlışsa Şifre yanlış cıktısı ver diyen bir kod bloğu çalışıyor
bu nasıl istismar edilebilir?
github'dan username_list.txt gibi bir dosya bulup buradaki kullanıcı adlarını tek tek siteye gonderen ve giriş yapmaya çalışan bir kod yazabiliriz eğer site bize Şifre yanlış çıktısını veriyorsa kullanıcı adı mevcut şifre yanlış demektir bu durumdada buldugumuz kullanıcı adlarına brute force yapabiliriz yine githubdan en cok kullanılan sifreler dosyasını cekeriz ve denemelerimizi yaparız
sitemize bakalım
saldırımız login kısmına olacak kullanıcı adı şifre ve giriş yap'ın ID degerlerini alıcam ve koduma başlıycam :
cıktı :
admin ve furkanın şifresini bulduk
murat şifresini güçlü bir şekilde girdiği için onunkini bulamadık
bu brute force yöntemi kolay bir yöntemdi ufak bir önlem için şunları yapabilirsiniz:
1 ) şifre yanlış gibi bir çıktı vermeyip ---kullanıcı adı veya şifre yanlış--- çıktısı vererek kullanıcıların güvenliğini artırabilirsiniz
2 ) şifre ayarlanırken 6 karakterden uzun olmalı ve bir büyük harf içermeli diyebilirsiniz
------
3) 3 kere yanlış şifre girildikten sonra kullanıcının 3 dakika şifre girmesini engelleyebilirsiniz ---ama bunu yapmak kolay değil---
kullanıcı tarayıcıyı yeniden başlattıgında bu kod blogu güvenliğini yitirebilir
4) iki faktörlü kimlik dogrulama eklenebilir
iki faktörlü kimlik dogrulama ekleyemem ben o kadar javascript bilmiyorum
5) reqister kısmı brute force engelleme
reqister kısmında ise kayıt olma aşamasına bir brute force yapılabilir username list'leri tek tek denenebilir ve eğer gelen çıktıda
bu kullanıcı adı zaten mevcut diyen bir blok varsa o zaman kullanıcı mevcut demektir yeniden kullanıcı tehlikeye düşebilir ama buraya tutupda 3 kere yanlış girerse 3 dk beklet diye bir kod blogu yazmak saçma olur bunu nasıl koruyabilecegimizi bilmiyorum
------
ilk 2 önlemi alabilirim ve bu önlemleri aldığım biraz daha güvenli olan kod bloğu :
sifre yanlış girildiginde şifre yanlış yazdırmıyoruz artık ve buda hesapların kolay bir şekilde bulunmasını ve hacklenmesini zorlaştıracaktır ve hesap oluşturulurken kullanıcı zayıf bir şifre girerse şifre 6 karakterden uzun ve bir büyük harf içermek zorunda mesajı veriyoruz