OWASP Top 10: Yetersiz Kimlik Doğrulama Güvenlik Zafiyeti Nedir?

Kullanıcı Kimlik Doğrulaması Nedir?

Yalnızca yetkili kullanıcıların sadece ihtiyacı olan verilere erişim sağlaması web ve uygulama güvenliğinin anahtar bileşenidir.

Bunun sağlanabilmesi için kullanıcı kimlik doğrulaması gerekir.

Kimlik doğrulama zafiyetleri iki başlık altında incelenebilir:

1. Hatalı kimlik doğrulama (Improper Authentication)

2. Yetersiz Kimlik Doğrulama (Broken Authentication)

1. Hatalı kimlik doğrulama – (Improper Authentication)

Kullanıcı adları ve parolaların güvenli tutulması ve siber saldırganların yetkili bir kullanıcının bilgilerini ele geçirmesinin engellenmesi siber güvenlik açısından birincil derecede önem taşır. Fakat pratikte yaşanan yetersizlikler ve kullanıcı hataları genellikle kimlik doğrulamasında hatalı kimlik doğrulama zafiyetine neden olmaktadır.

Sonuç olarak uygulama ya da yazılım, bir kullanıcının kimliğini (oturum açma bilgilerini) yanlış bir şekilde doğruladığında zafiyet ortaya çıkar.

Ayrıca kaba kuvvet saldırıları (brute-force) ya da kimlik avı dolandırıcılıkları (phishing / oltalama saldırısı) gibi durumlarda kullanıcıların oturum açma bilgileri siber saldırganlar tarafından ele geçirilebilmekte ve saldırgan izinsiz olarak verilere erişim elde edebilmektedir. Saldırganlar bu yöntemlerle uygulama içerisinde belirli yetkiler elde edilebilir ya da hassas veriler ele geçirilerek ifşa edilebilir.

Örneğin, bir yazılım, uygulama içinde belirli ayrıcalıkları atamak için HTTP GET isteğinde iletilen “grup” parametresini kullanır.

Parametre “kullanıcı” ile eşitse, uygulama bilgileri görüntülemeye izin verir.

Eğer “yönetici” ile eşitse, sayfadaki bilgileri düzenlemek mümkün hale gelir:

http: // [ana bilgisayar] /index.php?page=1&group=user

http: // [ana bilgisayar] /index.php?page=1&group=admin

Saldırgan “grup” parametresinin değerini “admin” olarak değiştirebilirse, sayfada değişiklik yapabilir hale gelecektir.

Hatalı kimlik doğrulama zafiyeti nelere yol açabilir?

Yukarıda yer alan örnek zafiyetin nasıl olabileceğine dair basit bir örnektir ancak gerçek hayatta karşılaşılan senaryolarda SQL injection, Cross-Site Scripting, Path Traversal ya da yerel veya uzak dosya yerleştirme gibi farklı zafiyetlere yol açabilmektedir.

Saldırgan, uygulamaya ve kısıtlanmış alanlara yetkisiz erişim elde edebilir ve hassas bilgileri ele geçirme ve ifşa etme, uygulamayı değiştirme ve hatta uzaktan kod çalıştırma gibi işlemleri gerçekleştirebilir.

Özellikle farklı yetki seviyeleri kullanan çok kullanıcılı sistemler ve uygulamalar bu zafiyete karşı potansiyel olarak savunmasızdır.

Hatalı kimlik doğrulama zafiyetine karşı nasıl önlem alınabilir?

Uygulamaların bu zafiyetten etkilenmesine engel olmak amacıyla, kaba kuvvet (bruteforce) saldırılarını önleme ve oturum koruma mekanizmaları içeren güçlü kimlik doğrulama yöntemlerinin kullanılması önerilmektedir.

* Kimlik doğrulama saldırıları, OWASP’ın Top 10 uygulama güvenliği tehdit listesi içerisinde enjeksiyon saldırılarından sonra en büyük tehdit olarak görülmüştür.

2. Yetersiz Kimlik Doğrulama (Broken Authentication)

Hatalı kimlik doğrulama riski, belirli bir saldırı modeli veya uygulama güvenlik zafiyetiyle sınırlı değildir.

Kullanıcı kimlik doğrulama kontrolleri doğru uygulanmadığında veya tamamen gözden kaçtığında uygulamalar zafiyet barındırır hale gelir ve kullanıcı hesaplarının ele geçirilmesi riski de artar.

OWASP, yetersiz kimlik doğrulama hatalarından faydalanarak gerçekleştirilebilen saldırıları 3 ana başlık altında açıklamaktadır:

  1. Kullanıcı bilgilerini deneme (Credential Stuffing)
  2. Kaba kuvvet saldırıları ile erişim (Brute Force Access)
  3. Oturum çalma (Session Hijacking)

Kullanıcı bilgilerini deneme (Credential Stuffing) çeşitli veri ihlalleri sonucu internete düşmüş olan kullanıcı adı ve parola kombinasyonlarından oluşturulan listeleri kullanarak otomatize araçlar ile kullanıcı girişi yapmaya çalışmaktır.

Kullanıcıların genellikle farklı platformlarda aynı parolayı kullanma alışkanlığı olduğundan saldırganlar bu yöntem ile zaman zaman başarı sağlayabilmektedir.

Kaba kuvvet saldırıları ile erişim yöntemi, her bir parola ihtimalinin denenmesi ile doğru parolanın bulunmasına çalışılması anlamına gelmektedir. Saldırganlar internette kolay bir arama ile erişilebilen “sık kullanılan parolalar” listelerinden faydalanarak bu parolaları deneyen betikler kullanır ve otomatik araçların kullanılan parolayı bulmasını sağlamaya çalışır.

Kullanıcıların çok sayıda farklı hesap için parola kullanması gerektiğinden genel eğilimleri hatırlayabilecekleri kolay parolalar belirlemektir. Ayrıca farklı hesaplarda aynı parolaları kullanmaları da genellikle karşılaşılan bir durumdur. Bu nedenle kaba kuvvet saldırıları basit ve genellikle başarılı bir saldırı çeşidi haline gelir.

Oturum çalma meşru bir kullanıcının kimliği doğrulanmış oturumunun kötüye kullanılmasıdır. Oturum açıldıktan sonra, sistem genellikle kullanıcıya bir oturum kimliği (session ID) atar, böylece ziyaret edilen her yeni sayfa için yeniden oturum açmaya gerek kalmaz. Bu oturum kimliği, genellikle tarayıcıdaki URL’ye eklenen bir sayı veya kullanıcının cihazına yerleştirilen bir oturum çerezidir. Teorik olarak, kullanıcı oturumu kapattığında (oturumdan) kaldırılır.

Saldırganlar, trafiği izleyerek oturum kimliğini elde edebilirse, meşru kullanıcının oturumunu ele geçirebilir. Mevcut kullanıcının kimliği zaten doğrulanmış olduğundan, saldırgan o kullanıcıya izin verilen herhangi bir eylemi gerçekleştirebilir.

En yaygın oturum çalma saldırıları:

– Oturum jetonunu (token) tahmin etmek,

– Jetonu yakalamak,

– İstemci tarafı saldırılar (XSS, zararlı yazılım barındıran JavaScript Kodları, Truva atları vb.),

– Ortadaki adam (MITM) saldırıları,

– Tarayıcıda ortadaki adam (MITB) saldırılarıdır.

Yetersiz kimlik doğrulama nedeniyle ortaya çıkabilecek hasar uygulamaların işlevselliğini etkileyebilmektedir. Yönetici yetkilerine sahip tek bir hesabın ele geçirilmesi sonucu saldırganlar tüm hesaplara, sisteme ya da ağa erişim sağlayabilir.

Güvenliği ihlal edilen hesabın niteliğine bağlı olarak, saldırganlar hassas verilere erişim sağlayabilir veya kimlik hırsızlığı, dolandırıcılık gibi pek çok yönteme başvurabilir.

Kullanıcı bilgilerinin denenmesi ve kaba kuvvet saldırıları en sık görülen saldırı vektörleridir.

Çözüm önerileri

Kullanıcılar parola güvenliği konusunda eğitilmeli ve güçlü parola kullanımına yönlendirilmelidir.

NIST tarafından yayınlanan önerilerde aşağıdaki parola seçimlerinin yasaklanması gerektiği belirtilmiştir:

– Daha önceki veri ihlallerinde çalındığı bilinen parolalar (“En sık kullanılan parolalar” şeklinde yapılacak bir arama sonucunda çıkan parolaların kullanımı engellenebilir).

– Tek kelime içeren parolalar (sözlükte bulunabilen kelimeler).

– Aynı karakterin tekrar ettiği parolalar (aaaaaa, 123456, 1234abcd vb.)

– Kullanıcı adının, soyadının, doğum tarihinin parola olarak kullanımı

– Kullanılan servisin adının parola olarak belirlenmesi

** Öneri: https://sparta.com.tr/makaleler/parola-guvenligi-icin-onemli-adimlar/ linkinde yer alan PAROLA GÜVENLİĞİ İÇİN ÖNEMLİ ADIMLAR yazısına göz atabilir ve kullanıcıları buna uygun davranması için yönlendirebilirsiniz.

Bir diğer çözüm ise çoklu kimlik doğrulama sisteminin benimsenmesidir. 2 kademe kimlik doğrulamanın da atlatılabildiği bilinmekte bu nedenle çoklu kimlik doğrulama (multi factor authentication) önerilmektedir.

OWASP ayrıca, her kullanıcı için başarısız oturum açma girişimlerinin sayısının sınırlandırılmasını ve kaba kuvvet saldırılarını engellemek için izin verilen her girişim arasında artan bir süre belirlenmesini önermektedir.

Kullanıcı uzun bir süre işlem yapmadığında veya uygulamanın penceresi veya sekmesi kapatıldığında oturum jetonunun otomatik olarak geçersiz kılınması gibi doğru oturum yönetimi işlemleri gerçekleştirilmelidir.

Oturum yönetimi için OWASP tarafından ayrıntılı olarak hazırlanmış ayrıntılı bilgilere https://cheatsheetseries.owasp.org/cheatsheets/Session_Management_Cheat_Sheet.html linkinden erişebilirsiniz .

** Öneri: https://sparta.com.tr/blog/uygulama-guvenligi-kimlik-dogrulama/ linkinde yer alan UYGULAMA GÜVENLİĞİ : KİMLİK DOĞRULAMA yazısını da okumanızı öneririz.

Başa dön