Konuyu Okuyanlar: 1 Ziyaretçi

OWASP Top 10 2025 Türkçe: Web Uygulama Güvenliğinde Yeni Liste

OWASP Top 10 2025 Türkçe: Web Uygulama Güvenliğinde Yeni Liste
[Resim: attachment.php?aid=14]

OWASP Top 10 2025: Türkçe Detaylı Rehber

Merhaba TurkTeam,

OWASP Top 10, web uygulama güvenliğinde yıllardır standart farkındalık belgesi. 2025 sürümü veri ve güvenlik trendlerine göre güncellendi; liste 2021'den önemli ölçüde farklı. Bu rehberde her maddeyi Türkçe özetliyor, örnek senaryo ve savunma önerisi veriyoruz.

Konuda Anlatılacaklar
  1. 2025 listesi neden değişti?
  2. A01-A10 maddelerinin her biri: tanım, örnek, savunma
  3. Kendi uygulamanızda hızlı kontrol listesi
  4. Kaynakça

2025 Listesi (Resmi Sıra)
  1. A01:2025 - Broken Access Control (Kırık Erişim Kontrolü)
  2. A02:2025 - Security Misconfiguration (Güvenlik Yanlış Yapılandırması)
  3. A03:2025 - Software Supply Chain Failures (Yazılım Tedarik Zinciri Hataları)
  4. A04:2025 - Cryptographic Failures (Kriptografik Hatalar)
  5. A05:2025 - Injection (Enjeksiyon)
  6. A06:2025 - Insecure Design (Güvensiz Tasarım)
  7. A07:2025 - Authentication Failures (Kimlik Doğrulama Hataları)
  8. A08:2025 - Software or Data Integrity Failures (Yazılım veya Veri Bütünlüğü Hataları)
  9. A09:2025 - Security Logging and Alerting Failures (Güvenlik Loglama ve Alarm Hataları)
  10. A10:2025 - Mishandling of Exceptional Conditions (Olağandışı Durumların Hatalı İşlenmesi)

A01 - Broken Access Control
Hâlâ listenin zirvesinde. Kullanıcının yetkisi olmayan kaynağa erişmesi: IDOR (başkasının faturasını ID değiştirerek görme), yatay/dikey yetki aşımı, zorla göz atma (forced browsing).
Kod:
# Kötü örnek (kavramsal): sunucu tarafında sahiplik kontrolü yok GET /api/invoices/1842 # İyi yaklaşım: oturumdaki kullanıcı ile kaynak sahibi eşleşmeli if invoice.owner_id != current_user.id: return 403
Savunma: Sunucu tarafında her istekte yetki kontrolü, varsayılan reddet, CORS'u sıkı tut, dizin listelemeyi kapat.

A02 - Security Misconfiguration
2025'te bir basamak yükseldi. Varsayılan parolalar, gereksiz açık portlar, ayrıntılı hata mesajları, yanlış bulut depolama izinleri (açık S3 kovası gibi).
Savunma: Hardening checklist, Infrastructure as Code ile tekrarlanabilir yapılandırma, staging ile production'ın ayrı sırları.

A03 - Software Supply Chain Failures
Yeni / yeniden çerçevelenmiş kritik madde. Bağımlılık zehirleme, ele geçirilmiş paket, imzasız güncelleme, CI/CD boru hattı ele geçirme.
Kod:
# Bağımlılıkları kilitleyin ve denetleyin npm ci --ignore-scripts npm audit --production # Python pip install -r requirements.txt --require-hashes pip-audit
Savunma: SBOM, imzalı paketler, bağımlılık tarama, en az ayrıcalıklı CI token'ları.

A04 - Cryptographic Failures
Eski "Sensitive Data Exposure" ailesinin devamı. Zayıf algoritmalar (MD5/SHA1 parola için), düz metin HTTP, sabit IV, anahtarların kodda saklanması.
Savunma: TLS 1.2+, parola için Argon2/bcrypt, anahtarları HSM/KMS'te tutun, PII'yi şifreleyin.

A05 - Injection
SQLi, komut enjeksiyonu, LDAP, NoSQL, ORM kötüye kullanımı hâlâ yaygın.
Kod:
# Parametreli sorgu (iyi) cursor.execute("SELECT * FROM users WHERE email = %s", (email,)) # String birleştirme (kötü) # cursor.execute(f"SELECT * FROM users WHERE email = '{email}'")

A06 - Insecure Design
Kod hatası değil, tasarım hatası: Tehdit modellemesi yapılmamış iş akışları, "güven güvenlikten önce" varsayımları.
Savunma: Threat modeling (STRIDE), güvenli tasarım kalıpları, iş mantığı testleri.

A07 - Authentication Failures
Zayıf parola politikası, credential stuffing'e açık giriş, oturum sabitleme, MFA eksikliği.
Savunma: MFA, rate limiting, güvenli oturum çerezleri (HttpOnly, Secure, SameSite), breached password kontrolü.

A08 - Software or Data Integrity Failures
İmzasız güncellemeler, güvensiz CI/CD, serileştirme saldırıları, CDN üzerinden sunulan bütünlüğü doğrulanmamış script'ler.
Savunma: Subresource Integrity (SRI), imzalı release, serileştirmede güvenilmeyen girdiyi reddetme.

A09 - Security Logging and Alerting Failures
Sadece log tutmak yetmez; alarm da üretmek gerekir. Başarısız giriş patlaması, yetki reddi artışı, admin işlemleri izlenmeli.
Kod:
# Örnek: başarısız girişleri say (kavramsal) # SIEM kuralı: 5 dk içinde aynı IP'den 20+ failed login -> alarm

A10 - Mishandling of Exceptional Conditions
2025'in yeni / yeniden adlandırılmış maddesi. Hata, timeout, yarış durumu, beklenmeyen durum kodları güvenli şekilde ele alınmazsa bilgi sızıntısı veya yetki aşımı doğabilir.
Savunma: Fail-safe varsayılanlar, genel hata sayfaları, özel hata ayrıntısını yalnızca log'a yazın.

Hızlı Kontrol Listesi
  • Her API uç noktası için yetki testi yazıldı mı?
  • Bağımlılıklar kilitli ve taranıyor mu?
  • TLS ve modern kriptografi zorunlu mu?
  • Giriş alanları parametreli / doğrulanmış mı?
  • MFA ve rate limit var mı?
  • Log + alarm kuralları tanımlı mı?

Kaynakça
Görsel: TurkTeam özgün kapak görseli.

Alıntı:Yasal Uyarı: Bu konudaki teknik örnekler yalnızca kendi uygulamalarınızda veya yazılı izinli test ortamlarında kullanılmalıdır. İzinsiz güvenlik testleri TCK 243-245 kapsamında suçtur.


Ek DosyalarEkran Görüntüleri
   
Cevapla



Hızlı Menü: