
Web uygulama güvenlik açıkları, bugün dünyanın en büyük dijital tehditlerinden birini oluşturuyor. Kaspersky’nin 2025 verilerine göre Türkiye’deki kullanıcıların yüzde 26,1’i çevrimiçi tehditlerden etkilendi ve Türkiye bu oranla META bölgesinin en yüksek riskli ülkesi konumuna geldi. Dünyada ise siber suçların maliyeti 2025’te 10,5 trilyon dolara ulaşarak dünyanın üçüncü büyük ekonomisiyle aynı büyüklüğe erişti.
Peki siz web uygulamanızın bu risklere karşı ne kadar hazırlıklı olduğunuzu biliyor musunuz?
OWASP yani Open Web Application Security Project, 2003’ten bu yana web uygulama güvenliğinde dünya standardı haline gelmiş bir güvenlik kılavuzu yayınlıyor. 2025 yılında sekizinci baskısını çıkaran OWASP Top 10, 175.000’den fazla CVE kaydının analizi ve dünya genelindeki güvenlik uzmanlarının katkısıyla hazırlandı. Bu rehberde OWASP Top 10 2025 listesini, her bir açığı sade bir dille açıklayacak ve web sitenizi bu tehditlere karşı nasıl koruyacağınızı anlatacağız.
OWASP Nedir ve Neden Bu Kadar Önemli?
OWASP, bağımsız ve kar amacı gütmeyen bir web güvenliği topluluğu. Yazılım geliştiricilerden güvenlik araştırmacılarına, kurumsal CISO’lardan küçük startup ekiplerine kadar geniş bir kitleye rehberlik ediyor.
OWASP Top 10 listesi özellikle şu nedenlerle kritik bir belge haline geldi. Birincisi, gerçek dünya verilerine dayanıyor. Liste soyut teorilerden değil, yüz binlerce web uygulamasında tespit edilen gerçek güvenlik açıklarından oluşturuluyor. İkincisi, düzenleyici kurumlar ve denetim firmaları bu listeyi bir referans noktası olarak kullanıyor. KVKK uyumluluğu için yapılan teknik denetimlerde de sıklıkla karşınıza çıkıyor. Üçüncüsü ise tedarik zinciri süreçlerinde alıcı şirketler, iş ortaklarından bu listeye uyum belgesi talep ediyor.
OWASP Top 10 2025 Listesi: Neler Değişti?
2021 listesiyle kıyaslandığında 2025 sürümünde iki yeni kategori eklendi ve bir kategori başka bir başlık altında birleştirildi.
| Sıra | Kategori | 2021’deki Yeri | Durum |
|---|---|---|---|
| A01 | Broken Access Control | 1 | Aynı konumda |
| A02 | Security Misconfiguration | 5 | 3 basamak yükseldi |
| A03 | Software Supply Chain Failures | 6 (farklı başlıkla) | Genişletildi |
| A04 | Cryptographic Failures | 2 | 2 basamak düştü |
| A05 | Injection | 3 | 2 basamak düştü |
| A06 | Insecure Design | 4 | 2 basamak düştü |
| A07 | Authentication Failures | 7 | Aynı konumda |
| A08 | Software or Data Integrity Failures | 8 | Aynı konumda |
| A09 | Logging and Alerting Failures | 9 | Aynı konumda |
| A10 | Mishandling of Exceptional Conditions | YENİ | 2025’te eklendi |
Her Güvenlik Açığı Detaylıca Açıklandı
Show Image Görsel Alt Metni: OWASP Top 10 2025 web uygulama güvenlik açıkları kategorileri
A01 – Broken Access Control (Erişim Kontrolü Hatası)
Liste liderliğini koruyor ve sebepsiz değil. Test edilen web uygulamalarının ortalama yüzde 3,73’ünde bu açık tespit ediliyor. Erişim kontrolü hatası, kullanıcıların kendi yetkilerinin dışında işlem yapabilmesi anlamına geliyor.
Bunu şöyle hayal edin: normal bir müşteri hesabıyla giriş yaptınız ve URL’yi değiştirerek başka bir kullanıcının siparişlerine eriştiniz. Ya da yönetici paneline normal bir kullanıcı olarak ulaştınız. Her ikisi de erişim kontrolü hatasına giriyor.
Sık görülen örnekler şunlar. URL manipülasyonu ile yetkisiz sayfaların görüntülenmesi, başka kullanıcıların verilerine doğrudan nesne referansıyla erişim, yönetici işlevlerinin yetkisiz kullanıcılara açık kalması ve CORS yanlış yapılandırmaları bu başlık altında değerlendiriliyor.
Çözüm için şu adımlar izlenebilir. Kimlik doğrulama ve yetki denetimleri her isteği sunucu tarafında kontrol etmeli. Kullanıcı sadece kendi verilerine ulaşabilmeli, başkasının değil. Erişim logları düzenli denetlenmeli.
A02 – Security Misconfiguration (Güvenlik Yanlış Yapılandırması)
2021’de beşinci sıradayken 2025’te ikinciliğe yükselen bu kategori, bulut tabanlı altyapıların yaygınlaşmasıyla birlikte çok daha kritik hale geldi. Test edilen uygulamaların yüzde 3’ünde bu açık bulunuyor.
Yanlış yapılandırma şu anlamına geliyor: sisteminiz teknik olarak doğru yazılmış olabilir ama kurulum ve konfigürasyon aşamasında hatalı ayarlar yapılmış. Örneğin açık kalmış hata mesajları stack trace bilgisi sızdırıyor. Gereksiz servisler ve portlar aktif. Varsayılan şifreler değiştirilmemiş ya da bulut depolama izinleri herkese açık bırakılmış.
2025’te Blue Shield adlı sağlık sigortası şirketinin Google Analytics yanlış yapılandırması nedeniyle 4,7 milyon kişinin sağlık verisinin Google ile paylaşıldığı ortaya çıktı. Üstelik bu durum yaklaşık üç yıl fark edilmemişti.
Çözüm için geliştirme, test ve üretim ortamları birbirinden ayrı tutulmalı. Varsayılan kimlik bilgileri mutlaka değiştirilmeli. Gereksiz özellikler ve servisler devre dışı bırakılmalı.
A03 – Software Supply Chain Failures (Yazılım Tedarik Zinciri Hataları)
2025’in en dikkat çekici yeni kategorilerinden biri bu. 2021 listesinde “Vulnerable and Outdated Components” olarak yer alan başlık, artık çok daha geniş bir risk alanını kapsıyor.
Tedarik zinciri hatası şu anlama geliyor: kendi yazdığınız kodda açık olmayabilir, ama kullandığınız kütüphane, framework ya da CI/CD aracında açık varsa siz de risk altındasınız. SolarWinds saldırısında Orion yazılımının güncelleme mekanizması hedef alındı ve 400’den fazla kurumun sistemi ele geçirildi.
Bu kategori, test edilmesi en zor açıklar arasında. Olayların çoğu CVE sistemine yansımıyor çünkü bunlar kod hataları değil güven kırılmaları. Yine de en yüksek ortalama oluşum oranına sahip kategori, yüzde 5,19.
Çözüm için Software Bill of Materials yani SBOM oluşturulmalı. Tüm bağımlılıklar kayıt altında tutulmalı ve düzenli güncellenme süreci oluşturulmalı.
A04 – Cryptographic Failures (Kriptografik Hatalar)
Verilerinizi şifreliyorsunuz, bu iyi. Ama yanlış algoritma ya da zayıf implementasyon kullandığınızda şifreleme size güven vermiyor.
Bu kategori hem şifreleme eksikliğini hem de yetersiz şifrelemeyi kapsıyor. HTTP üzerinden hassas veri göndermek, MD5 ya da SHA-1 gibi artık zayıf kabul edilen algoritmaları kullanmak, şifreleme anahtarlarını yanlış yönetmek, hard-coded şifreler bunların hepsi bu başlık altında değerlendiriliyor.
Çözüm için hassas veriler hem aktarım sırasında hem de depolamada şifrelenmeli. TLS 1.2 ve üstü zorunlu tutulmalı. Bcrypt, Argon2 gibi güçlü hash algoritmaları kullanılmalı. ENS Soft güvenli backend çözümleri bu standartların tamamına uygun altyapı sunuyor.
A05 – Injection (Enjeksiyon Saldırıları)
2021’de üçüncü sıradayken 2025’te beşinciye düşen bu kategori, 20 yılı aşkın süredir listedeki en eski açıklardan biri. SQL Injection, Command Injection ve Cross-Site Scripting bu başlık altında yer alıyor.
Enjeksiyon saldırısını şöyle tarif edebiliriz. Saldırgan bir form alanına kullanıcı verisi yerine kod yazıyor. Uygulama bu veriyi doğrulamadan veritabanına ya da sistem komutuna gönderiyor. Sonuç: ya veriler çalınıyor ya da sistem ele geçiriliyor.
SQL Injection için gerçek dünya örneği vermek gerekirse, giriş formuna kullanıcı adı olarak şunu yazmak yeterli olabilir. admin’– Bu meşhur ifade, doğru korunmayan bir sistemde parola kontrolünü devre dışı bırakıyor.
Çözüm için tüm kullanıcı girdileri doğrulanmalı ve temizlenmeli. Parameterized query yani parametrik sorgu kullanılmalı. ORM katmanları tercih edilmeli. Stored procedure uygulanmalı.
A06 – Insecure Design (Güvensiz Tasarım)
Bu kategori diğerlerinden biraz farklı çünkü bir implementasyon hatası değil, tasarım aşamasında alınan yanlış kararları kapsıyor. Kod mükemmel yazılmış olabilir ama mimari yanlış kurgulanmışsa sonuç her zaman riskli.
Örneğin şifre sıfırlama akışında güvenlik sorusu kullanmak, kullanıcı aktivitelerini hiç loglamadan bırakmak, rate limiting uygulamak ya da iş sürecindeki kritik adımlarda yetkilendirme kontrolü eksikliği bunların hepsi tasarım hatası.
Çözüm için güvenlik, development sürecinin başında yani tasarım aşamasında ele alınmalı. Threat modeling yapılmalı. Kritik iş akışları için güvenlik gereksinimleri önceden belirlenmeli.
A07 – Authentication Failures (Kimlik Doğrulama Hataları)
Kullanıcının kim olduğunu doğrulayan mekanizmalardaki açıkları kapsıyor. Brute force saldırılarına açık sistemler, zayıf parola politikaları, güvensiz session yönetimi, MFA eksikliği bu kategorinin temel başlıkları.
Discord vakası bu açığın ne kadar ciddi olduğunu gözler önüne seriyor. 200 milyonun üzerinde kullanıcısı olan platformda kimlik doğrulama verilerini barındıran üçüncü taraf sistemin güvenlik açığı nedeniyle isimler, selfie’ler, kimlik belgeleri ve adresler ele geçirildi.
Çözüm için çok faktörlü kimlik doğrulama yani MFA zorunlu hale getirilmeli. Başarısız giriş denemeleri sınırlandırılmalı. Session token’ları güvenli üretilmeli ve saklanmalı. Parola politikaları güçlendirilmeli.
A08 – Software or Data Integrity Failures (Yazılım veya Veri Bütünlüğü Hataları)
CI/CD pipeline’larının ve otomatik güncelleme mekanizmalarının güvenliğini kapsıyor. Kodun veya verinin yetkisiz değişikliğe uğraması, güvenilmeyen kaynaklardan gelen bileşenlerin doğrulanmadan kullanılması bu başlık altında.
Çözüm için dijital imzalar kullanılmalı. Kritik bileşenlerin hash değerleri kontrol edilmeli. CI/CD sistemlerinde yetkisiz değişikliği önleyecek kontroller eklenmeli.
A09 – Logging and Alerting Failures (Kayıt ve Uyarı Hataları)
Bu kategorinin adı 2021’e göre biraz değişti. “Monitoring” kelimesi çıktı, “Alerting” eklendi. Mesaj açık: sadece log tutmak yetmiyor, o logları anlamlı uyarılara dönüştürmek zorunlu.
Log tutulmuyorsa bir saldırı fark edilemiyor. Log var ama analiz edilmiyorsa aynı sonuç. OWASP’ın çok yerinde bir tespiti var: iyi bir log sistemi, uyarı mekanizması yoksa neredeyse değersiz.
Çözüm için başarısız giriş denemeleri, yetki hataları ve kritik işlemler loglanmalı. Loglar güvenli bir ortamda saklanmalı. Anomali tespit için uyarı sistemleri kurulmalı.
A10 – Mishandling of Exceptional Conditions (İstisna Durumlarının Yanlış Yönetimi)
2025 listesinin en yeni kategorisi bu. Beklenmedik durumların, hata koşullarının ve istisnaların nasıl ele alındığıyla ilgili. OWASP anketine katılanların yüzde 50’si bu konuyu en büyük emerging risk olarak işaretledi.
Bir web uygulaması bellek dolduğunda, bir servis zaman aşımına uğradığında ya da beklenmedik bir girdi aldığında nasıl davranıyor? Güvensiz bir sistem şu durumlardan birini yaşıyor. Stack trace veya iç sistem bilgisi sızdırıyor, fail-open yani hata durumunda erişime izin veriyor, ya da sistem tamamen çöküyor ve DoS durumu oluşuyor.
Çözüm için hata mesajları kullanıcıya minimum bilgi vermeli. İç detaylar sadece loglanmalı, dışarı çıkmamalı. Tüm hata senaryoları “fail-closed” yani hata durumunda erişimi reddet mantığıyla tasarlanmalı.
OWASP Uyumu için Pratik Kontrol Listesi
| Güvenlik Kontrolü | Öncelik | Etkilenen OWASP Kategorisi |
|---|---|---|
| HTTPS zorunlu kılınması | Yüksek | A02, A04 |
| Girdi doğrulama ve temizleme | Yüksek | A05 |
| Erişim kontrol katmanı | Yüksek | A01 |
| MFA uygulaması | Yüksek | A07 |
| Güncel bağımlılık yönetimi | Orta | A03 |
| Güvenli hata yönetimi | Orta | A10 |
| Log ve uyarı altyapısı | Orta | A09 |
| Güçlü şifreleme algoritmaları | Yüksek | A04 |
| Güvenlik odaklı tasarım süreci | Orta | A06 |
| Dijital imza ve bütünlük kontrolleri | Düşük | A08 |
Türk İşletmeleri için KVKK ve OWASP İlişkisi
KVKK’nın 12. maddesi kişisel verilerin güvenliğini sağlamak için gerekli teknik ve idari tedbirlerin alınmasını zorunlu kılıyor. Bu madde özellikle şu OWASP kategorileriyle doğrudan örtüşüyor.
A04 Kriptografik Hatalar KVKK kapsamındaki kişisel verilerin şifreli tutulması zorunluluğuyla bağlantılı. A01 Erişim Kontrolü ise yetkilendirme prensipleriyle tam örtüşüyor. A09 Kayıt Hataları da ihlal bildirim süreçleri için gerekli log altyapısını kapsıyor.
Yani OWASP Top 10 uyumluluğu salt teknik bir konu değil, aynı zamanda yasal bir yükümlülüğün parçası.
Güvenlik Testleri OWASP Açıklarını Nasıl Tespit Edersiniz?
Show Image Görsel Alt Metni: Web uygulama güvenlik açıkları test araçları ve OWASP uyumluluk denetimi
Birkaç farklı test yöntemi bu açıkları bulmak için kullanılıyor.
| Test Türü | Ne Buluyor | Araçlar |
|---|---|---|
| SAST (Statik Analiz) | Kod içindeki açıklar | SonarQube, Semgrep |
| DAST (Dinamik Analiz) | Çalışan uygulamadaki açıklar | OWASP ZAP, Burp Suite |
| SCA (Bileşen Analizi) | Bağımlılıklardaki açıklar | OWASP Dependency-Check |
| Penetrasyon Testi | Gerçek saldırı simülasyonu | Manuel + araçlar |
| IaC Tarama | Altyapı yanlış yapılandırmaları | Checkov, tfsec |
OWASP’ın kendi geliştirdiği OWASP ZAP aracı açık kaynak ve ücretsiz. Başlangıç seviyesinde web uygulamanızı taramak için ideal bir seçenek.
Gerçek Maliyetler Güvenlik Açığı Kapatmak mı, İhlal Yaşamak mı?
Bu sorunun yanıtı matematiksel olarak çok net.
| Senaryo | Ortalama Maliyet |
|---|---|
| Geliştirme aşamasında açık kapatma | 80 dolar |
| Test aşamasında açık kapatma | 240 dolar |
| Üretimde açık kapatma | 960 dolar |
| Veri ihlali sonrası kriz yönetimi | 4,8 milyon dolar+ |
| KVKK cezası (ciddi ihlaller) | Yüzde 3’e kadar küresel ciro |
Geliştirme sürecinin başında güvenliği ele almanın maliyeti, bir ihlal sonrasında ödenen maliyetin yüzde 0,002’si bile değil.
ENS Soft yazılım geliştirme ekibi, her projede OWASP güvenlik standartlarını uygulayarak bu maliyeti en başından ortadan kaldırıyor. Güvenli web tasarım çözümleri ve backend altyapılarımız bu standartlara uygun olarak inşa ediliyor.
2021’den 2025’e Güvenlik Dünyasında Neler Değişti?
Listenin evrimine bakıldığında çok anlamlı bir tablo çıkıyor.
Önce iyi haber. Injection 2021’de üçüncüyken 2025’te beşinciye geriledi. Bu, sektörün güvenli kodlama kültürünü benimsediğini gösteriyor.
Kötü haber. Security Misconfiguration beşinciden ikinciye fırladı. Bulut altyapılarının hızla yaygınlaşması yanlış yapılandırma riskini dramatik biçimde artırdı.
Yeni gerçeklik. İki yeni kategori olan Software Supply Chain Failures ve Mishandling of Exceptional Conditions, yazılım güvenliğinin artık sadece kod yazmaktan ibaret olmadığını gösteriyor. Ekosistem güvenliği ve sistem dayanıklılığı artık ayrı başlıklar haline geldi.
Bitirirken,
OWASP Top 10, bir kural listesi değil bir farkındalık belgesi. Ama bu farkındalığı eyleme dönüştürmek geliştirici ekiplerin, proje yöneticilerinin ve işletme sahiplerinin ortak sorumluluğu.
Web uygulama güvenlik açıkları söz konusu olduğunda en pahalı seçenek hareketsiz kalmak. Türkiye’nin siber saldırılarda küresel olarak üst sıralarda yer aldığını düşündüğünüzde bu daha da kritik bir hal alıyor.
Güvenli kod yazmak, güvenli mimari tasarlamak ve düzenli güvenlik testleri yapmak bugün bir rekabet avantajı. Yakın gelecekte ise bir zorunluluk haline gelecek.
ENS Soft olarak tüm projelerimizde OWASP güvenlik standartlarını uyguluyoruz. Web uygulamanızın güvenlik durumunu değerlendirmek veya OWASP uyumlu bir yazılım geliştirme süreci kurmak istiyorsanız bizimle iletişime geçin. Siber güvenlik odaklı backend çözümlerimizi ve API güvenlik hizmetlerimizi inceleyebilirsiniz.