fbpx
维基百科

网络代理自动发现协议

网络代理自动发现协议Web Proxy Auto-Discovery ProtocolWPAD)是一种客户端使用DHCP和/或DNS发现方法来定位一个配置文件URL的方法。在检测和下载配置文件后,它可以执行配置文件以测定特定URL应使用的代理。

历史 编辑

WPAD协议仅概述了发现该文件位置的机制,而最常被部署的文件格式是最初由网景在1996年为Netscape Navigator 2.0设计的代理自动配置格式。[1]WPAD协议由一个包括Inktomi英语Inktomi Corporation微软RealNetworks太阳微系统(现为甲骨文公司)公司组成的联盟起草。WPAD被文档化的互联网草案已在1999年12月到期,[2]但WPAD仍被所有主要浏览器支持。[3][4]WPAD在Internet Explorer 5.0中被首次引入。

上下文 编辑

若要为组织中的所有浏览器提供相同的代理策略,而无需手动配置每个浏览器,需要使用下列两种技术:

  • 代理自动配置(PAC)标准:创建和发布一个中央代理配置文件。细节详见上述条目。
  • 网络代理自动发现协议(WPAD)标准:确保组织中的浏览器在非手动配置的情况下找到文件。这是本条目的范畴。

WPAD标准定义了两种备用方法,系统管理员可以用它们发布代理配置文件的位置,它们是使用动态主机设置协议(DHCP)或域名系统(DNS):

在获取第一个页面前,实现有此方法的网页浏览器给本地DHCP服务器发送一个DHCPINFORM查询,并使用服务器的回复中的WPAD选项。如果DHCP服务器没有提供所需的信息,则再使用DNS。假设用户的计算机网络名称为pc.department.branch.example.com,浏览器将依次尝试下列URL,以期成功在客户端的域中找到一个代理配置文件:

  • 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(在不正确的实现中。参阅下面的“安全”章节)

(注意:上述例子不是实际“在线”的URL,其中的域名被采用保留域名“example.com”替代。)

在Windows上,如果DNS查询不成功,那么将使用本地链路多播名称解析英语Link-Local Multicast Name Resolution(LLMNR)或NetBIOS。[5][6]

要点 编辑

DHCP比DNS有着更高的优先级:如果DHCP提供了WPAD URL,则不会进行DNS查询。只能配合DHCPv4使用,WPAD-Option选项没有在DHCPv6中定义。 应注意Firefox不支持DHCP,只进行DNS查询,并且非Windows、ChromeOS平台以及版本号小于13的Chrome也是如此。[3][4]

当构造查询数据包时,DNS查询将剔除域名的首个部分(客户端的主机名)并以wpad取代。然后,它通过移除更多域名的部分来在层次结构中“向上移动”,直到它找到一个WPAD PAC文件或者离开当前组织。

浏览器会猜测组织的边界。这种猜测对于“company.com”或“university.edu”等是正确的,但对于“company.co.uk”出错(见下面的“安全”章节)。

对于DNS查询,配置文件的路径始终为wpad.dat。对于DHCP协议,任何URL均可。由于传统原因,PAC文件通常名为proxy.pac(当然,此名称的文件将被WPAD DNS搜索忽略)[來源請求]

配置文件的MIME类型必须为“application/x-ns-proxy-autoconfig”。参见代理自动配置了解更多信息。

Internet Explorer和Konqueror是目前唯一同时支持DHCP和DNS方法的浏览器;大多数主要浏览器都支持DNS方法。[7]

前提条件 编辑

为使WPAD生效,需要具备几个条件:

  • 为使用DHCP,服务器必须配置为提供“site-local”选项252(“auto-proxy-config”及字符串值“http://example.com/wpad.dat”(无须引号),其中“example.com”是网页服务器的地址(无论点分十进制格式的IP地址或一个DNS名称)。
  • 为使用仅DNS模式,需要一个主机名为WPAD的DNS项目。
  • 在WPAD地址上的主机必须可以提供網頁
  • 在这两种情况下,网页服务器必须配置为提供MIME类型为“application/x-ns-proxy-autoconfig”的WPAD文件。
  • 如果使用了DNS方法,名为wpad.dat的文件必须位于WPAD网页服务器的根目录
  • PAC文件的细节见代理自动配置条目。
  • 在一个虚拟主机环境中配置WPAD服务器时请小心使用。在使用自动代理检测时,Internet Explorer 6及更早版本中的WinHTTP和WinINET会发送“Host: <IP address>”头,在IE7+和Firefox中则发送“Host: wpad”头。因此,建议将wpad.dat文件托管在默认虚拟主机而非其自身下。
  • Internet Explorer版本6.0.2900.2180.xpsp_sp2_rtm会向网页服务器请求“wpad.da”而不是“wpad.dat”。
  • 如果您使用Windows Server 2003(及更新版本)作为您的DNS服务器,您可能必须禁用DNS服务器全局查询阻止列表(DNS Server Global Query Block List)或修改注册表以编辑阻止查询的列表。[8][9]

安全 编辑

在极大简化组织中浏览器配置的同时,WPAD协议必须被小心使用:简单的疏失就可能留下漏洞,攻击者可以篡改用户浏览器中显示的内容:

  • 网络内部的攻击者可以建立一个DHCP服务器,提供一个恶意PAC脚本的网址。
  • 如果网络是“company.co.uk”并且http://wpad.company.co.uk/wpad.dat文件未提供,浏览器将请求http://wpad.co.uk/wpad.dat。浏览器不会测定这是否仍处在公司内部。参见http://wpad.com/ (页面存档备份,存于互联网档案馆)上的例子。
  • 同样的方法已被http://wpad.org.uk使用。它提供一个wpad.dat文件从而将用户的所有流量重定向到一个互联网拍卖网站。
  • 实施DNS劫持的ISP可能阻断WPAD协议的DNS查询,从而将用户引导至非代理服务器的主机。
  • 泄露的WPAD查询可能导致与内部网络命名方案的域名冲突。如果攻击者注册一个域来回答WPAD查询并配置一个有效的代理,这有可能进行跨越互联网的中间人攻击[10]

通过WPAD文件,攻击者可以引导用户的浏览器到他们自己的代理,拦截和修改所有WWW流量。尽管2005年对Windows WPAD的处理应用了一个简单的修复,但它只解决了.com域的问题。在Kiwicon英语Kiwicon的一次演讲表示,世界上的许多地方仍有极其脆弱的安全漏洞,在新西兰为测试目的注册的一个示例域名在几秒内收到了来自全国各地的代理请求。几个wpad.tld域名(包括COM, NET, ORG和US)现在指向客户端环回地址以帮助防范此安全漏洞,虽然还有一些名称仍是注册状态(如wpad.co.uk)。

因此,管理员应确保用户可以信任组织中的所有DHCP服务器,并且组织内的所有可能的wpad域都在控制之下。此外,如果没有为组织配置wpad域,用户将转向域层次结构中的下一个(更高层级)wpad站点并使用其配置。这允许能在顶级域注册wpad子域名的人将自己的代理设为对所有流量或特定站点提供服务,从而施行对特定国家或区域的大范围中间人攻击

除了上述“陷阱”,WPAD方法是获取一个JavaScript文件并在所有用户浏览器上执行,即使用户已禁用查看网页时使用的JavaScript。

参考资料 编辑

  1. ^ . Netscape Navigator Documentation. March 1996 [2015-02-10]. (原始内容存档于2007-03-07). 
  2. ^ Gauthier, Paul; Josh Cohen; Martin Dunsmuir; Charles Perkins. Web Proxy Auto-Discovery Protocol (INTERNET-DRAFT). IETF. 1999-07-28 [2015-02-10]. (原始内容存档于2012-04-23). 
  3. ^ 3.0 3.1 Chromium #18575: Non-Windows platforms: WPAD (proxy autodetect discovery) does not test DHCP. 2009-08-05 [2015-02-10]. (原始内容于2015-09-12).  引证错误:带有name属性“chrome”的<ref>标签用不同内容定义了多次
  4. ^ 4.0 4.1 Firefox #356831 - Proxy autodiscovery doesn't check DHCP (option 252. 2006-10-16 [2015-02-10]. (原始内容于2021-04-14).  引证错误:带有name属性“firefox”的<ref>标签用不同内容定义了多次
  5. ^ Troubleshooting Web Proxy Auto Discovery (WPAD) issues. GFI Software英语GFI Software. [2015-02-10]. (原始内容于2021-04-14). 
  6. ^ Hjelmvik, Erik. WPAD Man in the Middle. 2012-07-17 [2015-02-10]. (原始内容于2020-08-14). 
  7. ^ . KDE. 2013-05-20 [2015-02-10]. (原始内容存档于2015-02-11). 
  8. ^ King, Michael. WPAD does not resolve in DNS. 2010-02-17 [2015-02-10]. (原始内容于2021-04-14). 
  9. ^ Removing WPAD from DNS block list. Microsoft TechNet. [2015-02-10]. (原始内容于2017-02-14). 
  10. ^ 存档副本. [2016-12-23]. (原始内容于2020-06-18). 

拓展阅读 编辑

  • Automatic proxy HTTP server configuration in web browsers. Frequently Given Answers. 2004 [2016-12-23]. (原始内容于2016-08-26). 
  • Jim Groves. DNS Server Global Query Block List. November 2007 [2016-12-23]. (原始内容于2015-02-16). 
  • PAC File & WPAD Examples. 2015-09-18 [2022-03-25]. (原始内容于2020-12-10). 

网络代理自动发现协议, 此條目翻譯自其他語言維基百科, 需要相關領域的編者協助校對翻譯, 如果您精通本領域, 又能清楚地將來源語言翻譯為中文, 歡迎您協助校訂翻譯, 原文参见维基数据, proxy, auto, discovery, protocol, wpad, 是一种客户端使用dhcp和, 或dns发现方法来定位一个配置文件url的方法, 在检测和下载配置文件后, 它可以执行配置文件以测定特定url应使用的代理, 目录, 历史, 上下文, 要点, 前提条件, 安全, 参考资料, 拓展阅读历史, 编辑wpad协议. 此條目翻譯自其他語言維基百科 需要相關領域的編者協助校對翻譯 如果您精通本領域 又能清楚地將來源語言翻譯為中文 歡迎您協助校訂翻譯 原文参见维基数据 网络代理自动发现协议 Web Proxy Auto Discovery Protocol WPAD 是一种客户端使用DHCP和 或DNS发现方法来定位一个配置文件URL的方法 在检测和下载配置文件后 它可以执行配置文件以测定特定URL应使用的代理 目录 1 历史 2 上下文 3 要点 4 前提条件 5 安全 6 参考资料 7 拓展阅读历史 编辑WPAD协议仅概述了发现该文件位置的机制 而最常被部署的文件格式是最初由网景在1996年为Netscape Navigator 2 0设计的代理自动配置格式 1 WPAD协议由一个包括Inktomi 英语 Inktomi Corporation 微软 RealNetworks和太阳微系统 现为甲骨文公司 公司组成的联盟起草 WPAD被文档化的互联网草案已在1999年12月到期 2 但WPAD仍被所有主要浏览器支持 3 4 WPAD在Internet Explorer 5 0中被首次引入 上下文 编辑若要为组织中的所有浏览器提供相同的代理策略 而无需手动配置每个浏览器 需要使用下列两种技术 代理自动配置 PAC 标准 创建和发布一个中央代理配置文件 细节详见上述条目 网络代理自动发现协议 WPAD 标准 确保组织中的浏览器在非手动配置的情况下找到文件 这是本条目的范畴 WPAD标准定义了两种备用方法 系统管理员可以用它们发布代理配置文件的位置 它们是使用动态主机设置协议 DHCP 或域名系统 DNS 在获取第一个页面前 实现有此方法的网页浏览器给本地DHCP服务器发送一个DHCPINFORM查询 并使用服务器的回复中的WPAD选项 如果DHCP服务器没有提供所需的信息 则再使用DNS 假设用户的计算机网络名称为pc department branch example com 浏览器将依次尝试下列URL 以期成功在客户端的域中找到一个代理配置文件 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 在不正确的实现中 参阅下面的 安全 章节 注意 上述例子不是实际 在线 的URL 其中的域名被采用保留域名 example com 替代 在Windows上 如果DNS查询不成功 那么将使用本地链路多播名称解析 英语 Link Local Multicast Name Resolution LLMNR 或NetBIOS 5 6 要点 编辑DHCP比DNS有着更高的优先级 如果DHCP提供了WPAD URL 则不会进行DNS查询 只能配合DHCPv4使用 WPAD Option选项没有在DHCPv6中定义 应注意Firefox不支持DHCP 只进行DNS查询 并且非Windows ChromeOS平台以及版本号小于13的Chrome也是如此 3 4 当构造查询数据包时 DNS查询将剔除域名的首个部分 客户端的主机名 并以wpad取代 然后 它通过移除更多域名的部分来在层次结构中 向上移动 直到它找到一个WPAD PAC文件或者离开当前组织 浏览器会猜测组织的边界 这种猜测对于 company com 或 university edu 等是正确的 但对于 company co uk 出错 见下面的 安全 章节 对于DNS查询 配置文件的路径始终为wpad dat 对于DHCP协议 任何URL均可 由于传统原因 PAC文件通常名为proxy pac 当然 此名称的文件将被WPAD DNS搜索忽略 來源請求 配置文件的MIME类型必须为 application x ns proxy autoconfig 参见代理自动配置了解更多信息 Internet Explorer和Konqueror是目前唯一同时支持DHCP和DNS方法的浏览器 大多数主要浏览器都支持DNS方法 7 前提条件 编辑为使WPAD生效 需要具备几个条件 为使用DHCP 服务器必须配置为提供 site local 选项252 auto proxy config 及字符串值 http example com wpad dat 无须引号 其中 example com 是网页服务器的地址 无论点分十进制格式的IP地址或一个DNS名称 为使用仅DNS模式 需要一个主机名为WPAD的DNS项目 在WPAD地址上的主机必须可以提供網頁 在这两种情况下 网页服务器必须配置为提供MIME类型为 application x ns proxy autoconfig 的WPAD文件 如果使用了DNS方法 名为wpad dat的文件必须位于WPAD网页服务器的根目录 PAC文件的细节见代理自动配置条目 在一个虚拟主机环境中配置WPAD服务器时请小心使用 在使用自动代理检测时 Internet Explorer 6及更早版本中的WinHTTP和WinINET会发送 Host lt IP address gt 头 在IE7 和Firefox中则发送 Host wpad 头 因此 建议将wpad dat文件托管在默认虚拟主机而非其自身下 Internet Explorer版本6 0 2900 2180 xpsp sp2 rtm会向网页服务器请求 wpad da 而不是 wpad dat 如果您使用Windows Server 2003 及更新版本 作为您的DNS服务器 您可能必须禁用DNS服务器全局查询阻止列表 DNS Server Global Query Block List 或修改注册表以编辑阻止查询的列表 8 9 安全 编辑在极大简化组织中浏览器配置的同时 WPAD协议必须被小心使用 简单的疏失就可能留下漏洞 攻击者可以篡改用户浏览器中显示的内容 网络内部的攻击者可以建立一个DHCP服务器 提供一个恶意PAC脚本的网址 如果网络是 company co uk 并且http wpad company co uk wpad dat文件未提供 浏览器将请求http wpad co uk wpad dat 浏览器不会测定这是否仍处在公司内部 参见http wpad com 页面存档备份 存于互联网档案馆 上的例子 同样的方法已被http wpad org uk使用 它提供一个wpad dat文件从而将用户的所有流量重定向到一个互联网拍卖网站 实施DNS劫持的ISP可能阻断WPAD协议的DNS查询 从而将用户引导至非代理服务器的主机 泄露的WPAD查询可能导致与内部网络命名方案的域名冲突 如果攻击者注册一个域来回答WPAD查询并配置一个有效的代理 这有可能进行跨越互联网的中间人攻击 10 通过WPAD文件 攻击者可以引导用户的浏览器到他们自己的代理 拦截和修改所有WWW流量 尽管2005年对Windows WPAD的处理应用了一个简单的修复 但它只解决了 com域的问题 在Kiwicon 英语 Kiwicon 的一次演讲表示 世界上的许多地方仍有极其脆弱的安全漏洞 在新西兰为测试目的注册的一个示例域名在几秒内收到了来自全国各地的代理请求 几个wpad tld域名 包括COM NET ORG和US 现在指向客户端环回地址以帮助防范此安全漏洞 虽然还有一些名称仍是注册状态 如wpad co uk 因此 管理员应确保用户可以信任组织中的所有DHCP服务器 并且组织内的所有可能的wpad域都在控制之下 此外 如果没有为组织配置wpad域 用户将转向域层次结构中的下一个 更高层级 wpad站点并使用其配置 这允许能在顶级域注册wpad子域名的人将自己的代理设为对所有流量或特定站点提供服务 从而施行对特定国家或区域的大范围中间人攻击 除了上述 陷阱 WPAD方法是获取一个JavaScript文件并在所有用户浏览器上执行 即使用户已禁用查看网页时使用的JavaScript 参考资料 编辑 Navigator Proxy Auto Config File Format Netscape Navigator Documentation March 1996 2015 02 10 原始内容存档于2007 03 07 Gauthier Paul Josh Cohen Martin Dunsmuir Charles Perkins Web Proxy Auto Discovery Protocol INTERNET DRAFT IETF 1999 07 28 2015 02 10 原始内容存档于2012 04 23 3 0 3 1 Chromium 18575 Non Windows platforms WPAD proxy autodetect discovery does not test DHCP 2009 08 05 2015 02 10 原始内容存档于2015 09 12 引证错误 带有name属性 chrome 的 lt ref gt 标签用不同内容定义了多次 4 0 4 1 Firefox 356831 Proxy autodiscovery doesn t check DHCP option 252 2006 10 16 2015 02 10 原始内容存档于2021 04 14 引证错误 带有name属性 firefox 的 lt ref gt 标签用不同内容定义了多次 Troubleshooting Web Proxy Auto Discovery WPAD issues GFI Software 英语 GFI Software 2015 02 10 原始内容存档于2021 04 14 Hjelmvik Erik WPAD Man in the Middle 2012 07 17 2015 02 10 原始内容存档于2020 08 14 Konqueror Automatic Proxy Discovery KDE 2013 05 20 2015 02 10 原始内容存档于2015 02 11 King Michael WPAD does not resolve in DNS 2010 02 17 2015 02 10 原始内容存档于2021 04 14 Removing WPAD from DNS block list Microsoft TechNet 2015 02 10 原始内容存档于2017 02 14 存档副本 2016 12 23 原始内容存档于2020 06 18 拓展阅读 编辑Automatic proxy HTTP server configuration in web browsers Frequently Given Answers 2004 2016 12 23 原始内容存档于2016 08 26 Jim Groves DNS Server Global Query Block List November 2007 2016 12 23 原始内容存档于2015 02 16 PAC File amp WPAD Examples 2015 09 18 2022 03 25 原始内容存档于2020 12 10 取自 https zh wikipedia org w index php title 网络代理自动发现协议 amp oldid 70814462, 维基百科,wiki,书籍,书籍,图书馆,

文章

,阅读,下载,免费,免费下载,mp3,视频,mp4,3gp, jpg,jpeg,gif,png,图片,音乐,歌曲,电影,书籍,游戏,游戏。