X-Forwarded-For HTTP Başlığı
Merhaba arkadaşlar , bugün size X-Forwarded-For http başlığının ne işe yaradığını anlatacağım.
bu başlık dediğim gibi bir http başlığıdır. İnternet erişimlerinde bir proxy sunucusu kullandığınız durumlarda , yani hedef siteye girerken proxy kullanarak girdiğinizde web sunucusu orjinal istediğ yapan kullanıcının IP Adresini göremez.
İlk olarak Squid proxy geliştiricileri tarafından implemente edilen bu başlık, diğer bir çok proxy cihazında da kullanılmaktadır. Kısaca XFF'de denilebilir.
Biz bir websitesine girmek istediğimiz'de google abimizi açıp istediğimiz siteyi yazıp enter tuşuna basarız , peki arkaplanda bu iş nasıl gerçekleşiyor.
biz o enter tuşuna basınca bizim makinemiz karşı makineye bir istek atıyor , ki bu istek HTTP'dir.
Http isteği gönderilirken bazı http header başlıkları ile gönderiliyor.
mesela basit bir http headerı ;
Kod:
GET / HTTP/1.1
Host: turkhackteam.org
User-Agent: googlebot
falanca filanca daha başka header başlıkları vardır ben kısa kestim. mesela ben burda GET Metodu üzerinden turkhackteam.org adresine googlebot useragentini kullanarak bir http isteği atmışım.Ben bu isteği atınca benim real ip adresim üzerinden gidiyor bu http header'ı. yani benim ip adresim 22.11.33.44 olsa bu adres üzerinden gidecektir.
ve hedef makinada benim bu gönderdiğim header'ı alıyor ve incelemeye başlıyor ama hedef makina bu headerı alınca alta başka header başlıklarıda çıkıyor bu diğer header başlıklarında gönderen kişinin ip adresi yazıyor ve siz fazla request attığınızda kısaca dos attığınızda ip ban almanızın nedeni bu kısa süre içinde gelen isteklerde sürekli aynı ip varsa ban yersiniz kısa ve özet.
Peki biz bu sefer proxy kullanırız değilmi ?
Proxyden atsında benim ip belli olmasın diyenler vardır aranızda siz bu sefer gidip proxy ile vurduğunuzda bu X-Forwarded-For başlığı devreye giriyor.
hani biz üste bir http header'ı gönderdik ya hedef makinaya hedef makinada bunu paketi aldı biz bunu proxy ile gönderdiğimizde hedef proxy kullansanız bile real ip adresiniz oraya düşüyor
işte buda proxy kullanıp ip ban alana arkadaşlara gelsin
yani olay aynen böyle oluyor;
biz proxy kullanarak http headerı gönderdik;
Kod:
GET / HTTP/1.1
Host: turkhackteam.org
User-Agent: googlebot
hedef makina bunu aldı ve hedef makinada siz aynen şu şekil gözüküyorsunuz:
Kod:
GET / HTTP/1.1
Host: turkhackteam.org
User-Agent: googlebot
X-Forwarded-For: < gerçek ip adersiniz burda çıkıyor >
anladınızmı bu X-Forwarded-For başlığını proxy kullansanız bile , peki orda nasıl çıkmayabiliriz sorusuna gelirsek ;
Anonymous proxy, transparent proxy, elit proxy kullanırsan çıkmazsın yani her bulduğun proxy'yi kullanmayacaksın....
Şuraya konuyla ilgili bir fotograf atiyim incelersiniz:
X-Forwarded-For'un kötüye kullanımı
HTTP başlıklarını log'layabilen web sunucularına ait kayıt mekanizmalarının, kullanıcı
tarafından gönderilen X-Forwarded-For başlığını işleyememesi durumlarında hafıza taşması,
web sunucusu haklarıyla komut çalıştırma, log dosyalarına bozuk veri girilerek dosyanın veya
formatının bozulması vb. güvenlik problemlerinden etkilenebilir.
XFF başlığını tam olarak kontrol etmeden log'layan mekanizmaların ürettiği log'ları işleyen
log analiz yazılımları ve benzeri yazılımlar da komut çalıştırma, Cross Site Scripting vb.
problemlerden etkilenebilirler
XFF'in kötüye kullanılmasının daha kolay olduğu durumlar, uygulama geliştiriciler tarafından
XFF başlığının web uygulamaları içerisinde kullanıldığı durumlardır.
Neyse şuanlık bukadar olsun devamı daha sonra gelir
demin c# ile uğraşıyordum mola vermiştim yine birşeyler anlatmak istedim
konu alıntımı ?
birazı benden birazı google amcadan