SIBER 2026-06-12 · 10 dk okuma

OWASP API Top 10 (2023): KVKK Açısından Pratik Kontrol Listesi

OWASP API Top 10'un 2023 sürümü 10 maddesini tek tek alıp KVKK açısından sınıflandırdım. Her madde için: kısa açıklama, KVKK ilişkisi, Aegis Scanner'da nasıl tespit edildiği, hızlı kontrol komutu.

Yazan: Niyazi Önder Duman

OWASP API Security Top 10'un 2023 listesi 2019'a göre büyük değişiklik geçirdi — özellikle authorization odaklı maddeler kuvvetlendirildi (BOLA, BFLA, BOPLA). Bu yazıda 10 madde için kısa pratik özet + KVKK karşılığı + Aegis ile tespit notu paylaşıyorum.

API1:2023 — Broken Object Level Authorization (BOLA / IDOR)

Nedir: Kullanıcı kendi objesine erişebiliyor — ama kontrol etmeden başka kullanıcının objesini de erişebiliyor (URL'deki ID'yi değiştirerek).

KVKK ilişkisi: m.12 ihlali — kişisel veriye yetkisiz erişim. Türkiye'de en sık ceza alan kategori.

Aegis tespiti: Mod 2 (aktif) IDOR probe — numeric ID'leri ±1 / ±100 ile dener; dönen response'ta farklı kullanıcı verisi varsa flag.

Hızlı kontrol: Login olduktan sonra /api/users/123/orders endpoint'inde 123'ü 124 yapın. Eğer 200 + farklı veri dönerse BOLA var.

API2:2023 — Broken Authentication

Nedir: Login, password reset, JWT, OAuth token akışlarında zayıflık. Brute force koruması yok, JWT secret zayıf, refresh token rotation yok.

KVKK ilişkisi: m.12 — hesap çalınmasıyla veri sızıntısı.

Aegis tespiti: Pasif — login form rate limit testi (5 yanlış deneme), JWT alg=none kabul ediliyor mu probe'u.

Hızlı kontrol: curl -X POST .../login'u 20 kez art arda yanlış parola ile çağırın. 4 deneme sonrası blocking yoksa risk.

API3:2023 — Broken Object Property Level Authorization (BOPLA)

Nedir: "Mass assignment" + "excessive data exposure" tek başlık altında. User PATCH endpoint'inde role: admin alanını update edebiliyor, veya GET response'u gizli alan döküyor.

KVKK ilişkisi: m.4 (genel ilkeler — amaca uygun, sınırlı) ihlali.

Aegis tespiti: Mod 2 — PATCH/PUT request'lerine ekstra field enjekte eder, response'u inceler.

API4:2023 — Unrestricted Resource Consumption

Nedir: Rate limit yok, bandwidth limit yok, pagination yok — saldırgan ?limit=1000000 ile DB kilitler veya tüm dataset'i sızdırır.

KVKK ilişkisi: Dolaylı — toplu sızıntı veri ihlali. m.12.

Aegis tespiti: Pasif — rate limit header (X-RateLimit-Remaining) varlığı, pagination parametreleri.

API5:2023 — Broken Function Level Authorization (BFLA)

Nedir: Normal kullanıcı /admin/users/delete endpoint'ini çağırabiliyor. Function-level auth eksik.

KVKK ilişkisi: m.12 — yetkisiz silme/değişiklik.

Aegis tespiti: Mod 2 — login token'la admin path probe'u; 200/401 farkına bakar.

API6:2023 — Unrestricted Access to Sensitive Business Flows

Nedir: Iş süreçleri (sipariş, parola sıfırlama, rezervasyon) otomasyona açık — bot envanter çalar, rakip stok bilgisini scrape eder, fiyat manipülasyonu yapar.

KVKK ilişkisi: Genelde rekabet/iş riski — KVKK ile dolaylı.

Aegis tespiti: Pasif — captcha/turnstile varlığı, anormal işlem rate sinyali.

API7:2023 — Server Side Request Forgery (SSRF)

Nedir: API kullanıcının URL'ini alıp arka planda istek atıyor (örn. webhook test, profil resmi indir). Saldırgan http://169.254.169.254/ (AWS metadata) gibi internal endpoint'lere ulaşıyor.

KVKK ilişkisi: m.12 — bulut kimlik token sızıntısı.

Aegis tespiti: Mod 2 SSRF probe — OOB callback ile dış DNS lookup yakalar.

API8:2023 — Security Misconfiguration

Nedir: Default credential'lar (admin/admin), debug endpoint açık, Swagger UI prod'da unauthenticated, CORS wildcard.

KVKK ilişkisi: m.12 — sistemsel zayıflık.

Aegis tespiti: Pasif — well-known path tarama (/swagger, /actuator, /.env, /admin), CORS header analizi.

API9:2023 — Improper Inventory Management

Nedir: "Eski API versiyonu hala canlı" — /v1 deprecated demiş ama duruyor; staging/dev API'leri prod ile aynı DB'ye bağlı.

KVKK ilişkisi: m.12 — gölge altyapı veri sızıntısı.

Aegis tespiti: Pasif — subdomain envanteri, sertifika şeffaflığı (CT) ile unutulmuş ortamları yakalar.

API10:2023 — Unsafe Consumption of APIs

Nedir: Sizin API'niz başka 3. taraf API'lerini güvensiz tüketiyor — TLS doğrulamadan, response'u parse etmeden execute ediyor.

KVKK ilişkisi: m.12 + m.9 (yurt dışı veri transferi — eğer 3. taraf yurtdışında).

Aegis tespiti: Pasif değil — code review gerektirir.

Kontrol checklist (kopyala-yapıştır)

[ ] BOLA: IDOR probe (login + ID değiştir)
[ ] AUTH: Brute force koruması + 2FA
[ ] BOPLA: Mass assignment + excessive data exposure
[ ] RATE: X-RateLimit-* header + pagination max
[ ] BFLA: Admin endpoint normal kullanıcıyla çağrılamamalı
[ ] BIZFLOW: Captcha + bot detection
[ ] SSRF: URL parametresi blacklist (RFC1918, 169.254.x)
[ ] MISCONFIG: Swagger/debug prod'da kapalı, CORS strict
[ ] INVENTORY: Subdomain envanteri + deprecated versiyon kapatma
[ ] 3RD-PARTY: TLS verify + timeout + schema validate

Nasıl başlanır?

API1, API2, API8, API9 maddeleri Aegis Pro pasif tarama ile haftalık otomatik raporlanır. Diğer 6 madde için Mod 2 aktif tarama veya yıllık manuel pentest gerekir.

Tek başınıza checklist'i yürütmek 8-16 saat alır. Aegis Pro 30 saniyede yapar, hem de düzenli — aboneliğe başla.

Aegis Scanner'ı ücretsiz deneyin

Domain'inizi 15 saniyede tarayın — kayıt olmadan, kart bilgisi olmadan.

Hızlı Tara →