COMPUTER ENGINEER

Örneklere git
Blog
HTTP / HTTPS / TLS6 dk çalışma
40/ 70

Authorization · Yetkilendirme

Ownership, BOLA/IDOR ve tenant izolasyonu

Başkasının ID’sini göndererek veri elde etmeyi sunucuda önle.

AnlaÖrneği inceleKendin uygula

Kavramı anlayalım

BOLA, object düzeyindeki yetki eksikliğidir; IDOR bu sorunun doğrudan nesne referanslarıyla görülen tanıdık biçimidir. /cv/42 adresini /cv/43 yapmak yalnız bir URL değişikliğidir; API doğru ownership denetimi yapmıyorsa başka kişinin verisi açılabilir. UUID kullanımı güvenlik denetimini gereksiz yapmaz.

Tenant kimliğini doğrulanmış bağlamdan çıkar. Client’ın header veya JSON içinde gönderdiği tenantId’ye kör güvenme. Sorguda hem kaynak ID’si hem izin kapsamı bulunabilir; sonrasında işlem bazlı policy uygulanır. Güncellemede ownership alanını değiştirmek, nested kaynakları başka tenant’a bağlamak ve toplu export yapmak ayrıca korunmalıdır. Mass assignment izinli alanları tek tek seçmeyen update tasarımlarında risk doğurur.

Dosya ve galeri URL’leri de kaynak erişimidir. Herkese açık storage linki, API’deki iyi yetkiyi boşa çıkarabilir. Background job, cache key ve signed URL sürelerini tenant kapsamıyla değerlendir. 404 ile varlığı gizleme politikası tutarlı uygulanabilir; fakat logda audit için gerçek sebep kontrollü tutulur. Testte aynı kullanıcıya ait, başka kullanıcıya ait, başka tenant’a ait ve bulunmayan ID’leri ayrı dene.

NERESİNDE KULLANIRSIN?

Çok kiracılı SaaS, CV ve özel dosya erişiminde.

SIK YAPILAN HATA

UUID, storage URL veya tenant header’ını tek başına güvenlik kabul etmek.

01 / UYGULAMA

Aynı konu. Üç farklı derinlik.

HTTP / temsili örnek
WHERE Id = @id AND TenantId = @verifiedTenant

Yetki bağlamından gelen tenant ile kapsamlı sorgu.

Bu sayfa dış sunuculara istek göndermez. HTTP mesajları temsili, HTTP/1.1 biçiminde okunabilir gösterimlerdir; HTTP/2 ve HTTP/3 wire formatı değildir. example.test ayrılmış öğretim alan adıdır. Komut ve JavaScript örneklerini yalnız kendi test ortamında uygula; gerçek token veya cookie yayımlama.

02 / SIRA SENDE

Önce kendin dene.

API korumalı ama dosya linki herkese açık. Yetki tamam mı?

Çözümü ve açıklamasını göster
Açıklamalı çözüm
No: protect or appropriately scope the file delivery path.

Hayır; veri dosya yolu üzerinden yine açılabilir.