Bu bölümde, Insecure direct object references’ın yani IDOR ne anlama gelmektedir ve bazı yaygın güvenlik açıkları hakkında bilgi vereceğiz.
Insecure direct object references- IDOR nedir?
Insecure direct object references (IDOR), bir uygulama nesnelere doğrudan erişmek için kullanıcı tarafından sağlanan girdiyi kullandığında ortaya çıkan bir tür erişim denetimi güvenlik açığıdır. IDOR terimi, OWASP 2007 Top Ten’de görünmesiyle popüler hale geldi. Ancak, erişim kontrollerinin atlatılmasına yol açabilecek birçok erişim kontrolü uygulama hatasının sadece bir örneğidir . IDOR’ın güvenlik açıkları en yaygın olarak yatay ayrıcalık yükseltmeyle ilişkilendirilir, ancak dikey ayrıcalık yükseltmeyle ilgili olarak da ortaya çıkabilirler.
IDOR örnekleri
Kaynaklara veya işlevlere doğrudan erişmek için kullanıcı tarafından denetlenen parametre değerlerinin kullanıldığı birçok erişim denetimi güvenlik açığı örneği vardır.
Veritabanı Nesnelerine Doğrudan Atıfta Bulunan IDOR Güvenlik Açığı
Arka uç veritabanından bilgi alarak müşteri hesabı sayfasına erişmek için aşağıdaki URL’yi kullanan bir web sitesi düşünün:
“https://insecure-website.com/customer_account?customer_number=132355”
Burada müşteri numarası, arka uç veritabanında gerçekleştirilen sorgularda doğrudan bir kayıt dizini olarak kullanılır. Başka hiçbir kontrol mevcut değilse, bir saldırgan customer_number
, diğer müşterilerin kayıtlarını görüntülemek için erişim kontrollerini atlayarak değeri değiştirebilir . Bu, yatay ayrıcalık yükseltmeye yol açan bir IDOR güvenlik açığı örneğidir.
Saldırgan, erişim denetimlerini atlarken kullanıcıyı ek ayrıcalıklara sahip bir kullanıcıyla değiştirerek yatay ve dikey ayrıcalık yükseltme gerçekleştirebilir. Diğer olasılıklar, örneğin, saldırgan kullanıcının hesapları sayfasına girdikten sonra parola sızıntısından yararlanmayı veya parametreleri değiştirmeyi içerir.
Statik Dosyalara Doğrudan Atıfta Bulunan IDOR Güvenlik Açığı
IDOR’ın güvenlik açıkları genellikle hassas kaynaklar sunucu tarafı dosya sistemindeki statik dosyalarda bulunduğunda ortaya çıkar. Örneğin, bir web sitesi artan bir dosya adı kullanarak sohbet mesajı dökümlerini diske kaydedebilir ve kullanıcıların aşağıdaki gibi bir URL’yi ziyaret ederek bunları almasına izin verebilir:
Bu durumda, bir saldırgan, başka bir kullanıcı tarafından oluşturulan bir dökümü almak ve potansiyel olarak kullanıcı kimlik bilgilerini ve diğer hassas verileri elde etmek için dosya adını değiştirebilir.