Kimlik Doğrulama Güvenlik Testi
Kimlik doğrulama ve oturum yönetimi, bir uygulamanın en kritik kapısıdır; buradaki tek bir kusur hesap ele geçirmeye ve toplu veri kaybına yol açabilir. Giriş, kayıt, çok faktörlü doğrulama (MFA), şifre sıfırlama ve oturum yönetimini uçtan uca test eder; kaba kuvvet direnci, session fixation, JWT/OAuth2 zayıflıkları ve hesap numaralandırma gibi riskleri kanıtla ortaya koyarız. Tüm testler yalnızca yazılı yetkilendirme ve tanımlı test penceresiyle yürütülür.
Bu hizmet hangi sorunu çözer?
Kimlik doğrulama, “çalışıyor gibi görünmesi” en aldatıcı olan alandır. Giriş formu doğru kullanıcıyı içeri alıyorsa çoğu ekip güvenli sanır; oysa asıl sorular mutlu-yolun dışındadır. Kaba kuvvete ve credential stuffing'e karşı hız sınırı ve kilitleme var mı? Şifre sıfırlama tokenı tahmin edilebilir, uzun ömürlü ya da yeniden kullanılabilir mi? MFA gerçekten zorunlu mu, yoksa belirli akışlarda atlanabiliyor mu? Oturum, giriş sonrası yenilenmiyorsa session fixation mümkün mü? JWT imzası düzgün doğrulanıyor mu, yoksa “none” algoritması veya imza doğrulama eksikliği token sahtekârlığına mı izin veriyor? OAuth2 akışında redirect_uri ve state parametreleri sıkı mı? Hesap numaralandırma; hata mesajları, yanıt süreleri veya durum kodlarıyla saldırgana geçerli kullanıcıları mı sızdırıyor? Bu soruların cevabı ancak akışları saldırgan gibi zorlayan, hedefe yönelik bir testle bulunur. Fonksiyonel testler bu incelikleri yakalamaz; güvenlik testi tam olarak bunları hedefler.
- Kaba kuvvet/credential stuffing koruması eksikliğiyle toplu hesap ele geçirme
- Session fixation veya zayıf oturum yönetimiyle oturum çalma
- Şifre sıfırlama akışındaki mantık hatasıyla hesap devralma
- JWT doğrulama zayıflığı veya OAuth2 yanlış yapılandırmasıyla kimlik sahtekârlığı
- Hesap numaralandırma ve MFA baypası ile hedefli saldırıların kolaylaşması
Bu sorunu görmezden gelmenin riski
Neyi değerlendirir ve düzeltiriz?
Giriş ve direnç
- Kaba kuvvet ve credential stuffing direnci: hız sınırı, kilitleme, CAPTCHA
- Hesap numaralandırma: hata mesajı, durum kodu ve zamanlama sızıntısı
- Şifre politikası ve zayıf/varsayılan kimlik bilgisi kontrolü
MFA ve kurtarma
- MFA zorunluluğu ve akışlar arası atlanabilirlik
- Şifre sıfırlama/hesap kurtarma token güvenliği ve tek kullanımlık olması
- Alternatif giriş yollarının (sosyal, magic link) güvenliği
Oturum yönetimi
- Session fixation ve giriş sonrası oturum yenileme
- Oturum süresi, boşta zaman aşımı ve çıkışta geçersiz kılma
- Çerez güvenliği: Secure, HttpOnly, SameSite bayrakları
Token ve federasyon
- JWT imza doğrulama, algoritma ve süre yönetimi
- OAuth2/OIDC akış, redirect_uri ve state parametre güvenliği
- Token yenileme (refresh) ve iptal (revocation) mekanizmaları
Ele aldığımız teknik alanlar
Nasıl çalışırız?
Tipik olarak neler tespit ederiz?
Aşağıdakiler illüstratif örneklerdir; gerçek müşteri verisi değildir.
Giriş sonrası oturum yenilenmemesi (session fixation) (örnek bulgu)
Oturum kimliği giriş öncesi ve sonrası aynı kalıyordu; saldırgan önceden bilinen bir oturum kimliğini kurbana kullandırarak oturumu ele geçirebiliyordu.
ÖneriBaşarılı girişte oturum kimliğini yenileyin; oturum kimliklerini yalnızca sunucuda güvenli üretin ve çıkışta tümünü geçersiz kılın.
Kaba kuvvet ve credential stuffing korumasının eksikliği (örnek bulgu)
Giriş uç noktasında hız sınırı, kilitleme veya ek doğrulama yoktu; bu, otomatik parola denemelerini ve toplu hesap ele geçirme girişimlerini kolaylaştırıyordu.
ÖneriAşamalı gecikme, hız sınırlama, hesap kilitleme ve şüpheli girişlerde ek doğrulama uygulayın; sızmış parola listelerine karşı kontrol ekleyin.
Hesap numaralandırmaya izin veren hata mesajları (örnek bulgu)
Giriş ve şifre sıfırlama, geçerli ve geçersiz kullanıcılar için farklı mesaj/zamanlama döndürüyordu; bu, geçerli hesapların keşfini kolaylaştırıyordu.
ÖneriTüm durumlarda tek tip, ayrım yapmayan yanıtlar döndürün ve zamanlama farklarını sabitleyin.
Ne teslim alırsınız, kimler için?
Ne teslim alırsınız?
- Kimlik akışı haritası ve risk özeti
- Kimlik/oturum bulgu kataloğu (kanıt + etki + CVSS)
- Hesap ele geçirme senaryoları (yetkili, kavram kanıtı düzeyinde)
- Oturum ve token güvenliği değerlendirmesi
- Önceliklendirilmiş giderme yol haritası
- Aktarım görüşmesi ve giderme sonrası yeniden test
Kimler için?
- Kullanıcı hesabı ve giriş barındıran tüm uygulamalar
- Ödeme ve finansal veri işleyen platformlar
- MFA/SSO devreye alan veya alacak ekipler
- Hesap ele geçirme riski gören veya olay yaşamış şirketler
Bu hizmeti ne zaman düşünmelisiniz?
- Yeni bir kimlik doğrulama/MFA mekanizması devreye alınırken
- SSO veya OAuth2/OIDC entegrasyonu sonrası
- Hesap ele geçirme şüphesi veya artan başarısız giriş uyarılarında
- Ödeme/finansal işlem eklenmeden önce güvence için
Sıkça Sorulan Sorular
Kaba kuvvet testi hesaplarımı kilitler mi?
MFA kullanıyoruz, yine de gerekli mi?
JWT güvenliğini nasıl test ediyorsunuz?
Hesap numaralandırma gerçekten önemli mi?
Şifre sıfırlama akışını da test ediyor musunuz?
OAuth2 entegrasyonumuz güvenli mi?
Bu API güvenlik testinden farklı mı?
Sonrasında %100 güvenli olur muyum?
İlgili hizmetler, araçlar ve rehberler
Web Uygulama GüvenliğiAPI Güvenlik Değerlendirmesi
Web Uygulama GüvenliğiWeb Uygulama Güvenlik Değerlendirmesi
Web Uygulama GüvenliğiSızma Testi (Pentest)
Web Uygulama Güvenliği
Kimlik Doğrulama Güvenlik Testi için başlayalım
Kapsamı netleştirelim, önceliklerinizi belirleyelim ve size özel, şeffaf bir güvenlik yol haritası çıkaralım — abartılı vaat değil, ölçülebilir risk azaltma.