Vebende Akademi - owasp-top-10
Uzmanla Konuşun
Blog
MAKALE

OWASP Top 10 — Web Uygulama Güvenliğinin İyileştirilmesi İçin Endüstri Standardı Rehber

Yayınlayan: Vebende Akademi  |  Okuma süresi: ~80–160 dk

OWASP Top 10 — Web Uygulama Güvenliğinin İyileştirilmesi İçin Endüstri Standardı Rehber

Yayınlayan: Vebende Akademi  |  Okuma süresi: ~80–160 dk

1. GİRİŞ

OWASP (Open Web Application Security Project) Top 10, web uygulamalarındaki en kritik güvenlik risklerini belirleyen ve dünya genelinde referans olarak kullanılan bir listedir. Yazılım geliştirme pratiklerinin hızlandığı, bulut ve üçüncü‑taraf entegrasyonlarının arttığı günümüzde OWASP Top 10, hem geliştiriciler hem de güvenlik profesyonelleri için bir kontrol listesi ve önceliklendirme aracı görevi görür. Bu makale OWASP Top 10'un teknik altyapısını, her bir riskin nasıl çalıştığını, mimari etkilerini, pratik mitigasyon stratejilerini ve gerçek dünya örneklerini detaylandırır.

Bu konu neden bugün önemli?

  • Web uygulamaları kritik iş verilerini ve kullanıcı bilgilerini barındırıyor; bir zafiyet doğrudan finansal ve operasyonel kayıplara yol açabilir.
  • OWASP Top 10, güvenli yazılım geliştirme süreçlerini standardize ederek güvenlik ile hız arasındaki dengeyi kurmaya yardımcı olur.
  • Regülasyonlar ve denetimler (GDPR, PCI‑DSS, KVKK) güvenlik kontrollerinin sistematik uygulanmasını bekliyor; OWASP Top 10 bu kontrollerin teknik eşleşmesini sağlar.

Kimler için önemli?

  • Backend ve frontend geliştiricileri — kod seviyesinde riskleri anlamak ve düzeltmek.
  • Güvenlik mühendisleri ve pentester'lar — test senaryolarını planlamak ve bulguları değerlendirmek.
  • DevOps/Platform ekipleri — güvenlik kapıları ve otomasyonları oluşturmak.
  • Ürün sahipleri ve yöneticiler — riskleri iş etkisi ile ilişkilendirip önceliklendirmek.

2. KAVRAMSAL TEMELLER

2.1 OWASP Top 10 nedir?

OWASP Top 10, topluluk temelli, veri‑destekli bir dokümandır. Belirli aralıklarla (genellikle birkaç yılda bir) güncellenir ve en sık görülen, en ciddi web uygulama güvenlik risklerini listeler. Her bir risk için açıklama, nedenleri, örnekler ve önerilen mitigasyonlar yer alır. OWASP Top 10 hem eğitim amaçlıdır hem de güvenlik kontrollerinin önceliklendirilmesine yardımcı olur.

2.2 Temel kavramlar ve terminoloji

  • Vulnerability: Sistemde kötüye kullanılabilecek bir zayıflık.
  • Exploit: Zafiyetin uygulanabilir bir saldırıya dönüştürülmesi.
  • Attack surface: Saldırganın hedefleyebileceği tüm arayüzler ve bileşenler.
  • Authentication vs Authorization: Kimlik doğrulama (sen kimsin?) vs yetkilendirme (ne yapabilirsin?).

3. NASIL ÇALIŞIR? — OWASP TOP 10'UN TEKNİK ANATOMİSİ

OWASP Top 10 başlıkları uygulama geliştirme yaşam döngüsü içindeki farklı katmanlarda ortaya çıkar. Aşağıda (2020/2021 dönemine referanslı) güncel kategorilerin teknik açıklamaları ve mimari etkileri özetlenmiştir. Not: OWASP'ın en güncel versiyonunu kontrol edin; isimlendirme dönemsel olarak değişebilir (ör. A1, A2...).

3.1 A01 — Broken Access Control (Kırık Erişim Kontrolleri)

Tanım: Kullanıcıların yetkisi olmayan kaynaklara erişebilmesi durumudur. Örnekler: IDOR (Insecure Direct Object References), eksik rol kontrolleri, yetersiz server‑side authorization. Mimari etkileri: servis seviyesinde RBAC/ABAC eksiklikleri, insecure client‑side authorization, URL token'larının güvensiz kullanımı.

Mitigasyon

  • Server‑side authorization: HER istekte yetki denetimleri yapın.
  • Indirect references (opaque IDs) kullanın ve access checks uygulayın.
  • Least privilege ve role‑based access control (RBAC) politikasını zorunlu kılın.

3.2 A02 — Cryptographic Failures (Kryptografik Hatalar)

Tanım: Zayıf veya yanlış kriptografik uygulamalar; örneğin hassas verinin şifrelenmemesi, eski/weak ciphers kullanılması veya kötü anahtar yönetimi. Mimari etkileri: veri sızıntısı, token forging, session hijacking.

Mitigasyon

  • TLS 1.2+ ve modern cipher suite'leri zorunlu kılın.
  • Encryption at rest ve field‑level encryption kullanın.
  • Key management için KMS/HSM kullanın, anahtar rotasyonu uygulayın.

3.3 A03 — Injection

Tanım: Veri girdilerinin doğrulanmaması veya güvenli biçimde işlenmemesi nedeniyle SQL, NoSQL, OS veya LDAP gibi komutların enjekte edilmesi. Mimari etkileri: database compromise, data exfiltration, command execution.

Mitigasyon

  • Parameterized queries / prepared statements kullanın.
  • Input validation ve output encoding uygulayın (context‑aware encoding).
  • ORM'lerin güvenlik açıklarına dikkat edin ve user input'ı asla doğrudan SQL'e katmayın.

3.4 A04 — Insecure Design

Tanım: Güvenlik dikkate alınmadan yapılan tasarım kararları. Bu kategori statik eksiklikleri değil, tasarımda güvenliğin göz ardı edilmesini içerir. Mimari etkileri: hatalı threat modeling, eksik güvenlik gereksinimleri, yanlış data flow yönetimi.

Mitigasyon

  • Threat modeling'i SDLC'ye entegre edin (STRIDE/PASTA).
  • Security requirements and design patterns belirleyin (secure defaults).
  • Design review ve ADR (Architecture Decision Records) süreçlerini uygulayın.

3.5 A05 — Security Misconfiguration

Tanım: Yanlış veya eksik yapılandırmalar (ör. debug mode açık, default credentials, gereksiz hizmetlerin açık olması). Mimari etkileri: geniş attack surface, information disclosure.

Mitigasyon

  • Secure defaults, automated configuration scanning ve IaC security (Terraform/Tfsec, ARM/Azure Bicep scanning).
  • Disable debug endpoints, enforce least privilege for services ve audit configuration changes.

3.6 A06 — Vulnerable and Outdated Components

Tanım: Bilinen zafiyetleri içeren kütüphane veya bileşenlerin kullanımı. Mimari etkileri: supply chain riskleri, remote code execution, dependency hijacking.

Mitigasyon

  • SBOM oluşturun ve dependency scanning (Snyk, Dependabot, GitHub Advanced Security) kullanın.
  • Regular patching, CVE monitoring ve fast remediation process oluşturun.

3.7 A07 — Identification and Authentication Failures

Tanım: Zayıf kimlik doğrulama yöntemleri, session management hataları, eksik MFA gibi durumlar. Mimari etkileri: account takeover, credential stuffing, session fixation.

Mitigasyon

  • MFA zorunlu kılın, password policy ve rate limiting uygulayın.
  • Short‑lived tokens, secure cookie flags (HttpOnly, Secure, SameSite) ve token revocation mekanizmaları kullanın.

3.8 A08 — Software and Data Integrity Failures

Tanım: Yazılımın ve verinin bütünlüğünü sağlayamama; ör. unsigned artifacts, insecure CI/CD. Mimari etkileri: malicious build injection, tampering of artifacts.

Mitigasyon

  • Signed artifacts, reproducible builds, pipeline hardening ve isolation of build runners.
  • SBOM ve provenance tracking ile kaynak denetimi yapın.

3.9 A09 — Security Logging and Monitoring Failures

Tanım: Yetersiz loglama ve izleme; saldırıların tespit edilememesi veya olay sonrası analiz yapılamaması. Mimari etkileri: uzun dwell time, geç müdahale, eksik forensics data.

Mitigasyon

  • Centralized logging, immutable audit trails, alerting and SOAR playbooks oluşturun.
  • SLO/alert seviyelerini tanımlayın ve MTTR hedefleri belirleyin.

3.10 A10 — Server‑Side Request Forgery (SSRF) ve benzeri modern riskler

Tanım: SSRF, sunucu tarafının saldırgan kontrollü bir URL'e istek yapmasına neden olur; iç ağ kaynaklarına erişim sağlayabilir. Mimari etkileri: internal services exposure, metadata service exploitation (cloud providers metadata endpoint'leri).

Mitigasyon

  • Outgoing request allowlist, validate and sanitize URLs, egress network controls ve metadata service access restriction uygulayın.
  • Use of proxy and centralized outgoing request filters.

4. GERÇEK DÜNYA KULLANIMLARI

4.1 Netflix / Content Platform örneği

İçerik platformları, geniş kullanıcı tabanları ve API ağları nedeniyle rate limiting, broken access control ve logging sorunlarına özellikle duyarlıdır. Netflix benzeri organizasyonlar platform‑level guardrail'lar, ABAC ve geniş telemetry ile güvenlik olaylarını yönetir.

4.2 Amazon / AWS kullanım örneği

AWS müşterilerinde SSRF ve metadata endpoint istismarı, yanlış IAM rolleri ve açık S3 bucket'lar sık karşılaşılan problemlerdir. FinOps ve security ekipleri birlikte çalışarak least privilege ve automated scanning ile açıkları kapatır.

4.3 Stripe / Ödeme ve Finansal Hizmetler

Ödeme sağlayıcılarında PCI uyumu, data integrity ve access control kritik önemdedir. Tokenization, HSM ve immutable logging gibi kontroller burada standarttır.

4.4 Open Source supply chain örneği

Yazılım tedarik zinciri saldırıları (dependency hijacking, malicious packages) birçok büyük vaka oluşturmuştur. SBOM ve signed packages adoption'u, automated dependency monitoring ile birlikte hızlı remediation süreçleri üretmiştir.

5. AVANTAJLAR VE SINIRLAMALAR

Avantajlar

  • OWASP Top 10, eğitim ve önceliklendirme için açık, sektör kabul görmüş bir rehber sağlar.
  • Geliştirici ekiplerin güvenlik kontrollerini öncelemelerini kolaylaştırır; basit checklist'lerle etkili iyileştirmeler yapılabilir.
  • Denetimler için teknik eşleşmeler sunar: her başlık için spesifik kontrol ve testler tanımlanabilir.

Sınırlamalar

  • Listeler statik değildir; yeni tehditler ve teknikler zamanla ortaya çıkar—sürekli güncelleme gerektirir.
  • OWASP Top 10 yalnızca başlangıçtır; organizasyonun tüm risk profilini kapsamlı şekilde ele almak için ileri analiz ve proses gereklidir.

6. ALTERNATİFLER VE KARŞILAŞTIRMA

OWASP Top 10 genellikle başlangıç düzeyi için kullanılır; ancak başka çerçeveler ve araçlar daha derin analiz sağlar. Aşağıdaki tablo bazı yaklaşımları karşılaştırır.

Yaklaşım / AraçAvantajDezavantaj
OWASP Top 10Kolay anlaşılır, hızlı uygulanabilirKapsam sınırlı; detaylı saldırı yollarını belirtmez
MITRE ATT&CKAdversary‑centric, detection and response için güçlüUygulama güvenliği odaklı değildir; operasyonel entegrasyon gerekir
PASTARisk‑odaklı ve simülasyon içerirUygulaması zaman alıcı
Automated SCA / SAST / DAST toolsCI entegrasyonu ve hızlı geri bildirimContext eksikliği, false positive/negative sorunları

7. EN İYİ PRATİKLER

Production kullanımı

  • OWASP Top 10 başlıklarını CI/CD süreçlerinde kontrol edin; SAST/DAST ve SCA araçlarını pipeline'a ekleyin.
  • Secure defaults: yeni servisler için güvenli başlangıç konfigürasyonları sağlayın.
  • Threat modeling ve design review'ları zorunlu hale getirin.

Performans ve operasyon

  • Risk‑based remediation: yüksek etki ve yüksek olasılıklı bulguları önceliklendirin.
  • Observability: güvenlik telemetrisini merkezi toplayın ve alert'leri iş akışlarına bağlayın.
  • Patch management and dependency remediation SLA'ları belirleyin.

Güvenlik

  • Least privilege, MFA, token lifecycle management ve secure key storage (KMS/HSM) uygulayın.
  • SBOM ve signed artifacts ile supply chain visibility sağlayın.

8. SIK YAPILAN HATALAR

  • OWASP Top 10'u checkbox formlarına indirgeyip derinlemesine risk analizi yapmamak.
  • SCA/SAST sonuçlarını göz ardı etmek veya yanlış önceliklendirme yapmak.
  • Güvenlik otomasyonunu sadece uyarı düzeyinde bırakmak; remediate süreçlerini otomatize etmeme.
  • Audit ve logging eksikliği; olay sonrası forensic verisi yetersizliği.

9. GELECEK TRENDLER

9.1 AI ve otomatik zafiyet tahmini

AI, kod ve telemetri analizi ile zafiyet tahmini ve önceliklendirmede kullanılacak. Model‑tabanlı risk scoring, CI'ya entegre edilerek daha doğru remediation öncelikleri sağlayabilir.

9.2 Runtime uygulama güvenliği

RASP ve context‑aware WAF'lar runtime'da exploit'leri daha etkili tespit edip engelleyebilecek; bu, legacy uygulamalarda özellikle faydalıdır.

9.3 Supply chain regülasyonları

SBOM ve tedarik zinciri şeffaflığına yönelik regülasyonlar (ör. US Executive Order on Software ... gibi örnekler) globalde artacak; organizasyonlar proaktif olarak uyum sağlamalıdır.

EK BÖLÜMLER

Sık Sorulan Sorular (FAQ)

  1. OWASP Top 10'i kaç yılda bir kontrol etmeliyim?

    OWASP Top 10 güncellemeleri birkaç yılda bir gelir; ancak organizasyonunuzun güvenlik kontrollerini yılda en az bir kez gözden geçirmek ve yeni sürümlere göre uyarlamak iyi bir pratiktir.

  2. Hangi araçlar OWASP Top 10 kapsamına uyar?

    SAST (SonarQube, Checkmarx), DAST (ZAP, Burp), SCA (Snyk, Dependabot) ve CI pipeline gating araçları OWASP risklerini tespit etmede yardımcı olur.

  3. OWASP Top 10'u uygulamak ne kadar maliyetlidir?

    Başlangıçta eğitim, tooling ve süreç entegrasyonu maliyeti olabilir; ancak uzun vadede ihlal maliyetlerini azaltarak yatırımın geri dönüşünü sağlar.

  4. Small teams için öncelik nasıl belirlenir?

    Önce yüksek etki ve yüksek olasılık taşıyan başlıklar (A01, Injection, Broken Auth/Access Control) ele alınmalı; quick wins ve otomasyon ile ilerleyin.

  5. OWASP Top 10 dışında başka kaynaklar var mı?

    Evet: MITRE ATT&CK, CIS Controls, NIST SP 800 serisi gibi kaynaklar daha geniş güvenlik çerçeveleri sağlar.

  6. OWASP Top 10'u CI/CD'ye nasıl entegre ederim?

    SAST/DAST/SCA taramalarını pipeline'a ekleyin, PR değerlendirmelerinde security checklist'leri zorunlu kılın, ve kritiklik seviyesine göre PR blocker veya advisory workflow'lar kullanın.

  7. OWASP Top 10 ile pentest farkı nedir?

    OWASP Top 10 bir rehber ve önceliklendirme aracıdır; pentest ise uygulamaya yönelik aktif testler yapar. İkisi birbirini tamamlar.

  8. Bu liste tüm güvenlik ihtiyaçlarını karşılar mı?

    Hayır; OWASP Top 10 başlangıç için güçlü bir temel sağlar, fakat organizasyonel riskler, supply chain detayları ve runtime detection gibi daha geniş alanlar için ek çalışmalar gereklidir.

Anahtar Kavramlar

  • OWASP: Open Web Application Security Project — web güvenliği topluluğu.
  • SBOM: Software Bill of Materials — yazılım bileşenleri envanteri.
  • SAST/DAST/SCA: Statik/Dinamik analiz ve bağımlılık taramaları.
  • RASP: Runtime Application Self‑Protection.
  • MFA: Multi‑Factor Authentication.

Öğrenme Yol Haritası

  1. 0–1 ay: OWASP Top 10'i okuyun; temel web protokolleri, HTTP, TLS ve authentication kavramlarını öğrenin.
  2. 1–3 ay: SAST/DAST araçları ile hands‑on uygulamalar yapın; küçük uygulamalar üzerinde vulnerability discovery ve remediation deneyimi kazanın.
  3. 3–6 ay: CI/CD entegrasyonları, SBOM, dependency management ve supply chain security konularında uygulamalı projeler yapın.
  4. 6–12 ay: Red/blue team tatbikatlarına katılın, RASP ve runtime detection çözümleri deneyin; incident response ve forensics süreçlerinde deneyim kazanın.