X-Forwarded-For

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche

Der X-Forwarded-For (XFF) ist ein De-facto-Standard-HTTP-Header-Eintrag im Internet. Der Header dient dazu, die IP-Adresse des Benutzers zu übermitteln, wenn dieser durch einen Proxy auf einen Webserver zugreift.

Meistens gehören diese Proxys zu großen Internet Service Providern (ISP), die die Kunden entweder ermutigen oder zwingen (im Fall von AOL bei Verwendung der hauseigenen Software oder bei einigen Mobilfunkunternehmen zur Kompression), den oder die Proxy-Server zu nutzen. In einigen Fällen sind diese Proxys transparent und arbeiten lediglich als Cache, da der Traffic dann nicht mehr das Netz des Providers verlassen muss (und damit den ISP weniger kostet).

Bei intransparenten Proxys hingegen ist dem Gegenüber nur die IP-Adresse des Proxys bekannt, er hat keinen Einblick in die reale Adresse des Clients. Dies macht den Proxy zu einem Anonymisierungsdienst. XFF wurde erschaffen, um dem Server die Möglichkeit zu geben, Clients eindeutig zu identifizieren. Ohne den XFF-Header würde ein Webserver nur die IP-Adresse des Proxys sehen, aber nicht die echte IP-Adresse des Benutzers.

Format[Bearbeiten]

X-Forwarded-For: client1, proxy1, proxy2

client1 ist die ursprüngliche IP-Adresse des Clients. proxy1 und proxy2 sind die IP-Adressen der dazwischengeschalteten Proxys. Die erste IP-Adresse ist immer die des Originalclients und die letzte die des Proxys, der den Request vor dem Proxy durchgeleitet hat, dessen IP-Adresse der Server sieht (proxy3).

Der XFF-Header ist dadurch für Fälschungen anfällig. Abhilfe schafft hier eine Liste von bekannten, vertrauenswürdigen Proxys – wenn alle beteiligten Proxys auf einer solchen Liste verzeichnet sind, so ist anzunehmen, dass die übergebene Client-IP-Adresse korrekt ist.

Software[Bearbeiten]

XFF-Senden wird von vielen Proxys unterstützt, u. A. Squid[1], Apache mod_proxy[2], Pound[3], Varnish Cache[4], IronPort Web Security Appliance[5], F5 Big-IP, Blue Coat ProxySG, Cisco Cache Engine, Finjan’s Vital Security, NetApp NetCache, USP Secure Entry Server, jetNEXUS, Crescendo Networks’ Maestro und Microsoft ISA Server 2004/2006 mit der Erweiterung Winfrasoft X-Forwarded-For for ISA Server.

Siehe auch[Bearbeiten]

Einzelnachweise[Bearbeiten]

  1. SquidFaq/ConfiguringSquid – Squid Web Proxy Wiki
  2. mod_proxy – Apache HTTP Server
  3. Pound proxy, unter Request Logging
  4. Varnish FAQ regarding logging
  5. IronPort Web Security Appliances