Authentication Testing
Yöntemler
Şifrelenmiş Bir Kanal Üzerinden Taşınan Kimlik Bilgilerinin Test Edilmesi
Aşağıdaki gibi hassas veriler içeren hiçbir isteğin HTTP tarifiği üzerinden gönderilmemesi gerekir.
Parolalar veya şifreler
Body kısmındaki Tokenler
Çerezlerin içinde Hesap veya şifre sıfırlama kodları
Sunucu bir session tokeni için çerez bilgisi döndürürse, istemcinin çerezi daha sonra şifrelenmemiş kanallar üzerinden ifşa etmesini önlemek için çerez Secure flag de içermelidir.
Varsayılan Credential Testi
Eğer uygulama giriş paneli içeriyorsa varsayılan kullanıcı bilgileri ile giriş yapmayı deneyebiliriz. Ayrıca aşağıdaki gibi çok kullanılar bilgileri deneyebiliriz.
Zayıf Lock Out Mekanizması
Öncelikle hesap kilitleme mekanızması var mı kontrol ediyoruz. Kaç yanlış denemede kilitleniyor ve nasıl geri açılıyor.
Kilit Açma Mekanizması
Kilit açma bağlantısı, bir saldırganın bağlantıyı tahmin etmesini veya tekrar oynatmasını ve gruplar halinde kaba kuvvet saldırıları gerçekleştirmesini engellemek için tek seferlik benzersiz bir bağlantı olmalıdır.
Bir kilit açma mekanizmasının yalnızca hesapların kilidini açmak için kullanılması gerektiğini unutmayın. Parola kurtarma mekanizması ile aynı değildir, ancak aynı güvenlik uygulamalarını takip edebilir.
Captcha Mekanizması
Challange aritmetik veya tahmin edilebilir olmamalı.
HTTP Response code ile kontrol yapılmamalı.
Sunucu tarafı mantığı varsayılan olarak başarılı bir çözüme sahiptir.
CAPTCHA meydan okuma sonucu hiçbir zaman sunucu tarafında doğrulanmaz.
CAPTCHA giriş alanı veya parametresi manuel olarak işlenir ve yanlış bir şekilde doğrulanır veya kaçar.
CAPTCHA'yı çözmeden istek göndermeyi deneyin.
Yanlış Captcha ile göndermeyi deneyin.
Captcha değeri client-side tutuluyor olabilir.
Zaten kullanılmış bir kodu deneyin.
Cookie olmadan isteği gönderin belki cookie olmadığında kontrol edilmiyordur.
Çok adımlı captca varsa direkt son adımı göndermeyi deneyin.
Belki başka endpointte captcha koruması yoktur. (Örneğin aynı isteğin mobil apisi)
Kaynaklar
Last updated