De Web Proxy Auto-Discovery Protocol ( WPAD ; Duitse “ Web Proxy Auto-Discovery Protocol “ ) is een protocol dat Web toelaat klanten (zoals een browser ) naar web te gebruiken proxies binnen een computernetwerk kan automatisch door een te vinden autoconfiguration proxy (PAC) Bestand wordt opgeslagen onder een te raden URL , bijvoorbeeld http://wpad.example.com/wpad.dat
. Het Proxy Auto-Config bestandsformaat is oorspronkelijk ontwikkeld door Netscape Communications in 1996 voor Netscape Navigator 2.0. [1]
WPAD maakt het mogelijk om alle webclients van een organisatie dezelfde proxyservers te laten gebruiken zonder deze afzonderlijk handmatig te hoeven configureren. Dit wordt onder andere ondersteund door de populaire Mozilla Firefox- , Google Chrome- en Internet Explorer- browsers in de huidige versies, maar ook door andere programma’s en bureaubladomgevingen zoals Unity .
Geschiedenis
WPAD is ontworpen door een consortium van Inktomi Corporation , Microsoft , RealNetworks en Sun Microsystems (nu Oracle Corporation ). WPAD is gedocumenteerd als een concept van internet , dat in december 1999 is verlopen. [2] Toch WPAD nog steeds ondersteund door alle populaire browsers. [3] [4] In Internet Explorer is WPAD geïntroduceerd met versie 5 .
Context
Om alle browsers van een organisatie opdracht te geven om hun proxy volgens dezelfde regels te kiezen zonder alles handmatig te hoeven configureren, zijn twee technologieën nodig.
- De Proxy Auto Config (PAC) -standaard
- Er wordt een centraal proxy-configuratiebestand gemaakt. (Zie het artikel voor details).
- De standaard voor het Web Proxy Autodiscovery Protocol (WPAD)
- Dit zorgt ervoor dat elke browser dit bestand automatisch zal vinden. Dit artikel gaat hier over.
De WPAD-standaard definieert verschillende alternatieve methoden waarmee de systeembeheerder de locatie van het proxyconfiguratiebestand kan publiceren:
- Dynamic Host Configuration Protocols (DHCP)
- Domain Name Systems (DNS A / CNAME, „Bekende aliassen“)
- Service Location Protocols (SVRLOC / SLP) (optioneel)
- DNS SRV-records
- DNS TXT „service: URL’s“
Voordat de eerste pagina wordt opgevraagd, verzendt een webbrowser die de methode beheert, een DHCPINFORM-aanvraag naar de lokale DHCP-server en gebruikt vervolgens de URL die wordt doorgegeven aan de WPAD-optie van het antwoord. Als de DHCP-server niet over de gevraagde informatie beschikt, wordt de DNS gebruikt. Als de machine bijvoorbeeld een FQDN- naam ( Fully Qualified Domain Name ) ispc.department.branch.example.com
, doorzoekt de browser sequentieel de volgende URL’s totdat een proxyconfiguratiebestand wordt gevonden.
http://wpad.department.branch.example.com/wpad.dat
http://wpad.branch.example.com/wpad.dat
http://wpad.example.com/wpad.dat
http://wpad/wpad.dat
- Onder bepaalde omstandigheden ook
http://wpad.com/wpad.dat
(zie #Safety )
Opmerkingen
- DHCP heeft een hogere prioriteit dan DNS: als DHCP een WPAD-URL retourneert, wordt er geen DNS-query uitgevoerd.
- In de DNS-query wordt het eerste deel van het adres (dat vermoedelijk de client-id vertegenwoordigt) verwijderd en vervangen
wpad
door. Vervolgens gaat het omhoog in de hiërarchie door meer delen van de domeinnaam te verwijderen totdat het een WPAD PAC-bestand vindt of de organisatie verlaat. - De browser probeert te raden waar de organisatie zal vertrekken. Deze schatting geldt voor domeinen op het patroon
firma.com
ofuniversitaet.edu
te vaak, echter, is het bijvoorbeeldcompany.co.uk
niet (zie #Sicherheit ). - Voor de DNS-query is het pad van het configuratiebestand altijd
wpad.dat
. Het DHCP-protocol kan elke URL gebruiken. Om traditionele redenen zijn de namen van de PAC-bestanden vaakproxy.pac
(natuurlijk worden bestanden met deze naam genegeerd door de WPAD DNS-lookup). - DNS-query met Microsoft Internet Explorer 6 op Windows XP verzendt als
host
het IP-adres, dus de WPAD-webserver moet worden geconfigureerd om te worden geadresseerd als een op naam gebaseerde VirtualHost met alle mogelijke hostnamen in het HTTP / 1.1-verzoek
Voorbeeld voor Apache:
NameVirtualHost192.168.xx.yy
ServerNamewpad.sub.domain.tld
ServerAliaswpad
ServerAlias192.168.xx.yy
- Het MIME- type van het configuratiebestand moet zijn
application/x-ns-proxy-autoconfig
. Zie ook: Proxy Auto Config .
Checklist
Om WPAD te laten werken, moet aan een aantal voorwaarden worden voldaan.
- Om DHCP te kunnen gebruiken, moet de DHCP worden geconfigureerd om de
site-local
-optie 252 (auto-proxy-config
) tehttp://xxx.yyy.zzz.qqq/wpad.dat
leveren met een reekswaarde van , waarxxx.yyy.zzz.qqq
het IP-adres van een webserver moet zijn. (Het is misschien beter om een domeinnaam te gebruiken in plaats van een numeriek IP-adres). Als u de DHCP-server van Microsoft gebruikt, moet userver options
elke server enscope options
elk gebied controleren. - Bovendien moet de computer een DHCP-client zijn om DHCP te kunnen gebruiken. Met andere woorden, de browser (Internet Explorer en Firefox) niet uitzenden geen eigen (nieuw) DHCP-verzoeken, maar ze gebruiken alleen de eerder (in de eerste toewijzing van het IP-adres van de netwerkkaart via DHCP) toegewezen WPAD optie 252. Als de computer In de netwerkkaartinstellingen DHCP _not_active verzendt de browser geen DHCP-aanvraag.
- Om DNS te gebruiken, is een DNS-record vereist voor een host met de naam WPAD.
- op Windows 2003 DNS Server met MS09-008 bewerk de DNS-blokkeerlijst [1]
- Voor Windows 2008 DNS Server, bewerk het DNS Block List Technet-artikel in de DNS-bloklijst
- De WPAD-host moet een webpagina kunnen leveren.
- In beide gevallen moet de webserver worden geconfigureerd om .dat-bestanden met het MIME- type af te leveren
application/x-ns-proxy-autoconfig
. - Een bestand met de naam wpad.dat moet in de hoofdmap van de WPAD-pagina staan.
- Voorbeelden van PAC-bestanden in het artikel Proxy Auto-Config .
Beveiliging
Hoewel het vereenvoudigen van de configuratie van de webbrowser van een organisatie, moet het WPAD-protocol met zorg worden behandeld, omdat zelfs kleine fouten serieuze aanvallen mogelijk maken.
- Een aanvaller binnen het netwerk kan een DHCP-server instellen die de URL van een kwaadwillend PAC-script zal dumpen.
- Als de respectieve organisatie een domein heeft volgens het patroon
company.co.uk
ofcompany.com
als er geenhttp://wpad.company.co.uk/wpad.dat
ofhttp://wpad.company.com/wpad.dat
beschikbaar is binnen het netwerk , zullen sommige browsers omhttp://wpad.co.uk/wpad.dat bzw. http://wpad.com/wpad.dat
verdere informatie vragen omdat ze geen onderscheid maken tussen het domein van de organisatie en een domein op het hoogste niveau of de hele staat. De toegangen tot de webservers van wpad-domeinen zoalshttp://wpad.com/
duidelijk getoond.
Met het WPAD-bestand kan een aanvaller alle querybrowsers omleiden naar hun proxy’s en vervolgens alle verkeer onderscheppen en wijzigen.
Daarom moet ervoor worden gezorgd dat alle DHCP-servers in een organisatie kunnen worden vertrouwd en dat alle WPAD-domeinen die uit elk domein kunnen ontstaan, onder de controle van de organisatie staan.
Naast deze gevaren krijgt de WPAD in principe een JavaScript-bestand dat op alle browsers van het systeem wordt uitgevoerd, zelfs als JavaScript is uitgeschakeld op webpagina’s.
Individuele proeven
- Omhoog springen↑ Navigator Proxy Auto-Config Bestandsindeling . In: Netscape Navigator- documentatie . Maart 1996. Gearchiveerd vanaf het origineel op 7 maart 2007. Betreden op 10 februari 2015.
- Jump-up↑ Paul Gauthier: Web Proxy Auto-Discovery Protocol (INTERNET-DRAFT) . In: IETF . 28 juli 1999. Betreden op 10 februari 2015.
- Jump up↑ Chromium # 18575: Niet-Windows-platforms: WPAD (proxy autodetect discovery) test DHCP niet . 5 augustus 2009. Betreden op 10 februari 2015.
- Jump up↑ Firefox # 356831 – Proxy autodiscovery controleert DHCP niet (optie 252) . 16 oktober 2006. Betreden op 10 februari 2015.