CORS Misconfiguration
Last updated
Was this helpful?
Last updated
Was this helpful?
Cross-origin resource sharing (CORS), belirli bir domain dışında bulunan kaynaklara kontrollü erişim sağlayan bir tarayıcı mekanizmasıdır.
Same Origin Policy'i genişletir ve ona esneklik kazandırır.
Bir web sitesinin CORS politikası kötü yapılandırılmış ve uygulanmışsa, cross-domain saldırıları için de potansiyel sağlar.
Bir web kaynağı hassas bilgiler içeriyorsa, kaynak Access-Control-Allow-Origin başlığında uygun şekilde belirtilmelidir.
Access-Control-Allow-Origin başlığında belirtilen domainler yalnızca güvenilen siteler olmalıdır. Özellikle, cross-site isteklerden gelen kökenlerin doğrulama yapılmadan dinamik olarak yansıtılması kolayca istismar edilebilir ve bundan kaçınılmalıdır.
Access-Control-Allow-Origin: null başlığını kullanmaktan kaçının. Dahili belgelerden ve sandbox isteklerinden gelen çapraz kökenli kaynak çağrıları null kökeni belirtebilir. CORS başlıkları, özel ve genel sunucular için güvenilir kaynaklara göre uygun şekilde tanımlanmalıdır.
Dahili ağlarda joker karakter kullanmaktan kaçının. Dahili tarayıcılar güvenilmeyen harici etki alanlarına erişebildiğinde, dahili kaynakları korumak için yalnızca ağ yapılandırmasına güvenmek yeterli değildir.
CORS tarayıcı davranışlarını tanımlar ve asla hassas verilerin sunucu tarafı korumasının yerini almaz, bir saldırgan herhangi bir güvenilir kaynaktan gelen bir isteği doğrudan taklit edebilir. Bu nedenle web sunucuları, doğru yapılandırılmış CORS'a ek olarak kimlik doğrulama ve oturum yönetimi gibi hassas veriler üzerinde korumalar uygulamaya devam etmelidir.
Portswigger Academy: