Registration - Password Reset & Takeover Vulnerabilities
Last updated
Last updated
Kayıtlı kullanıcının kullanıcını adını almaya çalış.
Kullanıcı adını aynı yap ama maili farklı yap.
Aynı kullanıcı adını büyük harflerle dene.
Kayıt alanı varsa parolasını çok uzun bir şey dene dos olabilir.
victim@gmail.com@attacker.com
victim@attacker.com@gmail.com
Kaydolun, doğrulamayın, şifre değiştirme talebinde bulunun, değiştirin, hesabın aktif olup olmadığını kontrol edin.
Bozuk kimlik doğrulama ve oturum kusurları: Kaydol hesabı doğrulamadan şifremi unuttum de ve şifreyi değiştir. Hesabın aktif olup olmadığını kontrol et.
Giriş yaptıktan sonra kayıt sayfasındaki yönlendirmeleri kontrol edin
Hesap kayıtı sırasında rate limit.
İsim veya e-postada XSS
username@burp_collab.net mailini kullan ve istek gelip gelmediğini kontrol et.
1- Gelen mailde ki bağlantıyı decode etmeye çalış.
2- Peş peşe 2 tane sıfırlama bağlantısı iste ve eski bağlantı ile sıfırla.
5- Evil.com ile sıfırlama bağlantısını almak için X-Forwarded-Host: evil.com'u ekleyin
6- Şifre sıfırlama isteğinde farklı bir email adresi daha ekle
7- Cookieyi decode et. Tahmin edilebilirliğini kontrol et.
8- Cookie Expire Tarihine bak.
9- Cookie httponly ve secure flag bayraklarına bak.
10- Kullanıcının profil fotoğrafının url’ine bak diğer kullanıcıların fotolarına erişmeye çalış.
11- Aynı parametreden 2 tane eklemeyi dene.
12- Şifre sıfırlama istediğini intrudera ekle birden fazla mail gelip gelmediğini kontrol et. Eğer gelmiyorsa istekte ki gereksiz bir başlığın ufak bi kısmını değiştirerek gönder. Örneğin accept language.
13- Şifre sıfırlama bağlantısına tıkladıktan sonra farklı bir uygulamaya git referrer parametresinde sıfırlama tokenının iletilip iletilmediğine bak. (Password reset token leakage via referer)
14- Parola sıfırlama alanına bruteforce yaparak kullanıcıların adlarını tespit edilip edilmediğini kontrol et.
15- Maile gönderilen url’de genelde bi token olur ve bodysinde kullanıcı adı parola olur. Bu kullanıcı adını değiştirerek aynı token ile başka birinin şifresini değiştirmeyi dene, olmazsa tokenı komple silip öyle dene.
16- X-Forwarded-For başlığını dene uygulama bunu kabul ederse parola sıfırlamasını bu başlıkta ki adrese gönderebilir. Bu şekilde istediğimiz userın şifresini değiştirebiliriz.
17- Kullanıcı girişi yaptıktan sonra her kullanıcı kendi profil alanından mevcut şifresini değiştirebilir. Eğer burada hep parola hem kullanıcı adını alıyorsa kullanıcı adını değiştirerek başkasının parolasını değiştirmeyi deneyebiliriz. Mesela normalde girilen parola yanlışsa girilen eski parola yanlış der ya da yeni parolalar eşleşmiyor der. Başkasına ait kullanıcı adı girilir ve yeni parolalar farklı girilir. Eğer parola yanlış ise parola yanlış der eğer parola doğru ise yeni parolalar eşleşmiyor der. Bu şekilde parolayı bulmuş oluruz. Verilen cevabın içerisinde bir metin aramak için de burp intruderın optionsına gelip grep and match alanına ilgili metni yazabiliriz mesela parola eşleşmiyor gibi.
18- eğer parola json ile gidiyor ise birden fazla değer girerek brute denenebilir.
19- Parola sıfırlama isteği giderken gelen cevap veya giden istekte hassas veri olup olmadığını kontrol et. Eğer varsa diğer kullanıcılar için bu değerleri değiştirmeye çalış.
20- Parola sıfırlama bağlantısını bir kere kullandıktan sonra tekrar kullanılıp kullanılmadığını kontrol et.
21- Parola bağlantısını 2 kere farklı sekmelerde aç. Biri ile şifreyi değiştir ve giriş yap daha sonra 2. Sekmeden yeniden şifreyi değiştirmeyi dene. İzin vermezse ip adresini değiştirerek dene.
Add attacker email as second parameter using &
Add attacker email as second parameter using %20
Add attacker email as second parameter using |
Add attacker email as second parameter using cc
Add attacker email as second parameter using bcc
Add attacker email as second parameter using ,
Add attacker email as second parameter in json array
Look for Request and Response like these
Change Response
The reset tokens must have an expiration time, after it the token shouldn't be valid to change the password of a user.
Check if the expired token can be reused
Ref:
3- gibi bir istek yap.
4- gibi istek yap ve ssrf kontrol et.