<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body><section><h1>仕様書</h1><refs xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:"><ul xmlns="http://www.w3.org/1999/xhtml"><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="5" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[5]</anchor-end> <cite xml:lang="en">draft-cooper-webi-wpad-00 - Web Proxy Auto-Discovery Protocol</cite>
(<time>2015-01-25 18:10:43 +09:00</time> 版)
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://tools.ietf.org/html/draft-cooper-webi-wpad-00">https://tools.ietf.org/html/draft-cooper-webi-wpad-00</anchor-external></li></ul></refs></section><section><h1>プロトコル</h1><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="8" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[8]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">DHCP</anchor> を使う方法と <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">DNS</anchor> を使う方法があります。</p></section><section><h1>歴史</h1><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="3" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[3]</anchor-end> <cite xml:lang="en">draft-ietf-wrec-wpad-00 - Web Proxy Auto-Discovery Protocol</cite> (<time>2016-05-27 01:57:37 +09:00</time>) <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://tools.ietf.org/html/draft-ietf-wrec-wpad-00">https://tools.ietf.org/html/draft-ietf-wrec-wpad-00</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="2" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[2]</anchor-end> <cite xml:lang="en">draft-ietf-wrec-wpad-01 - Web Proxy Auto-Discovery Protocol</cite>
(<time>2011-05-09 05:33:40 +09:00</time> 版)
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://tools.ietf.org/html/draft-ietf-wrec-wpad-01">https://tools.ietf.org/html/draft-ietf-wrec-wpad-01</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="4" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[4]</anchor-end> <cite xml:lang="en">draft-cooper-webi-wpad-00 - Web Proxy Auto-Discovery Protocol</cite>
(<time>2015-01-25 18:10:43 +09:00</time> 版)
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://tools.ietf.org/html/draft-cooper-webi-wpad-00">https://tools.ietf.org/html/draft-cooper-webi-wpad-00</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="6" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[6]</anchor-end> <cite xml:lang="ja">WinHTTP AutoProxy Support (Windows)</cite>
(<time>2015-03-17 13:06:44 +09:00</time> 版)
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://msdn.microsoft.com/ja-jp/library/windows/desktop/aa384240(v=vs.85).aspx">https://msdn.microsoft.com/ja-jp/library/windows/desktop/aa384240(v=vs.85).aspx</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="1" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[1]</anchor-end> <cite xml:lang="en">Web Proxy Autodiscovery Protocol - Wikipedia, the free encyclopedia</cite>
(<time>2011-06-24 10:36:16 +09:00</time> 版)
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://en.wikipedia.org/wiki/Web_Proxy_Autodiscovery_Protocol">https://en.wikipedia.org/wiki/Web_Proxy_Autodiscovery_Protocol</anchor-external></p><figure class="quote"><figcaption><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="7" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[7]</anchor-end> <cite xml:lang="ja">JVNTA#91048063: WPAD と名前衝突の問題</cite>
( (<time>2016-05-24 14:59:09 +09:00</time>))
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://jvn.jp/ta/JVNTA91048063/index.html">https://jvn.jp/ta/JVNTA91048063/index.html</anchor-external></p></figcaption><blockquote><p>Windows システムや Internet Explorer では、初期設定で WPAD の使用が有効になっています。Mac や Linux システムでは、Safari、Chrome、Firefox は WPAD に対応していますが、初期設定では無効になっています。</p><p>新 gTLD プログラムが開始され、新たな gTLD の新設が行われています。社内ネットワークでこのような gTLD が独自に使われていた場合、一定の条件のもとで(例えば社内ネットワークで使われていた PC を自宅に持ち帰ってインターネット環境に接続したり、社外に移動してインターネット環境に接続するなど)、WPAD に関する DNS クエリがインターネット上の DNS サーバに送られてしまうことがあります。</p><p>このような DNS クエリ「漏れ」が発生している場合、第三者が、該当ドメインのドメイン登録と DNS クエリに対して応答する環境を用意することにより、中間者攻撃 (Man-In-The-Middle attack) を行う可能性があります。</p></blockquote></figure><figure class="quote"><figcaption><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="9" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[9]</anchor-end> <cite xml:lang="en">Issue 18575 - chromium - Non-Windows platforms: WPAD (proxy autodetect discovery) does not test DHCP - Monorail</cite>
( (<time>2016-05-31 23:42:18 +09:00</time>))
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://bugs.chromium.org/p/chromium/issues/detail?id=18575#c20">https://bugs.chromium.org/p/chromium/issues/detail?id=18575#c20</anchor-external></p></figcaption><blockquote><p>Chrome intentionally does not follow the specification for WPAD when it comes to DNS devolution.</p><p>Neither does Firefox for that matter.</p><p>The concern is regarding security: If you aren't extremely careful, then using the DNS devolution scheme outlined by the IETF draft, it is easy cross outside organizational boundaries and auto-detect external sites like &quot;wpad.com&quot; or &quot;wpad.org.uk&quot;. Of course this is bad since it gives an attacker control over your web traffic. Historically this has been an issue.</p><p>To guard against such attacks, one could  test for top level domains (TLDs), and prevent fallback to eTLD+1 hosts. Conceptually this would work, however it is still fragile. Keep in mind that TLDs can change over time, and that in Chrome they are identified using a static registry which is shipped with the binary. That means whenever a new TLD is introduced, users would be vulnerable to this class of attack until the browser was updated to recognize that TLD.</p><p>So instead, the approach taken by Chrome is to just call getaddrinfo(&quot;wpad&quot;). Implicitly this means we will use the client's DNS suffix search path. It is far easier for organizations to maintain the suffix search path in a safe way, and prevent jumping outside of the corporate boundary.</p></blockquote></figure><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="10" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[10]</anchor-end> <cite xml:lang="en">356831 – Proxy autodiscovery doesn't check DHCP (option 252)</cite>
( (<time>2016-05-31 23:45:37 +09:00</time>))
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://bugzilla.mozilla.org/show_bug.cgi?id=356831">https://bugzilla.mozilla.org/show_bug.cgi?id=356831</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="11" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[11]</anchor-end> <cite xml:lang="en">356831 – Proxy autodiscovery doesn't check DHCP (option 252)</cite>
( (<time>2016-05-31 23:46:28 +09:00</time>))
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://bugzilla.mozilla.org/show_bug.cgi?id=356831">https://bugzilla.mozilla.org/show_bug.cgi?id=356831</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="12" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[12]</anchor-end> <cite>linux - dhcp option 252 what is it? - Super User</cite>
( (<time>2016-05-31 23:46:28 +09:00</time>))
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://superuser.com/questions/382964/dhcp-option-252-what-is-it">http://superuser.com/questions/382964/dhcp-option-252-what-is-it</anchor-external></p><figure class="quote"><figcaption><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="13" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[13]</anchor-end> <cite>chrome.proxy - Google Chrome</cite>
( (<time>2016-06-17 11:12:37 +09:00</time>))
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://developer.chrome.com/extensions/proxy">https://developer.chrome.com/extensions/proxy</anchor-external></p></figcaption><blockquote><p>auto_detect</p><p>In auto_detect mode the proxy configuration is determined by a PAC script that can be downloaded at http://wpad/wpad.dat. This mode allows no further parameters in the ProxyConfig object.</p></blockquote></figure><figure class="quote"><figcaption><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="14" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[14]</anchor-end> <cite xml:lang="ja">&quot;WPAD&quot; について – Japan IE Support Team Blog</cite>
(<time>2016-08-08 15:57:44 +09:00</time>)
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://blogs.technet.microsoft.com/jpieblog/2014/10/22/wpad/">https://blogs.technet.microsoft.com/jpieblog/2014/10/22/wpad/</anchor-external></p></figcaption><blockquote><p>Windows 7 環境の IE8 以降では、Smart WPAD と呼ばれる機能があります。</p><p>Windows 7 より前の環境の IE では、WPAD による pac ファイルが『利用できない』ネットワーク環境においても <strong>[</strong>設定を自動的に検出する<strong>]</strong> が有効な場合に検出処理を行うため、IE 起動直後の初回のページ表示が遅いという報告が寄せられていました。</p><p>Smart WPAD は、高速化のために、ネットワーク識別子ごとにかつての WPAD 解決結果を 30 日間保持する機能です。</p><p>解決結果には取得できなかった場合も含まれるので、&quot;WPAD を使わない&quot; という結果も保持されます。</p><p>WPAD 解決ができた場合は、解決した URL を保持します。</p><p>一度 WPAD が使用できないネットワークと判断された場合、そのネットワークに対して 30 日間は WPAD を使用しないように動作します。</p></blockquote></figure><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="15" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[15]</anchor-end> <cite xml:lang="ja">JVNTA#91048063: WPAD と名前衝突の問題</cite>
(<time>2016-05-24 14:59:09 +09:00</time>)
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://jvn.jp/ta/JVNTA91048063/">https://jvn.jp/ta/JVNTA91048063/</anchor-external></p><figure class="quote"><figcaption><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="16" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[16]</anchor-end> <cite>That depends: Windows 2012: 今更 WPAD.DAT を設定してみた</cite>
(<time>2016-07-24 02:07:05 +09:00</time>)
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://tby-zup.blogspot.jp/2013/04/windows-2012-wpaddat.html">http://tby-zup.blogspot.jp/2013/04/windows-2012-wpaddat.html</anchor-external></p></figcaption><blockquote><p>今登録されている MIME の一覧が表示されるので、右の操作ペイン から <strong>[</strong>追加<strong>]</strong> をクリックして、</p><p>ファイル名の拡張子: .DAT</p><p>MIME の種類: application/x-ns-proxy-autoconfig</p></blockquote></figure></section></body></html>