İçeriğe atla
0 XP 0
13 dkderinleşmeyle 15 dk45 XP6 etkinlik

OWASP Top 10 2025 haritası

Bu derste
  • OWASP Top 10:2025'in on kategorisini, 2021'den farklarını ve bir bulguyu CWE kimliği üzerinden doğru kategoriye eşlemeyi öğren.
  • Haritayı bir kontrol listesi değil, önceliklendirme aracı olarak okursun.
  • Her kategorinin bu yolda hangi modülde derinleştiğini görürsün.

Puan bütün etkinlikleri cevaplayınca hesaba yazılır. Bu dersi tamamlayınca +45 XP alacaksın. Giriş yapmadan ilerlersen puan yalnız bu tarayıcıda durur.

OWASP (Open Worldwide Application Security Project), yazılım güvenliğini iyileştirmek için çalışan kâr amacı gütmeyen bir vakıftır. Rehberlerini ve araçlarını gönüllü bir topluluk açık kaynak olarak üretir. En bilinen ürünü Top 10 listesidir.

Liste, web uygulamalarında en sık görülen ve en çok zarar veren riskleri on kategoriye indirger. Geliştirici, test uzmanı ve yönetici bu listeyle aynı dili konuşur.

Bir test raporuna “A01 bulgusu” yazdığında karşındaki kişi neyi kastettiğini hemen anlar. Bu derste 2025 sürümünü dört açıdan okuyacaksın. Önce kategorileri tanıyacak, sonra verinin nereden geldiğini göreceksin. Ardından 2021'den bu yana neyin değiştiğini öğrenecek, en son bir bulguyu CWE kimliği üzerinden doğru kategoriye eşleyeceksin.

On kategori, dört aile

2025 listesi A01'den A10'a kadar numaralanır. Numara sıralamayı gösterir: A01, verinin ve topluluğun en ciddi bulduğu risktir. Her kategori tek bir zafiyet değildir.

Birbirine yakın zayıflıkların bir kümesidir ve bu zayıflıklar CWE (Common Weakness Enumeration) kimlikleriyle tanımlanır. CWE, MITRE'nin yönettiği yazılım zayıflığı sözlüğüdür. Örneğin SQL enjeksiyonu CWE-89, yol geçişi CWE-22 kimliğini taşır.

2025 listesinde bir kategoriye ortalama 25 CWE düşer. En kalabalık kategori olan A01 tam 40 CWE içerir. Aşağıdaki tabloda her kategorinin Türkçe adını, İngilizce aslını ve tek satırlık özünü görüyorsun. İngilizce adları da tanı, çünkü raporlarda ve araç çıktılarında o adlar geçer.

A01 Bozuk erişim denetimi (Broken Access Control)
    kim neye erişebilir sorusu atlanır
A02 Güvenlik yanlış yapılandırması (Security Misconfiguration)
    varsayılan ayar, açık panel
A03 Yazılım tedarik zinciri hataları (Software Supply Chain Failures)
    güvenilmeyen bağımlılık, derleme hattı
A04 Kriptografik hatalar (Cryptographic Failures)
    zayıf ya da eksik şifreleme
A05 Enjeksiyon (Injection)
    doğrulanmamış girdi sorgu ya da komut olur
A06 Güvensiz tasarım (Insecure Design)
    tehdit modeli hiç yapılmamış
A07 Kimlik doğrulama hataları (Authentication Failures)
    giriş ve oturum zayıf kurulmuş
A08 Yazılım ya da veri bütünlüğü hataları (Software or Data Integrity Failures)
    imzasız güncelleme, doğrulanmamış veri
A09 Güvenlik günlüğü ve uyarı hataları (Security Logging and Alerting Failures)
    saldırı iz bırakmadan geçer
A10 İstisnai durumların yanlış yönetimi (Mishandling of Exceptional Conditions)
    hata anında güvenlik atlanır
OWASP Top 10:2025: Türkçe ad, İngilizce asıl ve kısa öz.

Tabloyu dört aileye ayırırsan ezberden kurtulursun. Denetim ailesi kimin neye erişebileceğini sorar: erişim denetimi (A01) ve kimlik doğrulama (A07). Giriş ailesi dışarıdan gelen veriye ve beklenmeyen kullanıma bakar: enjeksiyon (A05) ve güvensiz tasarım (A06). Yapı ailesi uygulamanın nasıl kurulduğunu sorar: yanlış yapılandırma (A02), tedarik zinciri (A03), kriptografi (A04) ve bütünlük (A08).

Gözlem ailesi bir şey ters gittiğinde ne olduğunu sorar: günlükleme ve uyarı (A09) ile istisna yönetimi (A10). Bu gruplama OWASP'ın resmî ayrımı değildir, haritayı akılda tutmak için kurduğun bir çerçevedir. Yine de pratik bir faydası var.

Bulgunun ailesini bilirsen kimin düzelteceğini de tahmin edersin. Denetim ve giriş hatalarını çoğu zaman geliştirici, yapı hatalarını çoğu zaman altyapı ekibi kapatır.

Etkinlik 1 / 6

Her OWASP kategorisini kısa açıklamasıyla eşle.

Soldan bir tane seç, sağdan eşini seç. Kullanılmış bir seçeneği yeniden seçersen yeni öğeye taşınır.

Liste nasıl derleniyor, ne işe yarar

2025 listesi iki kaynaktan beslenir. Birincisi katkı verisidir. Güvenlik firmaları ve kurumlar, test ettikleri uygulamaları ve bu uygulamalarda buldukları CWE'leri OWASP'a gönderir.

2025 sürümü için 2,8 milyonu aşkın uygulamanın verisi toplandı ve 589 farklı CWE incelendi. Bu sayı 2021'de 400'e yakındı, 2017'de ise yaklaşık 30'du.

İkinci kaynak topluluk anketidir. Anket, test araçlarının henüz ölçemediği riskleri sahadaki uzmanlara sorar. OWASP kategorilerin sekizini veriden, ikisini anketten seçer. Nedeni açıktır: veri geçmişe bakar.

Yeni bir zayıflığı güvenilir biçimde test eden araçların yaygınlaşması yıllar sürer. 2025'te anket iki riski öne çıkardı. Katılımcıların yarısı tedarik zincirini birinci sıraya koydu. Veride hep az görünen günlükleme ve uyarı da listeye yine anketle girdi.

Veride sayılan şey bir zafiyetin kaç kez bulunduğu değildir. Kaç uygulamada en az bir kez bulunduğudur. Buna görülme oranı (incidence rate) denir.

Ayrım önemlidir. Otomatik tarayıcı aynı açığı bir uygulamada dört bin kez raporlayabilir, elle test eden kişi ise bir kez yazar. Bulguyu değil uygulamayı sayınca bu şişme ortadan kalkar. A01 bu ölçüde öne çıkar.

Test edilen uygulamaların ortalama yüzde 3,7'sinde bu kategorideki 40 CWE'den en az biri bulundu. A01, 1,8 milyonu aşkın kayıtla verideki en kalabalık kategoridir. İlişkili CVE sayısı 32 bini geçer ve bu sayıda ikinci sıradadır. Liste neden bu sırada sorusunun cevabı bu sayılarda ve CVE'lerin sömürü ile etki puanlarında yatar.

Derinleş:Risk puanı nasıl hesaplanıyor

OWASP her kategori için bir risk puanı hesaplar ve sıralamanın veri tarafını bu puana dayandırır. Puanın bir yarısı katkı verisinden gelir: en yüksek görülme oranı ve test kapsamı. Öbür yarısı CVE kayıtlarından gelir.

Ekip, Ulusal Zafiyet Veritabanı'ndaki (NVD) CVE'leri CWE'lere göre gruplar ve CVSS puanlarındaki sömürü ile etki alt puanlarının ortalamasını alır. 2025 için yaklaşık 220 bin CVE çekildi. Formül beş parçayı toplar: en yüksek görülme oranı çarpı 1000, en yüksek kapsam çarpı 100, ortalama sömürü çarpı 10, ortalama etki çarpı 20 ve toplam kayıt sayısının on binde biri.

CVSS 4.0 bu hesapta kullanılmadı. Yeni sürümün puanlama algoritması köklü biçimde değişti ve sömürü ile etki alt puanlarını eskisi gibi ayrı vermiyor. OWASP bu yüzden CVSS v2 ve v3 puanlarıyla devam etti. 4.0'ı sonraki sürümlerde nasıl kullanacağını ayrıca araştırıyor.

Haritayı bir onay kutusu listesine indirgemek en sık yapılan hatadır. OWASP listeyi bir farkındalık belgesi (awareness document) olarak tanımlar. Liste ne sertifikadır ne de standart.

Kurumlar onu yine de fiilî standart gibi kullanır. OWASP bu durumda listenin yalnız en alt çıta ve bir başlangıç noktası olduğunu hatırlatır.

On maddeyi kapatan bir uygulama yine de güvensiz olabilir, çünkü iş mantığına özgü bir hata hiçbir kategoriye tam oturmayabilir. Ayrıca bazı maddeler test edilebilir bir kural değil, bir risktir. Güvensiz tasarımı bir tarayıcıyla bulamazsın. Günlüklerin gerçekten alarm ürettiğini de ancak ekiple konuşarak ve geçmiş olay kayıtlarına bakarak anlarsın.

Doğrulanabilir bir gereksinim listesi arıyorsan OWASP ASVS'ye (Application Security Verification Standard) bakarsın. Güncel sürümü 5.0.0'dır ve 2025'te yayımlandı. İkisinin farkını tek cümleyle kurabilirsin: Top 10 neye dikkat edeceğini söyler, ASVS neyi test edip onaylayacağını söyler.

ASVS gereksinimleri numaralıdır ve her biri denetlenebilir tek bir davranışı tarif eder. Bir denetçi her maddeyi geçti ya da kaldı diye işaretler. Numarayı sürümle birlikte yazarsın.

Örneğin v5.0.0-1.2.5 kimliği, 5.0.0 sürümündeki belirli bir enjeksiyon önleme gereksinimini gösterir. Sözleşmeye ya da iç politikaya güvenlik şartı yazacaksan ASVS'yi seçersin. Ekibi bilinçlendirecek ya da test bütçesini dağıtacaksan Top 10'u kullanırsın.

Etkinlik 2 / 6

Doğru mu, yanlış mı?

OWASP Top 10 listesindeki on maddeyi kapatan bir uygulama, tanım gereği güvenlidir.

2021'den 2025'e ne değişti

Eski bir kaynakta “A10 SSRF” ya da “A06 Vulnerable and Outdated Components” görürsen şaşırma. 2025 güncellemesi iki yeni kategori getirdi, bir kategoriyi başka birinin içine kattı ve sıralamayı yeniden çizdi. Bozuk erişim denetimi 2021'de beşinci sıradan birinciliğe yükselmişti, 2025'te de yerini korudu.

Güvenlik yanlış yapılandırması beşinci sıradan ikinciye çıktı. Uygulamanın davranışı her yıl biraz daha yapılandırma dosyalarına taşınıyor, bu yüzden yükseliş şaşırtıcı değil. Kriptografik hatalar ikinciden dördüncüye, enjeksiyon üçüncüden beşinciye, güvensiz tasarım dördüncüden altıncıya indi.

Aşağı inmek, riskin azaldığı anlamına gelmez. Başka kategorilerin öne geçtiği anlamına gelir. Aşağıdaki geçiş kılavuzu eski adların yeni listede nereye gittiğini gösteriyor.

2021                                       2025
A01 Broken Access Control               -> A01, yerini korudu
A02 Cryptographic Failures              -> A04
A03 Injection                           -> A05
A04 Insecure Design                     -> A06
A05 Security Misconfiguration           -> A02
A06 Vulnerable and Outdated Components  -> A03, tedarik zincirine genişledi
A07 Identification and Authentication   -> A07, adı kısaldı
A08 Software and Data Integrity         -> A08, "and" yerine "or"
A09 Security Logging and Monitoring     -> A09, "Monitoring" yerine "Alerting"
A10 Server-Side Request Forgery         -> A01 içine katıldı (CWE-918)
(yok)                                   -> A10 Mishandling of Exceptional Conditions
Geçiş kılavuzu: 2021 adı solda, 2025'teki yeri sağda.

Tablonun en çok soru doğuran üç satırına bak. Birincisi A03'tür. 2021'deki eski ve zafiyetli bileşenler maddesi genişledi ve yazılım tedarik zincirinin tamamını kapsadı: bağımlılıklar, derleme sistemleri ve dağıtım altyapısı. Bu alana yönelik saldırılar son yıllarda belirgin biçimde arttı.

OWASP'ın örnekleri arasında zararlı bir güncellemeyle binlerce kuruma ulaşan bir tedarikçi saldırısı ve paket deposunda kendi kendine yayılan bir solucan var. Kategori veride az görünür, çünkü bu hataları test etmek zordur. Buna karşın ankette katılımcıların tam yarısı onu birinci sıraya koydu. İkincisi SSRF'dir.

Sunucu tarafı istek sahteciliği artık ayrı bir madde değildir, CWE-918 kimliğiyle A01'in içinde durur. Üçüncüsü A10'dur. Hata yönetimi eksikleri, açık kalarak başarısız olma (failing open) ve mantık hataları gibi 24 CWE bu yeni kategoride toplandı. Önceden kötü kod kalitesi gibi genel bir başlığa düşen bu zayıflıklar artık kendi adıyla anılıyor.

A10'un özü tek bir soruda yatar: bir şey ters gittiğinde uygulama hangi yöne düşer? Ödeme servisine bağlantı zaman aşımına uğradığında sipariş “ödendi” diye işaretleniyorsa uygulama açık kalarak başarısız olur. Doğru davranış kapalı kalarak başarısız olmaktır (fail closed).

İşlem yarıda kaldıysa bütün adımları geri alır ve baştan başlarsın. Ayrıntılı hata mesajı da bu kategoriye girer. Yığın izi (stack trace) içeren bir yanıt, saldırgana kullanılan çatıyı ve sorgunun yapısını gösterebilir.

A09 ile A10 birbirini tamamlar. A10 hatanın güvenliği delmesini önler, A09 ise hatayı fark edip bir insana haber verir. İyi günlük tutup hiç alarm üretmeyen bir sistem, olay anında neredeyse hiçbir işe yaramaz.

Derinleş:Top 10'un kısa tarihçesi

OWASP projesi 1 Aralık 2001'de başladı. İlk Top 10 listesi 2003'te yayımlandı. Ardından 2004, 2007, 2010, 2013, 2017 ve 2021 sürümleri geldi; 2025 listesi sekizinci sürümdür. 2017 listesinde birinci sırada enjeksiyon vardı, bozuk erişim denetimi beşinci sıradaydı.

2021'de erişim denetimi birinciliğe çıktı ve o günden beri orada. XML dış varlık (XXE) 2017'de kendi maddesiydi. 2021'de yanlış yapılandırma kategorisine katıldı ve 2025'te de CWE-611 kimliğiyle A02'nin içinde duruyor. İncelenen CWE sayısı her sürümde büyüdü, ekip bu yüzden bir kategoriye en fazla 40 CWE koyma sınırı getirdi.

Liste bu yönüyle MITRE'nin tek tek zayıflıkları sıralayan CWE Top 25 listesinden ayrılır. OWASP bir kategoride birden fazla CWE toplar, çünkü her dilde ve çatıda aynı CWE görülmez. Aynı zafiyet de farklı ekiplerce farklı CWE'lerle raporlanabilir.

Etkinlik 3 / 6

2025 güncellemesinde yazılım tedarik zinciri hatası neden ayrı ve daha görünür bir madde oldu?

Etkinlik 4 / 6

2021 listesinde A10 olan sunucu tarafı istek sahteciliği (SSRF), 2025 listesinde hangi kategorinin içinde yer alır? Kategori kodunu yaz (örneğin A05).

Bulguyu CWE ile kategoriye eşlemek

Sahada bir bulguyu kategoriye eşlemenin en sağlam yolu CWE üzerinden gitmektir. OWASP her kategori sayfasında o kategoriye eşlenen CWE'lerin tam listesini verir. Yöntem üç adımdır.

Önce bulgunun kök nedenini bir cümleyle yazarsın. Sonra bu kök nedene uyan CWE kimliğini bulursun. En son kimliğin hangi kategori listesinde geçtiğine bakarsın. OWASP da mümkün olduğunca belirtiye değil kök nedene odaklanır.

“Hassas veri sızdı” bir belirtidir; kök neden eksik yetki kontrolü de olabilir, zayıf şifreleme de. Belirtiyle eşlersen aynı bulgu iki kişinin elinde iki farklı kategoriye gider. Aşağıdaki örnek, Altay Kargo portalında yapılan bir testin dört bulgusunu bu yolla eşliyor.

#  Bulgu (kök neden)                                   CWE       Kategori
1  /api/gonderiler/55121 başka müşterinin kaydını dönüyor CWE-639   A01:2025
2  Takip no alanına tırnak yazınca SQL hatası çıkıyor    CWE-89    A05:2025
   Aynı yanıtta veritabanı hata ayrıntısı görünüyor     CWE-209   A10:2025
3  Oturum çerezinde HttpOnly bayrağı yok                CWE-1004  A02:2025
4  Parola sıfırlama kodu tahmin edilebilir sayıdan      CWE-330   A04:2025
Altay Kargo test bulgularının CWE üzerinden kategoriye eşlenmesi.

Birinci satırda kök neden, sunucunun kaydın sahibini sormamasıdır. CWE-639 tam bunu anlatır: kullanıcının denetlediği bir anahtarla yetkinin atlanması. Bu kimlik A01 listesinde geçer.

İkinci satır, tek bir bulguda iki ayrı zayıflığın birleşebileceğini gösterir. Sorguya karışan tırnak enjeksiyondur (CWE-89, A05). Ekrana dökülen veritabanı hatası ise ayrı bir sorundur (CWE-209, A10) ve saldırgana sorgunun yapısını öğretir. Raporda ikisini ayrı satır yazarsın, çünkü düzeltmeleri de ayrıdır.

Üçüncü satır bir yapılandırma eksiğidir; çerez bayrağı çoğu zaman çatının ya da sunucunun ayarıdır. Üretimde açık bırakılan hata ayıklama modu da A02'ye düşer. Dördüncü satır parola akışı gibi görünse de kök neden tahmin edilebilir rastgele sayıdır. CWE-330 bu yüzden A07'ye değil A04'e düşer.

Etkinlik 5 / 6

Altay Kargo testinden gelen her bulguyu OWASP Top 10:2025 kategorisine yerleştir.

Önce bir seçeneğe, sonra aşağıdaki uygun kutuya bas. İstersen seçeneği kutuya sürükleyip bırak. Yerini değiştirmek için aynı işlemi tekrarla.

0/6 seçenek yerleşti.

Haritayı önceliğe çevirmek

Haritayı gerçek bir bütçe kararında düşün. Kaynağı sınırlı bir ekip her kategoriye eşit zaman ayıramaz. Önce en sık görülen ve en yıkıcı kategorilere bakar, sonra kendi uygulamasına özgü riski ekler. Harita herkese aynı sırayı dayatmaz.

Hangi kategorinin kendi bağlamında daha çok zarar vereceğini sormanı ister. Aynı içerik yönetim sistemini bir duyuru sitesi de, bir hastane kayıt sistemi de kullanabilir. Yazılım aynıdır ama saldırgan da etki de çok farklıdır. Aşağıdaki karar tablosu, uygulama türüne göre ilk bakılacak kategorileri gösteren bir başlangıç önerisidir.

Kesin bir kural değildir. Kendi test verin ve tehdit modelin bu sırayı değiştirebilir. Bu soruyu sormadan listeyi baştan sona sırayla kapatmaya çalışmak, sınırlı zamanı yanlış yere harcar.

Uygulama türü                    Önce bak        Neden
Çok kiracılı müşteri portalı     A01, A07        bir müşteri öbürünün verisini görmesin
Ödeme ve cüzdan                  A04, A10, A01   şifreleme, yarıda kalan işlem
Çok bağımlılıklı tek sayfa       A03, A08, A05   paket ve betik kaynağı, istemci girdisi
İnternete açık yönetim paneli    A02, A07, A09   varsayılan ayar, kaba kuvvet, alarm
Uygulama türüne göre ilk bakılacak kategoriler için bir başlangıç önerisi.

Bu yol haritayı sırayla derinleştirir. İkinci modül erişim denetimi (A01) ile kimlik doğrulamayı (A07) işler. Üçüncü modül enjeksiyon ailesini (A05) didikler.

Dördüncü modül SSRF (A01), XXE (A02) ve dosya yükleme (A06) risklerine iner. Beşinci modül serileştirme ve bütünlüğü (A08), yanlış yapılandırma ile eski bileşenleri (A02, A03) ve günlüklemeyi (A09) ele alır. Altıncı modül API'ye özgü riskleri OWASP API Security Top 10 üzerinden işler.

Kriptografi (A04) için Temeller yolundaki kriptografi modülüne bakarsın. Güvensiz tasarım (A06) için bir sonraki derse ve Güvenli Kod yolundaki tehdit modelleme modülüne geçersin. Haritadan derse böyle ilerlersin: kategoriyi bulur, ilgili modülü açar, orada kök nedeni ve düzeltmeyi öğrenirsin.

Etkinlik 6 / 6

Kullandığın bir web sitesini düşün, örneğin bir okul portalını. O sitede en çok hangi OWASP kategorisinden risk beklersin? Kısaca yaz ve nedenini belirt.

Bu derste bir hata mı gördün? Bildir