- 5 May 2020
- 44
- 21
Merhabalar, değerli üyeler. Bugün oldukça yaygın olan ve kullanışlı olan bir zafiyetten bahsedeceğim.
USER ENUMERATİON NEDİR?
Türkçe adıyla kullanıcı numaralandırma bir veritabanında login veya sign up işlemiyle kullanıcı adını olup olmadığını veya ne olduğunu elde etmektir.
USER ENUMERATİON TÜRLERİ:
Bu işlem birkaç farklı yolla yapılabilir:
1-Hata mesajı bazlı:
Login formuna kullanıcı adi ve şifre girilir. Bazı siteler "kullanıcı adı veya şifre yanlış" derken bazıları "kullanıcı adı geçersiz" gibi mesajlar verebilir.
Eğer alınan yanıt kullanıcı adının yanlış olduğunu söylüyorsa brute force yapip alınan hata mesajı sifre yanlış hata mesajına eşit olana kadar deneme yapılır.Kullanıcı adı tespiti yapılabilir.
2-Geri dönüş süresi bazlı:
Bu yöntemde ise sunucuya login isteği gonderilir ve burp suite (web için) veya benzeri araçlardan response süresi ölçülür. Eğer kullanıcı adı hatası ve şifre hatası arasında belli bir süre farkı bulunuyorsa brute sonrasında alınan ms cinsinden response süresine göre incelenip kullanıcı adı tespit edilir.
3-Hesap blokajı bazlı:
Birkaç yanlış deneme sonrası " kullanıcı çok fazla deneme sebebiyle engellendi" benzeri bir mesaj alınıyorsa bu sitede o kullanıcı adının bulunduğu anlamına gelir. Brute force ile ayni username için yeterli deneme yapılır ardından gelen hata mesajı incelenip eğer blokaj elde edildiyse kullanıcı adi tespit edilir.
4-CAPTCHA bazlı:
Birkaç yanlış deneme sonrasi bize çoğu site captcha doğrulaması gösterir. Fakat kilit nokta şudur sadece kullanıcı gerçekten varsa gösterilir.
5-Çoklu doğrulama bazlı:
Birkaç yanlış deneme sonrası site bizden eğer kullanıcı varsa birden fazla doğrulama ister(şifre harici). Eğer yeterli sayıda deneme sonrası input sayısı artıyorsa kullanıcı adı tespit edilir.
6-Yeni kullanıcı açma bazlı:
En basit türlerindendir. Brute ile farklı isimlerle yeni kullanıcı açma denenir eğer kullanici varsa "geçersiz kullanıcı adı" benzeri bir hata verir.Bu hata mesajı sayesinde kullanıcı adı tespit edilir.
User Enumeration nerelerde kullanılır?
USER ENUMERATİON login işlemi yapılan ssh / admin panel/ user dashboard gibi yerlerde kullanılabilir.
Tek gereken responseleri iyi analiz etmek ve uygun yöntemi kullanmaktır.
Linux için enumeration toolu:
enum4linux:
Örnek kullanım :
>>
Bir sonra ki konuda basit bir ruby user enumeration aracı yapmaya çalışacağım.
Kaynak:
USER ENUMERATİON NEDİR?
Türkçe adıyla kullanıcı numaralandırma bir veritabanında login veya sign up işlemiyle kullanıcı adını olup olmadığını veya ne olduğunu elde etmektir.
USER ENUMERATİON TÜRLERİ:
Bu işlem birkaç farklı yolla yapılabilir:
1-Hata mesajı bazlı:
Login formuna kullanıcı adi ve şifre girilir. Bazı siteler "kullanıcı adı veya şifre yanlış" derken bazıları "kullanıcı adı geçersiz" gibi mesajlar verebilir.
Eğer alınan yanıt kullanıcı adının yanlış olduğunu söylüyorsa brute force yapip alınan hata mesajı sifre yanlış hata mesajına eşit olana kadar deneme yapılır.Kullanıcı adı tespiti yapılabilir.
2-Geri dönüş süresi bazlı:
Bu yöntemde ise sunucuya login isteği gonderilir ve burp suite (web için) veya benzeri araçlardan response süresi ölçülür. Eğer kullanıcı adı hatası ve şifre hatası arasında belli bir süre farkı bulunuyorsa brute sonrasında alınan ms cinsinden response süresine göre incelenip kullanıcı adı tespit edilir.
3-Hesap blokajı bazlı:
Birkaç yanlış deneme sonrası " kullanıcı çok fazla deneme sebebiyle engellendi" benzeri bir mesaj alınıyorsa bu sitede o kullanıcı adının bulunduğu anlamına gelir. Brute force ile ayni username için yeterli deneme yapılır ardından gelen hata mesajı incelenip eğer blokaj elde edildiyse kullanıcı adi tespit edilir.
4-CAPTCHA bazlı:
Birkaç yanlış deneme sonrasi bize çoğu site captcha doğrulaması gösterir. Fakat kilit nokta şudur sadece kullanıcı gerçekten varsa gösterilir.
5-Çoklu doğrulama bazlı:
Birkaç yanlış deneme sonrası site bizden eğer kullanıcı varsa birden fazla doğrulama ister(şifre harici). Eğer yeterli sayıda deneme sonrası input sayısı artıyorsa kullanıcı adı tespit edilir.
6-Yeni kullanıcı açma bazlı:
En basit türlerindendir. Brute ile farklı isimlerle yeni kullanıcı açma denenir eğer kullanici varsa "geçersiz kullanıcı adı" benzeri bir hata verir.Bu hata mesajı sayesinde kullanıcı adı tespit edilir.
User Enumeration nerelerde kullanılır?
USER ENUMERATİON login işlemi yapılan ssh / admin panel/ user dashboard gibi yerlerde kullanılabilir.
Tek gereken responseleri iyi analiz etmek ve uygun yöntemi kullanmaktır.
Linux için enumeration toolu:
enum4linux:
Örnek kullanım :
>>
enum4linux -U (WORDLİST) -o (TARGET)
Bir sonra ki konuda basit bir ruby user enumeration aracı yapmaya çalışacağım.
Kaynak:
What is User Enumeration?
User enumeration is a vulnerability that allows an attacker to determine whether a user exists in a particular application. It is commonly…
medium.com
Son düzenleme: