Kimlik Doğrulama(Authentication) Sisteminin Token Manipülasyonu ile Bypass Edilmesi

Web uygulamalarında genellikle üyelik sistemleri mevcuttur. Üyelik işlemleri için kullanıcılardan çeşitli bilgiler istenir. Bu bilgiler username, password, doğum tarihi vb. değerlerdir. Bunlarla birlikte üyeleri birbirinden ayırmak için veri tabanında üye bilgilerini  tutan tabloda  Üye ID değeri tutulur. Bu ID değeri düzgün yapılandırılmamışsa üyeler arasında bu ID değerleri ile dolaşılabilinir. Buna yatay ve dikey yetki arttırımı da denilebilinir.
Bunu test edelim.
Aşama-1: Bir üye kaydı yapalım.


Aşama-2: test üyesi ile giriş yapalım.



Aşama-3: Bu üyenin cookie bilgilerine bakalım.

username=test   &&    ID=19


Aşama-4:Başka bir üye ekleyelim.

Aşama-5: test2 üyesi ile giriş yapalım.
             
Aşama-6: test2 üyesinin cookie bilgilerine bakalım.
username=test2  &&  ID=20 olduğunu görüyoruz.

Dikkat edilirse test ile test2 kullanıcıların ID değerleri arasında 1 fark var. Başka bir üye oluşturduğumuzda onunda ID değeri de 21 olacak.Şimdi bu zafiyeti kullanarak üyeler arasında dolaşalım.

Yukarıdaki resimde test2 üye login iken ID değerini Cookie Manager eklentisi sayesinde  test  üyesinin ID değeri ile değiştiriyoruz.
test ID=19    test2 Id=20  // burada ID değerlerini değiştirerek üyeler arasında gidip gelebiliriz.
Peki şöyle düşünelim. Üye tablosunda ilk üye kim olur genellikle. Normal şartlar altında admin olur.Peki onun ID değerini test üyesine yazarsak ne olur.Görelim.



Sonucu görelim. Aşağıdaki resimde de görüldüğü gibi test üye login iken ID değerine 1 yazdığımızda admin üyesi olduk.

Bu çok tehlikeli bir saldırıdır.Yetki düzeyi ile oluşturulmuş sitelerde bu şekilde var olan açıklık  ile yetkilerin bir anlamı kalmaz.Çünkü yetkisiz bir üye ID değeri değişikliği ile yetkili üye ID değerlerine erişebilir.
Bu nedenle veritabanı yapılandırılması çok iyi dizayn edilmeli ve yetki işlemlerine aracılık eden kolon yapıları birbiri ile bağlantı kurulamayacak şekilde oluşturulmalıdır.

Yorumlar

Bu blogdaki popüler yayınlar

Wamp Server ile Yerel Ağınızda Site Yayınlama

Web Pentest İşlemlerinde Burp Suite Kullanımı-1

Wireshark Filtreleme Komutları