SSL Sertifika Analizi Açık Port Tespiti Web Uygulama Tarama DNS Güvenlik Denetimi HTTP Başlık Analizi Yanlış Yapılandırma Tespiti Yazılım Parmak İzi Alt Alan Adı Tarama
SSL Sertifika Analizi Açık Port Tespiti Web Uygulama Tarama DNS Güvenlik Denetimi HTTP Başlık Analizi Yanlış Yapılandırma Tespiti Yazılım Parmak İzi Alt Alan Adı Tarama

Tüm Kayıtlar

Kategori Kimlik Doğrulama ve Oturum Yönetimi
Tipik Önem Derecesi Kritik
OWASP A07:2021 – Kimlik Doğrulama ve Tanımlama Hataları
CWE CWE-287 (Hatalı Kimlik Doğrulama), CWE-521 (Zayıf Parola Gereksinimleri), CWE-307 (Aşırı Kimlik Doğrulama Denemelerinin Kısıtlanmaması), CWE-384 (Oturum Sabitleme)
Diğer adları Kimlik ve Doğrulama Hataları, Zayıf Kimlik Bilgileri, Güvensiz Giriş, Oturum Yönetimi Zafiyetleri
Etkilenen sistemler Kullanıcı kimlik doğrulaması olan tüm web uygulamaları: giriş portalları, yönetim panelleri, API'ler, SSO uç noktaları, parola sıfırlama akışları
İlgili standartlar NIST SP 800-63B (Dijital Kimlik Kılavuzu), RFC 6749 (OAuth 2.0), RFC 7519 (JWT)

Genel Bakış

Kimlik doğrulama zafiyeti, bir uygulamanın kullanıcı kimliğini doğrulamak veya kimliği doğrulanmış oturumları yönetmek için kullandığı mekanizmaların yetersiz biçimde uygulanmasından kaynaklanan geniş kapsamlı bir zafiyet sınıfıdır. Bu kategorideki açıklar, saldırganların giriş kontrollerini tamamen atlatmasına, meşru kullanıcıların kimliğine bürünmesine veya amaçlanan oturum süresinin ötesinde erişimi sürdürmesine olanak tanır. Bu zafiyet, sürekli olarak en kritik web uygulaması güvenlik riskleri arasında yer almakta ve resmi olarak OWASP A07:2021 – Kimlik Doğrulama ve Tanımlama Hataları kapsamında sınıflandırılmaktadır.

Yaygın belirtiler şunlardır: kaba kuvvet korumasının yokluğu, zayıf veya varsayılan kimlik bilgilerinin kabul edilmesi, güvensiz parola depolama, tahmin edilebilir veya uzun ömürlü oturum belirteçleri, eksik veya atlatılabilir çok faktörlü kimlik doğrulama (MFA) ve hatalı parola sıfırlama iş akışları.

Nasıl çalışır?

Saldırganlar kimlik doğrulama zafiyetlerini çeşitli belgelenmiş tekniklerle istismar eder:

  • Credential Stuffing (Kimlik Bilgisi Doldurma): Başka ihlallerden sızdırılan kullanıcı adı/parola çiftlerinin otomatik olarak yeniden denenmesi. Parola yeniden kullanımının yaygın olduğu ve hız sınırlaması ya da anomali tespitinin bulunmadığı ortamlarda etkilidir.
  • Kaba Kuvvet / Parola Püskürtme: Bir veya birçok hesaba karşı sistematik parola denemesi. Parola püskürtme, hesap başına kilitleme eşiklerini aşmak amacıyla birçok hesaba karşı tek bir yaygın parolayı (örn. Bahar2024!) dener.
  • Varsayılan veya Zayıf Kimlik Bilgileri: Uygulamaların veya altyapının satıcı tarafından sağlanan varsayılan kimlik bilgileriyle bırakılması (örn. admin/admin) ya da kolayca tahmin edilebilen parolalara izin veren politikalar.
  • Oturum Belirteci Zayıflıkları: Tahmin edilebilir belirteç üretimi (düşük entropi), belirteçlerin HTTPS yerine HTTP üzerinden iletilmesi, eksik HttpOnly veya Secure çerez bayrakları, aşırı uzun oturum ömürleri veya çıkışta belirteçlerin geçersiz kılınmaması (CWE-613).
  • Oturum Sabitleme (CWE-384): Saldırgan kimlik doğrulamadan önce bilinen bir oturum tanımlayıcısı sağlar; uygulama başarılı girişte oturum kimliğini yenilemezse, saldırganın önceden yerleştirdiği tanımlayıcı geçerli hale gelir.
  • Güvensiz Parola Sıfırlama: Tahmin edilebilir güvenlik sorularına, yetersiz entropili belirteçlere, süresi dolmayan belirteçlere dayanan veya bir hesabın var olup olmadığını açığa çıkaran (kullanıcı numaralandırması) sıfırlama akışları.
  • Güvensiz Parola Depolama: Parolaların düz metin olarak, tersine çevrilebilir şifrelemeyle veya zayıf karma algoritmalarıyla (tuz olmadan MD5, SHA-1) depolanması; veritabanı ele geçirildiğinde toplu kimlik bilgisi kurtarmayı mümkün kılar.
  • MFA Atlatma: Tahmin edilebilir OTP tohumları, OTP tekrar kullanım korumasının yokluğu veya ikinci faktörü tamamen devre dışı bırakan geri dönüş mekanizmaları gibi MFA uygulamasındaki açıklar.

İş etkisi

Kimlik doğrulama zafiyetlerinin başarıyla istismar edilmesi; bireysel kullanıcıların hesaplarının tam olarak ele geçirilmesine ya da yönetici hesapları söz konusu olduğunda sistemin tamamen tehlikeye girmesine yol açabilir. Spesifik sonuçlar şunlardır:

  • Veri ihlali: Kişisel, finansal veya sağlık verilerine yetkisiz erişim; GDPR, HIPAA, PCI DSS ve benzeri düzenlemeler kapsamında bildirim yükümlülükleri doğurur.
  • Finansal dolandırıcılık: Saldırganlar işlem başlatabilir, ödeme verilerini sızdırabilir veya ele geçirilen hesapları doğrudan paraya çevirebilir.
  • Ayrıcalık yükseltme: Sıradan bir kullanıcı hesabına erişim, rol ayrımı zayıfsa yönetim arayüzlerine pivot noktası olarak kullanılabilir.
  • İtibar kaybı: Kamuoyuna yansıyan hesap ele geçirme vakaları müşteri güvenini zedeler ve kullanıcıları rakiplere yönlendirebilir.
  • Düzenleyici cezalar: Yeterli kimlik doğrulama kontrollerinin uygulanmaması, GDPR Madde 32 ve PCI DSS Gereksinim 8'de teknik koruma önlemleri gerektiren bir alan olarak açıkça atıfta bulunulmaktadır.
  • Hizmet kesintisi: Credential stuffing saldırıları, meşru kullanıcılar için performansı düşürebilecek önemli miktarda trafik oluşturur.

Nasıl düzeltilir?

  1. Güçlü parola politikaları uygulayın: En az 12 karakter uzunluğu zorunlu kılın. Yeni parolaları bilinen ihlal edilmiş parolalar listesiyle karşılaştırın (örn. HaveIBeenPwned API veya yerel bir engelleme listesi kullanarak). Kolayca aşılabilen karmaşıklık kurallarından kaçının (örn. P@ssw0rd). Karmaşıklık yerine uzunluğu ön plana çıkaran NIST SP 800-63B kılavuzunu izleyin.
  2. Çok faktörlü kimlik doğrulama (MFA) uygulayın: Tüm hesaplar için, özellikle ayrıcalıklı olanlar için MFA zorunlu kılın. SIM takas saldırılarına duyarlı SMS OTP yerine TOTP (RFC 6238) veya FIDO2/WebAuthn donanım anahtarlarını tercih edin. MFA'nın geri dönüş akışları aracılığıyla atlatılamadığından emin olun.
  3. Kimlik doğrulama denemelerini hız sınırlayın ve kilitleyin: Yapılandırılabilir sayıda başarısız denemeden (örn. 5–10) sonra aşamalı gecikmeler veya geçici kilitlemeler uygulayın. Otomatik istek kalıpları için CAPTCHA zorlukları uygulayın. Anormal giriş etkinliğini günlüğe kaydedin ve uyarı verin. Kilitlemenin hesap varlığına mı yoksa yanlış parolaya mı bağlı olduğunu açıklamaktan kaçının.
  4. Parolaları güçlü adaptif karma ile depolayın: Yeterli iş faktörü ve benzersiz kullanıcı başına tuz ile bcrypt, scrypt, Argon2id veya PBKDF2 kullanın. Parolaları asla düz metin olarak depolamayın veya parola karması için MD5/SHA-1 kullanmayın.
  5. Oturumları güvenli yönetin: Kriptografik açıdan güvenli bir sözde rastgele sayı üreteci (CSPRNG) kullanarak en az 128 bit entropiye sahip oturum tanımlayıcıları oluşturun. Çerezleri HttpOnly, Secure ve SameSite=Strict ya da Lax öznitelikleriyle ayarlayın. Oturum sabitlemesini önlemek için başarılı kimlik doğrulamada oturum kimliğini yenileyin. Uygulamanın risk profiline uygun mutlak ve atıl oturum zaman aşımları uygulayın.
  6. Çıkışta ve parola değişikliğinde oturumları geçersiz kılın: Çıkışta yalnızca istemci tarafı çerez silme değil, sunucu tarafı oturum yok etme sağlayın. Parola değiştirildiğinde veya hesap tehlikeye girdiğinde tüm aktif oturumları geçersiz kılın.
  7. Parola sıfırlama akışlarını güvenceye alın: Doğrulanmış bir kanala iletilen yüksek entropili, tek kullanımlık, süreli belirteçler (en az 128 bit, sona erme ≤ 15 dakika) kullanın. Hata mesajlarında hesap varlığını açıklamayın. Kullanımdan hemen sonra belirteci geçersiz kılın.
  8. Varsayılan kimlik bilgilerini ortadan kaldırın: Tüm sistem hesapları için ilk girişte kimlik bilgisi değişikliği zorunlu kılın. Dağıtım öncesinde altyapıyı ve üçüncü taraf bileşenleri bilinen varsayılan kimlik bilgileri açısından tarayın.
  9. Hesap ele geçirme tespiti uygulayın: Yeni coğrafyalardan, cihazlardan veya IP aralıklarından girişleri izleyin. Kullanıcıları tanıdık olmayan bağlamlardan gelen başarılı girişler hakkında bilgilendirin ve yetkisiz erişimi bildirme mekanizması sağlayın.
  10. Yerleşik bir kimlik doğrulama çerçevesi benimseyin: Mümkün olduğunda, özel kimlik doğrulama mantığı oluşturmak yerine OpenID Connect veya SAML 2.0 kullanan iyi denetlenmiş bir kimlik sağlayıcısına (IdP) kimlik doğrulamayı devredin.

Sensagraph, eksik kilitleme kontrolleri, güvensiz çerez öznitelikleri ve açıkta kalan varsayılan kimlik bilgileri gibi yaygın kimlik doğrulama zafiyeti göstergelerini otomatik olarak tespit eder.

Kaynaklar

Sıkça sorulan sorular

Kimlik doğrulama zafiyeti, bir kullanıcının kim olduğunun doğrulanma sürecindeki (kimlik doğrulama, kimlik bilgisi yönetimi, oturum işleme) zayıflıklara atıfta bulunur. Erişim kontrolü zafiyeti (OWASP A01:2021) ise kimliği doğrulanmış bir kullanıcının ne yapmasına izin verildiğinin belirlenmesindeki zayıflıklarla ilgilidir. İkisi birbiriyle ilişkili ancak farklı kavramlardır: kimlik doğrulama açığı saldırganın başkası olarak giriş yapmasına, erişim kontrolü açığı ise zaten kimliği doğrulanmış bir kullanıcının yapmaması gereken şeyleri yapmasına olanak tanır.

SMS OTP, tek faktörlü kimlik doğrulamaya kıyasla anlamlı bir iyileştirme sağlar; ancak SIM takas saldırılarına, SS7 protokolü müdahalesine ve mobil operatörlerin sosyal mühendisliğe kurban gitmesine duyarlı olduğu için daha zayıf bir MFA formu olarak değerlendirilir. NIST SP 800-63B, SMS OTP'yi kısıtlı kimlik doğrulayıcı olarak sınıflandırır. Daha yüksek güvence düzeyleri için TOTP uygulamaları (örn. RFC 6238 uyumlu kimlik doğrulayıcılar) veya kimlik avına dirençli FIDO2/WebAuthn donanım anahtarları kesinlikle tercih edilir.

Kaba kuvvet saldırısı, belirli bir hesabı hedef alarak aday parolaları sistematik biçimde üretir veya yineler (genellikle kelime listeleri veya karakter uzayı numaralandırması kullanarak). Credential stuffing ise önceki veri ihlallerinden elde edilen gerçek kullanıcı adı/parola çiftlerini kullanır; birçok kullanıcının kimlik bilgilerini birden fazla hizmetle yeniden kullandığını istismar eder. Credential stuffing tipik olarak daha verimlidir ve her denemenin makul, daha önce geçerli olmuş bir kimlik bilgisi çifti kullandığından (genellikle botnet altyapısı aracılığıyla birçok IP adresine dağıtılmış olarak) tespit edilmesi daha zordur.

Argon2id, Parola Karma Yarışması'nı kazanmış ve OWASP ile NIST tarafından onaylanmış güncel en iyi uygulama önerisidir. Argon2id kullanılamadığı durumlarda, en az 10 iş faktörüyle bcrypt veya uygun parametrelerle scrypt kabul edilebilir alternatiflerdir. FIPS doğrulamalı bağlamlarda en az 600.000 yinelemeyle PBKDF2-HMAC-SHA256 de kabul edilebilir. MD5, SHA-1 ve tuzsuz SHA-256, parola depolama için tamamen uygunsuz algoritmalardır.

Güvenli oturum çerezleri şu öznitelikleri içermelidir: Secure bayrağı (çerez yalnızca HTTPS üzerinden iletilir), HttpOnly bayrağı (çerez JavaScript tarafından erişilemez; XSS tabanlı oturum hırsızlığını azaltır), SameSite=Strict veya SameSite=Lax (CSRF saldırılarını azaltır), uygun bir Max-Age veya Expires değeri ve uygulamanın izin verdiği ölçüde dar kapsamlı Path özniteliği. Oturum tanımlayıcısının kendisinin, CSPRNG tarafından üretilmiş en az 128 bit entropiye sahip olması gerekir.

Hayır. HTTPS (TLS), kimlik bilgilerini ve oturum belirteçlerini iletim sırasında ağ düzeyindeki dinlemelerden korur; ancak kimlik doğrulama mantığının kendisini ele almaz. Bir veritabanı ihlali, kimlik avı veya kaba kuvvet yoluyla kimlik bilgilerini elde eden saldırgan, bağlantının şifreli olup olmadığından bağımsız olarak başarılı olur. HTTPS gerekli ama yeterli olmayan bir kontroldür; güçlü kimlik bilgisi politikaları, hız sınırlama, MFA, güvenli oturum yönetimi ve güvenli parola depolama ile birleştirilmelidir.