Neler yeni

#98 IP spoofing - Cloudflare kullanırken oluşan güvenlik zafiyeti (1 Viewer)

Mesajlar
197
Credits
2,554
Geçenlerde evrimagaci.org'da gezerken merak edip denediğim bir güvenlik açığından bahsedeceğim.
(raporlandı ve patchlendi, artık işe yaramıyor)

image.png



image.png



Cloudflare kullanıyorsanız ziyaretçinin gerçek IP adresini teknik olarak 100% doğrulukla göremezsiniz, çünkü istek cloudflare tarafından proxy'lenir. Yani X-Forwarded-For gibi header'lerin en solundaki değeri okuyarak "gerçek" client IP'sini görürsünüz.

Bunu anlamak için aşağıdaki şemaya bakalım.


image.png


Bu durumda, X-Forwarded-For header'ini şu şekilde spoof'larsak:
image.png

ya da
image.png


Her iki durumda da, yanlış konfigure edilen bir server, client IP'sini X-Forwarded-For'dan okuyacaktır.
Express kullanıyorsanız ve trust proxy'i aktif etmişseniz, req.ip --> X-Forwarded-For'dan okunur. Yani yine spoof'lanabilir.
PHP kullanıyorsanız, ve x-forwarded-for'dan IP adresini restore ediyorsanız, yine spooflanabilir.

Bunu engellemek için, ziyaretçi IP adresini CF-Connecting-IP header'inden okumak zorundasınız. Veya cloudflare pro kullanıyorsanız True-Client-IP de aynı işi görür
Bu iki header, cloudflare tarafından oluşturulur, giden istekte varsa da override edilir. Yani client tarafından spooflanamaz.
 

Bu konuyu görüntüleyen kullanıcılar