Web-Proxy Auto-Discovery-Protokoll

Das Web-Proxy Auto-Discovery (WPAD) -Protokoll ist eine Methode, die von Clients verwendet wird, um die URL einer Konfigurationsdatei mithilfe zu finden DHCP und/oder DNS Entdeckungsmethoden. Sobald die Erkennung und Download der Konfigurationsdatei abgeschlossen ist, kann sie ausgeführt werden, um den Proxy für eine bestimmte URL zu bestimmen.

Geschichte

Das WPAD -Protokoll beschreibt nur den Mechanismus zum Erkennen des Speicherorts dieser Datei, das am häufigsten bereitgestellte Konfigurationsdateiformat ist das Format des Konfigurationsdatei, das ist das, das am häufigsten bereitgestellt wird Proxy Auto-Config Format ursprünglich entworfen von Netscape im Jahr 1996 für Netscape Navigator 2.0.[1] Das WPAD -Protokoll wurde von einem Konsortium von Unternehmen eingezogen, einschließlich Inktomi Corporation, Microsoft Corporation, Realnetworks, Inc., und Sun Microsystems, Inc. (jetzt Oracle Corp.). WPAD ist in einem Internet-Enttäuschung dokumentiert, das im Dezember 1999 abgelaufen ist.[2] WPAD wird jedoch immer noch von allen großen Browsern unterstützt.[3][4] WPAD wurde zuerst mit enthalten Internet Explorer 5.0.

Kontext

Damit alle Browser in einer Organisation dieselbe Proxy -Richtlinie geliefert werden, ohne jeden Browser manuell zu konfigurieren, sind beide folgenden Technologien erforderlich:

  • Proxy Auto-Config (PAC) Standard: Erstellen und veröffentlichen Sie eine zentrale Proxy -Konfigurationsdatei. Details werden in einem separaten Artikel erläutert.
  • Web-Proxy Auto-Discovery Protocol (WPAD) Standard: Stellen Sie sicher, dass die Browser eines Unternehmens diese Datei ohne manuelle Konfiguration finden. Dies ist das Thema dieses Artikels.

Der WPAD -Standard definiert zwei alternative Methoden, mit denen der Systemadministrator den Speicherort der Proxy -Konfigurationsdatei mithilfe der Veröffentlichung veröffentlichen kann Dynamisches Hostkonfigurationsprotokoll (DHCP) oder die Domainnamensystem (DNS):

Vor dem Abrufen der ersten Seite a Webbrowser Das Implementieren dieser Methode sendet eine DHCPinform -Abfrage an den lokalen DHCP -Server und verwendet die URL aus der WPAD -Option in der Antwort des Servers. Wenn der DHCP -Server nicht die gewünschten Informationen liefert, wird DNS verwendet. Wenn zum Beispiel der Netzwerkname des Computers des Benutzers ist pc.department.branch.example.comDer Browser wird nacheinander die folgenden URLs versuchen, bis er in der Domäne des Clients eine Proxy -Konfigurationsdatei findet:

  • http://wpad.department.branch.example.com/wpad.dat
  • http://wpad.branch.example.com/wpad.dat
  • http://wpad.example.com/wpad.dat
  • http://wpad.com/wpad.dat (in falschen Implementierungen siehe Hinweis in Sicherheit unten)

(Hinweis: Dies sind Beispiele und sind keine "lebenden" URLs, da sie den reservierten Domain -Namen von "verwenden"Beispiel.com".)

Zusätzlich unter Windows, wenn die DNS -Abfrage dann erfolglos ist Link-lokale Multicast-Namensauflösung (Llmnr) und/oder Netbios wird verwendet.[5][6]

Anmerkungen

DHCP hat eine höhere Priorität als DNS: Wenn DHCP die WPAD -URL liefert, wird keine DNS -Suche durchgeführt. Dies funktioniert nur mit DHCPV4. In DHCPv6 wird keine WPAD-Option definiert.
Beachten Sie, dass Firefox DHCP, nur DNS, nicht unterstützt, und dasselbe gilt für Chrome auf anderen Plattformen als Windows und Chromeos sowie für Versionen von Chrome, die älter als Version 13 sind.[3][4]

Beim Bau des Abfragepakets entfernt DNS -Lookup den ersten Teil des Domänennamens (den Client -Host -Namen) und ersetzt ihn durch wpad. Dann "bewegt sich" in der Hierarchie, indem mehr Teile des Domain -Namens entfernt werden, bis es eine WPAD -PAC -Datei findet oder die aktuelle Organisation verlässt.

Der Browser vermutet, wo sich die Organisationsgrenzen befinden. Die Vermutung ist oft geeignet für Domains wie 'Company.com' oder 'University.edu', aber falsch für 'Company.co.uk' (siehe Sicherheit unten).

Für DNS -Lookups ist der Pfad der Konfigurationsdatei immer wpad.dat. Für das DHCP -Protokoll ist jede URL nutzbar. Aus herkömmlichen Gründen werden PAC -Dateien häufig genannt Proxy.pac (Natürlich werden Dateien mit diesem Namen von der WPAD -DNS -Suche ignoriert).

Das Mime Typ der Konfigurationsdatei muss "Anwendung/x-ns-proxy-autoconfig" sein. Sehen Proxy Auto-Config für mehr Details.

Internet Explorer und Konqueror sind derzeit die einzigen Browser, die sowohl die DHCP- als auch für DNS -Methoden unterstützen; Die DNS -Methode wird von den meisten großen Browsern unterstützt.[7]

Anforderungen

Damit WPAD funktioniert, müssen einige Anforderungen erfüllt werden:

  • Um DHCP zu verwenden, muss der Server so konfiguriert sein, dass die Option "Site-lokal" ("Auto-Proxy-Config") mit einem Stringwert von z. http://example.com/wpad.dat wobei "example.com" die Adresse eines Webservers ist.
  • Um die DNS -einzige Methode zu verwenden, ist für einen Host namens WPAD ein DNS -Eintrag erforderlich.
  • Der Host an der WPAD -Adresse muss in der Lage sein, a zu dienen Website.
  • In beiden Fällen muss der Webserver so konfiguriert sein, dass die WPAD -Datei mit a serviert wird Mime Typ von Anwendung/X-NS-Proxy-Autoconfig.
  • Wenn die DNS -Methode verwendet wird, ist eine Datei mit dem Namen wpad.dat muss sich auf der WPAD -Website befinden Wurzelverzeichnis.
  • Die PAC -Dateien werden in der Diskussion erörtert Proxy Auto-Config Artikel.
  • Verwenden Sie Vorsicht beim Konfigurieren eines WPAD -Servers in a Virtuelles Hosting Umgebung. Wenn die automatische Proxy -Erkennung verwendet wird, senden WinHTTP und Winet in Internet Explorer 6 und früher einen "Host: <Press>" -Header und IE7+ und Firefox senden einen "Host: WPAD" -Header. Daher wird empfohlen, dass die Datei wpad.dat eher unter dem Standard -Virtual Host als in ihrer eigenen gehostet wird.
  • Internet Explorer Version 6.0.2900.2180.xpsp_sp2_rtm fordert "wpad.da" anstelle von "wpad.dat" vom Webserver an.
  • Wenn Sie Windows Server 2003 (oder später) als DNS -Server verwenden, müssen Sie möglicherweise die deaktivieren DNS Server Global Query Blockliste, oder ändern Sie die Registrierung sogar, um die Liste der blockierten Abfragen zu bearbeiten.[8][9]

Sicherheit

Während das WPAD -Protokoll die Konfiguration der Webbrowser eines Unternehmens erheblich vereinfacht, muss das WPAD -Protokoll mit Sorgfalt verwendet werden: Einfache Fehler können Türen für Angreifer öffnen, um das zu ändern, was auf dem Browser eines Benutzers erscheint:

  • Ein Angreifer in einem Netzwerk kann einen DHCP -Server einrichten, der die URL eines böswilligen PAC -Skripts übergibt.
  • Wenn das Netzwerk 'Company.co.uk' und die Datei http://wpad.company.co.uk/wpad.dat nicht bedient wird, werden die Browser http://wpad.co.uk anfordern /wpad.dat. Vor der Einführung der Öffentliche Suffixliste In den 2010er Jahren konnten einige Browser nicht feststellen, dass WPAD.co.uk nicht mehr in der Organisation war.
  • Die gleiche Methode wurde mit http://wpad.org.uk verwendet. Früher diente eine WPAD.DAT -Datei, die den gesamten Datenverkehr des Benutzers auf eine Internetauktionsseite umleiten würde.
  • ISPs, die implementiert haben DNS -Hijacking Kann die DNS -Suche des WPAD -Protokolls brechen, indem Benutzer zu einem Host angewiesen werden, der kein Proxy -Server ist.
  • Durchgesickerte WPAD -Abfragen können zu Kollisionen von Domänennamen mit internen Netzwerk -Namensschemata führen. Wenn ein Angreifer eine Domäne registriert, um durchgesickerte WPAD-Abfragen zu beantworten und einen gültigen Proxy zu konfigurieren, besteht das Potenzial, Man-in-the-Middle-Angriffe (MITM) im Internet durchzuführen.[10]

Über die WPAD -Datei kann der Angreifer die Browser der Benutzer auf seine eigenen Proxys richten und den WWW -Datenverkehr aller an das Netzwerk verbundenen WWW -Datenverkehr abfangen und ändern. Obwohl im Jahr 2005 eine vereinfachte Lösung für die WPAD -Handhabung von Windows angewendet wurde, behielte das Problem nur für die .com -Domäne fest. Eine Präsentation bei Kiwicon zeigten, dass der Rest der Welt für dieses Sicherheitsloch nach wie vor kritisch anfällig war, wobei eine Stichprobendomäne in Neuseeland zu Testzwecken registriert wurde, die Proxy -Anfragen aus dem ganzen Land erhielten, mit mehreren Sekunden von mehreren Sekunden. Einige der Domain -Namen der WPAD.TLD (einschließlich COM, NET, ORG und USA) verweisen nun auf die Client -Loopback -Adresse, um vor dieser Sicherheitsanfälligkeit zu schützen, obwohl einige Namen noch registriert sind (wpad.co.uk).

Ein Administrator sollte daher sicherstellen, dass ein Benutzer allen DHCP -Servern in einer Organisation vertrauen kann und dass alle möglichen WPAD -Domänen für die Organisation unter Kontrolle sind. Wenn für eine Organisation keine WPAD -Domäne konfiguriert ist, wird ein Benutzer an jedem externen Ort über die nächste WPAD -Site in der Domänenhierarchie verfügen und diese für die Konfiguration verwenden. Dies ermöglicht es jedem, der die WPAD -Subdomäne in einem bestimmten Land registriert, eine Durchführung von a Mann-in-the-Middle-Angriff Auf großen Teilen des Internetverkehrs dieses Landes, indem sie sich als Stellvertreter für alle Verkehrsstandorte oder Standorte von Interesse einsetzt.

Zusätzlich zu diesen Fallen holt die WPAD -Methode eine JavaScript -Datei ab und führt sie auf allen Benutzernbrowsern aus, selbst wenn sie JavaScript für das Anzeigen von Webseiten deaktiviert haben.

Verweise

  1. ^ "Navigator Proxy Auto-Config-Dateiformat". Netscape Navigator Dokumentation. März 1996. archiviert von das Original Am 2007-03-07. Abgerufen 2015-02-10.
  2. ^ Gauthier, Paul; Josh Cohen; Martin Dunsmuir; Charles Perkins (1999-07-28). "Web-Proxy Auto-Discovery-Protokoll (Internet-Enttäuschung)". Ietf. Abgerufen 2015-02-10.
  3. ^ a b "Chrom #18575: Nicht-Windows-Plattformen: WPAD (Proxy Autodetekte Discovery) testet DHCP nicht". 2009-08-05. Abgerufen 2015-02-10.
  4. ^ a b "Firefox #356831 - Proxy Autodiscovery überprüft DHCP (Option 252) nicht". 2006-10-16. Abgerufen 2015-02-10.
  5. ^ "Fehlerbehebung bei Webproxy Auto Discovery (WPAD) Problemen". GFI -Software. Abgerufen 2015-02-10.
  6. ^ Hjelmvik, Erik (2012-07-17). "WPAD -Mann in der Mitte". Abgerufen 2015-02-10.
  7. ^ "Konqueror: Automatische Proxy -Entdeckung". Kde. 2013-05-20. Abgerufen 2015-02-10.
  8. ^ King, Michael (2010-02-17). "WPAD löst sich in DNS nicht auf". Abgerufen 2015-02-10.
  9. ^ "WPAD aus der DNS -Blockliste entfernen". Microsoft Technet. Abgerufen 2015-02-10.
  10. ^ "Alarm (TA16-144A) WPAD-Name Kollisionsanfälligkeit". US-Cert. 2016-10-06. Abgerufen 2017-05-02.

Weitere Lektüre