กลับไปหน้าบทความ

อ่าน 4 นาที

โปรโตคอลการค้นหาอัตโนมัติของเว็บพร็อกซี

โปรโตคอล Web Proxy Auto-Discovery (WPAD) เป็นวิธีการที่ไคลเอ็นต์ใช้ในการค้นหา URL ของไฟล์การกำหนดค่าโดยใช้ วิธีการค้นหา DHCP และ/หรือ DNS...

โปรโตคอลการค้นหาอัตโนมัติของเว็บพร็อกซี

โปรโตคอล Web Proxy Auto-Discovery (WPAD)เป็นวิธีการที่ไคลเอ็นต์ใช้ในการค้นหา URL ของไฟล์การกำหนดค่าโดยใช้ วิธีการค้นหา DHCPและ/หรือDNSเมื่อการตรวจจับและการดาวน์โหลดไฟล์การกำหนดค่าเสร็จสมบูรณ์แล้ว ก็สามารถเรียกใช้ไฟล์นั้นเพื่อกำหนดพร็อกซีสำหรับ URL ที่ระบุได้

ประวัติศาสตร์

โปรโตคอล WPAD ระบุเพียงกลไกในการค้นหาตำแหน่งของไฟล์นี้ แต่รูปแบบไฟล์การกำหนดค่าที่ใช้กันทั่วไปมากที่สุดคือ รูปแบบ proxy auto-configซึ่งออกแบบโดยNetscapeในปี 1996 สำหรับNetscape Navigator 2.0 [ 1 ] โปรโตคอล WPAD ได้รับการร่างโดยกลุ่มบริษัทต่างๆ รวมถึงInktomi Corporation , Microsoft Corporation , RealNetworks, Inc.และSun Microsystems, Inc. (ปัจจุบันคือ Oracle Corp. ) WPAD ได้รับการบันทึกไว้ใน INTERNET-DRAFT ซึ่งหมดอายุในเดือนธันวาคม 1999 [ 2 ]อย่างไรก็ตาม WPAD ยังคงได้รับการสนับสนุนจากเบราว์เซอร์หลักทั้งหมด[ 3 ] [ 4 ] WPAD ถูกรวมไว้ครั้งแรกในInternet Explorer 5.0

บริบท

เพื่อให้เบราว์เซอร์ทั้งหมดในองค์กรใช้พร็อกซีนโยบายเดียวกัน โดยไม่ต้องตั้งค่าแต่ละเบราว์เซอร์ด้วยตนเอง จำเป็นต้องใช้เทคโนโลยีทั้งสองอย่างต่อไปนี้:

  • มาตรฐาน การกำหนดค่าพร็อกซีอัตโนมัติ (PAC): สร้างและเผยแพร่ไฟล์การกำหนดค่าพร็อกซีส่วนกลางเพียงไฟล์เดียว รายละเอียดจะกล่าวถึงในบทความอื่น
  • มาตรฐาน Web Proxy Auto-Discovery Protocol (WPAD): ช่วยให้มั่นใจได้ว่าเบราว์เซอร์ขององค์กรจะค้นหาไฟล์นี้ได้โดยไม่ต้องตั้งค่าด้วยตนเอง นี่คือหัวข้อของบทความนี้

มาตรฐาน WPAD กำหนดวิธีการทางเลือกสองวิธีที่ผู้ดูแลระบบสามารถใช้เพื่อเผยแพร่ตำแหน่งของไฟล์การกำหนดค่าพร็อกซี โดยใช้โปรโตคอลการกำหนดค่าโฮสต์แบบไดนามิก (DHCP) หรือระบบชื่อโดเมน (DNS):

ก่อนที่จะดึงข้อมูลหน้าแรกเว็บเบราว์เซอร์ที่ใช้วิธีนี้จะส่งคำขอ DHCPINFORM ไปยังเซิร์ฟเวอร์ DHCP ในพื้นที่ และใช้ URL จากตัวเลือก 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 ไม่สำเร็จจะใช้การแก้ไขชื่อมัลติแคสต์แบบลิงก์โลคัล (LLMNR) และ/หรือNetBIOS [ 5 ] [ 6 ]

หมายเหตุ

DHCP มีลำดับความสำคัญสูงกว่า DNS: หาก DHCP เป็นผู้จัดหา URL ของ WPAD จะไม่มีการค้นหาผ่าน DNS วิธีการนี้ใช้ได้เฉพาะกับ DHCPv4 เท่านั้น ใน DHCPv6 ไม่มีตัวเลือก WPAD กำหนดไว้

เมื่อสร้างแพ็กเก็ตคำขอ การค้นหา DNS จะลบส่วนแรกของชื่อโดเมน (ชื่อโฮสต์ของไคลเอ็นต์) และแทนที่ด้วยwpadจากนั้น จะ "เลื่อนขึ้น" ในลำดับชั้นโดยการลบส่วนต่างๆ ของชื่อโดเมนออกไปเรื่อยๆ จนกว่าจะพบไฟล์ PAC ของ WPAD หรือออกจากองค์กรปัจจุบัน

เบราว์เซอร์จะเดาขอบเขตขององค์กร การเดามักจะถูกต้องสำหรับโดเมนเช่น 'company.com' หรือ 'university.edu' แต่จะผิดพลาดสำหรับ 'company.co.uk' (ดูหัวข้อความปลอดภัยด้านล่าง)

สำหรับการค้นหา DNS เส้นทางของไฟล์การกำหนดค่าจะเป็นwpad.dat เสมอ สำหรับโปรโตคอล DHCP สามารถใช้ URL ใดก็ได้ ด้วยเหตุผลตามธรรมเนียม ไฟล์ PAC มักจะชื่อproxy.pac (แน่นอนว่าไฟล์ที่มีชื่อนี้จะถูกละเว้นโดยการค้นหา DNS ของ WPAD)

ประเภท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" คือที่อยู่ของเว็บเซิร์ฟเวอร์
  • หากต้องการใช้วิธี DNS เพียงอย่างเดียว จะต้องมีการเพิ่มรายการ DNS สำหรับโฮสต์ชื่อ WPAD
  • เซิร์ฟเวอร์ที่แอดเดรส WPAD นั้นจะต้องสามารถให้บริการเว็บเพจได้
  • ในทั้งสองกรณี เซิร์ฟเวอร์เว็บจะต้องได้รับการกำหนดค่าให้ให้บริการไฟล์ WPAD ด้วยประเภท MIMEเป็นapplication/x-ns-proxy-autoconfig.
  • หากใช้วิธี DNS จะต้องมีไฟล์ชื่อwpad.dat อยู่ใน ไดเร็กทอรีรากของเว็บไซต์WPAD
  • ไฟล์ PAC ได้รับการกล่าวถึงในบทความเรื่องการตั้งค่าพร็อกซีอัตโนมัติ
  • โปรดใช้ความระมัดระวังเมื่อกำหนดค่าเซิร์ฟเวอร์ WPAD ใน สภาพแวดล้อม โฮสติ้งเสมือนเมื่อใช้การตรวจจับพร็อกซีอัตโนมัติ WinHTTP และ WinINET ใน Internet Explorer 6 และรุ่นก่อนหน้าจะส่งส่วนหัว "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 หรือสามารถแก้ไขรีจิสทรีเพื่อแก้ไขรายการการสืบค้นที่ถูกบล็อกได้ [ 8 ] [ 9 ]

ความปลอดภัย

แม้ว่าโปรโตคอล WPAD จะช่วยลดความซับซ้อนในการตั้งค่าเว็บเบราว์เซอร์ขององค์กรได้อย่างมาก แต่ก็ต้องใช้ด้วยความระมัดระวัง เพราะความผิดพลาดเล็กน้อยอาจเปิดช่องทางให้ผู้โจมตีเปลี่ยนแปลงสิ่งที่ปรากฏบนเบราว์เซอร์ของผู้ใช้ได้

  • ผู้โจมตีภายในเครือข่ายสามารถตั้งค่าเซิร์ฟเวอร์ DHCP ที่แจกจ่าย URL ของสคริปต์ PAC ที่เป็นอันตรายได้
  • หากเครือข่ายคือ 'company.co.uk' และไฟล์ http://wpad.company.co.uk/wpad.dat ไม่ถูกส่งมา เบราว์เซอร์จะร้องขอ http://wpad.co.uk/wpad.dat ต่อไป ก่อนที่จะมีการนำPublic Suffix List มาใช้ ในช่วงปี 2010 เบราว์เซอร์บางตัวไม่สามารถระบุได้ว่า wpad.co.uk ไม่ได้อยู่ในองค์กรนั้นอีกต่อไปแล้ว
  • วิธีการเดียวกันนี้เคยถูกนำมาใช้กับ http://wpad.org.uk โดยเว็บไซต์นี้เคยให้บริการไฟล์ wpad.dat ซึ่งจะเปลี่ยนเส้นทางการเข้าชมเว็บไซต์ทั้งหมดของผู้ใช้ไปยังเว็บไซต์ประมูลสินค้าออนไลน์
  • ผู้ให้บริการอินเทอร์เน็ต (ISP) ที่ใช้เทคนิคDNS hijackingสามารถขัดขวางการค้นหา DNS ของโปรโตคอล WPAD ได้โดยการนำผู้ใช้ไปยังโฮสต์ที่ไม่ใช่พร็อกซีเซิร์ฟเวอร์
  • การสอบถาม WPAD ที่รั่วไหลอาจส่งผลให้เกิดการชนกันของชื่อโดเมนกับรูปแบบการตั้งชื่อเครือข่ายภายใน หากผู้โจมตีลงทะเบียนโดเมนเพื่อตอบคำถาม WPAD ที่รั่วไหลและกำหนดค่าพร็อกซีที่ถูกต้อง ก็มีโอกาสที่จะทำการโจมตีแบบ Man-in-the-Middle (MitM) ผ่านทางอินเทอร์เน็ตได้[ 10 ]

ผ่านไฟล์ WPAD ผู้โจมตีสามารถชี้เบราว์เซอร์ของผู้ใช้ไปยังพร็อกซีของตนเอง และดักจับและแก้ไขข้อมูล WWW ของทุกคนที่เชื่อมต่อกับเครือข่ายได้ แม้ว่าจะมีวิธีแก้ไขอย่างง่ายสำหรับการจัดการ WPAD ใน Windows ในปี 2548 แต่ก็แก้ไขปัญหาได้เฉพาะโดเมน .com เท่านั้น การนำเสนอในงานKiwiconแสดงให้เห็นว่าส่วนอื่นๆ ของโลกยังคงมีความเสี่ยงอย่างมากต่อช่องโหว่ด้านความปลอดภัยนี้ โดยโดเมนตัวอย่างที่จดทะเบียนในนิวซีแลนด์เพื่อวัตถุประสงค์ในการทดสอบได้รับคำขอพร็อกซีจากทั่วประเทศในอัตราหลายครั้งต่อวินาที ปัจจุบันชื่อโดเมน wpad.tld หลายชื่อ (รวมถึง COM, NET, ORG และ US) ชี้ไปยังที่อยู่ loopback ของไคลเอ็นต์เพื่อช่วยป้องกันช่องโหว่นี้ แม้ว่าบางชื่อยังคงจดทะเบียนอยู่ (wpad.co.uk)

ดังนั้น ผู้ดูแลระบบควรตรวจสอบให้แน่ใจว่าผู้ใช้สามารถไว้วางใจเซิร์ฟเวอร์ DHCP ทั้งหมดในองค์กร และโดเมน wpad ที่เป็นไปได้ทั้งหมดสำหรับองค์กรนั้นอยู่ภายใต้การควบคุม นอกจากนี้ หากไม่มีการกำหนดค่าโดเมน wpad สำหรับองค์กร ผู้ใช้จะไปที่ตำแหน่งภายนอกใดก็ตามที่มีไซต์ wpad ถัดไปในลำดับชั้นของโดเมน และใช้ไซต์นั้นในการกำหนดค่า ซึ่งจะทำให้ผู้ใดก็ตามที่ลงทะเบียนโดเมนย่อย wpad ในประเทศใดประเทศหนึ่งสามารถทำการโจมตีแบบ man-in-the-middleกับการรับส่งข้อมูลอินเทอร์เน็ตส่วนใหญ่ของประเทศนั้นได้ โดยการตั้งค่าตัวเองเป็นพร็อกซีสำหรับการรับส่งข้อมูลหรือเว็บไซต์ที่สนใจทั้งหมด

นอกเหนือจากกับดักเหล่านี้แล้ว วิธีการของ WPAD ยังดึงไฟล์ JavaScript มาและเรียกใช้งานในเบราว์เซอร์ของผู้ใช้ทุกคน แม้ว่าพวกเขาจะปิดใช้งาน JavaScript สำหรับการดูเว็บเพจแล้วก็ตาม

อ่านเพิ่มเติม

  • เดอ บอยน์ พอลลาร์ด, โจนาธาน (2004). "การกำหนดค่าพร็อกซีเซิร์ฟเวอร์ HTTP อัตโนมัติในเว็บเบราว์เซอร์"คำตอบที่ให้บ่อย
  • จิม โกรฟส์ (พฤศจิกายน 2550). "รายการบล็อกการสืบค้นทั่วโลกของเซิร์ฟเวอร์ DNS" . ไมโครซอฟต์ .
  • "ตัวอย่างไฟล์ PAC และ WPAD" . 2015-09-18.
ดึงข้อมูลมาจาก " https://en.wikipedia.org/w/index.php?title=Web_Proxy_Auto-Discovery_Protocol&oldid=1322001642 "

สรุปเนื้อหา

ข้อมูลสำคัญจากบทความ

ข้อมูลสำคัญเกี่ยวกับ โปรโตคอลการค้นหาอัตโนมัติของเว็บพร็อกซี

โปรโตคอล Web Proxy Auto-Discovery (WPAD) เป็นวิธีการที่ไคลเอ็นต์ใช้ในการค้นหา URL ของไฟล์การกำหนดค่าโดยใช้ วิธีการค้นหา DHCP และ/หรือ DNS...

ประวัติศาสตร์

โปรโตคอล WPAD ระบุเพียงกลไกในการค้นหาตำแหน่งของไฟล์นี้ แต่รูปแบบไฟล์การกำหนดค่าที่ใช้กันทั่วไปมากที่สุดคือ รูปแบบ proxy auto-config ซึ่งออกแบบโดย Netscape ในปี 1996 สำหรับ Netscape Navigator 2.

บริบท

เพื่อให้เบราว์เซอร์ทั้งหมดในองค์กรใช้พร็อกซีนโยบายเดียวกัน โดยไม่ต้องตั้งค่าแต่ละเบราว์เซอร์ด้วยตนเอง จำเป็นต้องใช้เทคโนโลยีทั้งสองอย่างต่อไปนี้:

หมายเหตุ

DHCP มีลำดับความสำคัญสูงกว่า DNS: หาก DHCP เป็นผู้จัดหา URL ของ WPAD จะไม่มีการค้นหาผ่าน DNS วิธีการนี้ใช้ได้เฉพาะกับ DHCPv4 เท่านั้น ใน DHCPv6 ไม่มีตัวเลือก WPAD กำหนดไว้