การรั่วของ WebRTC คืออะไร
WebRTC เป็นเทคโนโลยีเบราว์เซอร์ที่อยู่เบื้องหลังการโทรวิดีโอ แชตเสียง และการแชร์หน้าจอ เพื่อเชื่อมอุปกรณ์สองเครื่องโดยตรง มันต้องรู้ที่อยู่ที่เข้าถึงได้ จึงรวบรวมผู้สมัคร ได้แก่ที่อยู่เครือข่ายท้องถิ่น ที่อยู่ที่พบผ่านเซิร์ฟเวอร์ STUN สาธารณะ และที่อยู่รีเลย์
โดยปกติสิ่งนี้ไม่เป็นอันตราย การรั่วเกิดขึ้นเมื่อเบราว์เซอร์รายงานที่อยู่ที่ไม่ควรเปิดเผย ส่วนใหญ่มักเป็นที่อยู่จริงของการเชื่อมต่อที่บ้านขณะที่ข้อมูลอื่นไปผ่าน VPN เว็บไซต์เห็นที่อยู่ VPN จากคำขอปกติและเห็นที่อยู่จริงจาก WebRTC แล้วทั้งสองไม่ตรงกัน
นี่ไม่ใช่มัลแวร์และไม่ใช่เรื่องแปลก สาเหตุคือข้อมูล WebRTC อาจใช้เส้นทางต่างจากส่วนอื่นของเบราว์เซอร์ โดยเฉพาะเมื่อ VPN ครอบคลุมเฉพาะบางเส้นทางหรือเฉพาะ IPv4
การทดสอบนี้ทำงานอย่างไร
การทดสอบเปิดการเชื่อมต่อ WebRTC ในเบราว์เซอร์ของคุณ ชี้ไปที่เซิร์ฟเวอร์ STUN สาธารณะ และบันทึกผู้สมัครที่ได้รับ ผู้สมัครแต่ละรายอธิบายด้วยประเภทและที่อยู่: ผู้สมัคร host คือที่อยู่ท้องถิ่น ผู้สมัคร server-reflexive คือที่อยู่สาธารณะที่มองจากภายนอก และผู้สมัคร relay มาจากเซิร์ฟเวอร์ TURN
จากนั้นนำผลไปเทียบกับที่อยู่ IP ที่คำขอเว็บปกติแสดงสำหรับการเชื่อมต่อของคุณ หากที่อยู่สาธารณะของ WebRTC ตรงกัน ก็ไม่มีความต่างให้รายงาน หากไม่ตรง หน้าเว็บจะแสดงไว้ให้คุณตัดสินว่าที่อยู่นั้นควรเข้าถึงได้หรือไม่ ที่อยู่ท้องถิ่นที่ปรากฏเป็นชื่อ .local แบบสุ่มเกิดจากเบราว์เซอร์เองเพื่อหลีกเลี่ยงการเปิดเผยที่อยู่เครือข่ายส่วนตัว
การทดสอบมีข้อจำกัด ตรวจสอบสัญญาณ WebRTC, IPv6 และเขตเวลาในเบราว์เซอร์ ยังไม่ทดสอบ DNS: การทดสอบการรั่วของ DNS ต้องใช้วิธีอื่น อธิบายไว้ด้านล่าง
วิธีควบคุม WebRTC ในแต่ละเบราว์เซอร์
ไม่มีสวิตช์เดียวที่เหมาะกับทุกเบราว์เซอร์ ตัวเลือกด้านล่างคือสิ่งที่แต่ละเบราว์เซอร์มีจริง การปิด WebRTC ทำให้การโทรวิดีโอในเบราว์เซอร์ใช้ไม่ได้ จึงเปลี่ยนเฉพาะเมื่อคุณต้องการการป้องกันจริง ๆ
Chrome และ Edge
เบราว์เซอร์เหล่านี้ไม่มีการตั้งค่าที่อยู่ WebRTC สำหรับผู้ใช้ ผู้ดูแลระบบตั้งนโยบาย WebRtcIPHandlingPolicy เพื่อจำกัดหรือปิด UDP ที่ไม่ผ่านพร็อกซีได้ และส่วนขยายบล็อกผู้สมัคร WebRTC ได้แต่ต้องมีสิทธิ์แก้ไขหน้าเว็บ วิธีที่เชื่อถือได้ที่สุดกับ Chrome หรือ Edge คือไคลเอนต์ VPN ที่บล็อกข้อมูลนอกอุโมงค์
Firefox
เปิด about:config ค้นหา media.peerconnection.enabled แล้วตั้งเป็น false เพื่อปิด WebRTC ทั้งหมด ทางเลือกกลางคือ media.peerconnection.ice.no_host ซึ่งหยุดการแชร์ที่อยู่ท้องถิ่นโดยยังโทรได้ การตั้งค่าเหล่านี้เป็นค่ากำหนดขั้นสูงและอาจถูกรีเซ็ตเมื่อรีเฟรชเบราว์เซอร์
Safari
Safari ซ่อนที่อยู่ท้องถิ่นโดยค่าเริ่มต้น: แทนด้วยชื่อ mDNS เช่นสตริงสุ่มที่ลงท้าย .local ไม่มีการตั้งค่าผู้ใช้แบบง่ายสำหรับปิด WebRTC ใน Safari ที่อยู่สาธารณะจึงยังถูกเก็บผ่านเซิร์ฟเวอร์ STUN ได้หากเบราว์เซอร์ได้รับอนุญาต
Brave
Brave มีนโยบายจัดการ IP ของ WebRTC ในการตั้งค่า โดยมีตัวเลือกเช่นใช้เฉพาะอินเทอร์เฟซสาธารณะเริ่มต้นหรือปิด UDP ที่ไม่ผ่านพร็อกซี การเลือกตัวเลือกที่เข้มกว่า ป้องกันไม่ให้ WebRTC เปิดเผยที่อยู่นอกเส้นทางพร็อกซีหรือ VPN
ไคลเอนต์ VPN
แอป VPN หลายตัวมีตัวเลือกป้องกัน WebRTC หรือการรั่วไหล และบางตัวมี kill switch ที่ตัดข้อมูลเมื่ออุโมงค์ล่ม ตรวจสอบการตั้งค่าและเอกสารของไคลเอนต์ หากไม่มีตัวควบคุมเช่นนั้น ให้จำกัด WebRTC ในเบราว์เซอร์แทน
การรั่วของ IPv6
VPN ที่จัดการเฉพาะ IPv4 อาจทิ้งข้อมูล IPv6 ไว้บนเส้นทางเดิม หากเครือข่ายของคุณใช้ IPv6 ได้ เว็บไซต์ที่รองรับอาจเข้าถึงคุณผ่านผู้ให้บริการขณะที่ IPv4 ไปทางอุโมงค์ และที่อยู่ทั้งสองชี้ไปเครือข่ายต่างกัน
สรุปความเป็นส่วนตัวจะชี้จุดนี้เมื่อที่อยู่ IPv4 และ IPv6 อยู่ต่างเครือข่าย วิธีแก้ขึ้นอยู่กับไคลเอนต์: มองหาตัวเลือก IPv6 ในการตั้งค่า VPN หรือปิด IPv6 บนการเชื่อมต่อเมื่ออุโมงค์ไม่รองรับ การบล็อก IPv6 ทั้งหมดเป็นการแลกเปลี่ยน เพราะบริการที่เป็น IPv6 ล้วนจะเข้าถึงไม่ได้
การรั่วของ DNS
DNS คือระบบที่เปลี่ยนชื่อเป็นที่อยู่ เมื่อคุณเปิดเว็บไซต์ อุปกรณ์ของคุณถามตัวแก้ไขว่าชื่อนั้นตรงกับที่อยู่ใด หากคำถามเหล่านี้ถูกส่งไปยังตัวแก้ไขของผู้ให้บริการแทนที่จะผ่านอุโมงค์ ผู้ให้บริการเห็นทุกชื่อที่คุณค้นหาแม้ข้อมูลเว็บจะเข้ารหัสแล้ว
DNS แบบเข้ารหัสโดยใช้ DNS-over-HTTPS หรือ DNS-over-TLS ปกป้องคำถามบนเส้นทางระหว่างอุปกรณ์กับตัวแก้ไข แต่ไม่ได้ป้องกันความไม่ตรงกันระหว่างตัวแก้ไขที่คุณเลือกกับอุโมงค์ที่ใช้ VPN ที่ตั้งค่าดีจะส่ง DNS ผ่านอุโมงค์ ส่วนที่ตั้งค่าผิดอาจรั่วได้
เว็บไซต์นี้ยังไม่มีการทดสอบการรั่วของ DNS การทำอย่างถูกต้องต้องสอบถามโดเมนทดสอบเฉพาะและสังเกตว่าตัวแก้ไขใดตอบ ซึ่งวางแผนเป็นฟีเจอร์แยกต่างหาก ตอนนี้หน้าการรั่วรายงานเฉพาะความไม่ตรงกันของ WebRTC, IPv6 และเขตเวลา และบอกอย่างนั้นแทนการคาดเดา
ความไม่ตรงกันของเขตเวลาและภาษา
เบราว์เซอร์รายงานเขตเวลาและรายการภาษา และเว็บไซต์เปรียบเทียบกับประเทศที่อนุมานจากที่อยู่ IP ของคุณ ทางออก VPN ในประเทศอื่นมักไม่เปลี่ยนเขตเวลาและภาษาของเบราว์เซอร์ ความไม่ตรงกันเองจึงอาจเปิดเผยว่ากำลังใช้อุโมงค์อยู่
นี่ไม่ใช่การรั่วในความหมายของที่อยู่ที่ถูกเปิดเผย เพราะค่าเหล่านี้ถูกเปิดให้ทุกหน้าเว็บโดยเจตนา แต่เป็นบริบทที่มีประโยชน์: หากต้องการให้โปรไฟล์สอดคล้องกัน ให้ปรับเขตเวลาและภาษาของเบราว์เซอร์ให้ตรงกับตำแหน่งทางออก หรือยอมรับว่าชุดนี้ไม่ธรรมดา
คำถามที่พบบ่อย
WebRTC เปิดเผย IP จริงแม้เชื่อมต่อ VPN อยู่หรือไม่?
ได้ WebRTC รวบรวมที่อยู่ผู้สมัครอย่างอิสระจากข้อมูลอื่นของเบราว์เซอร์ หาก VPN ไม่ดักข้อมูลนั้น ที่อยู่สาธารณะที่ได้จาก STUN อาจเป็นที่อยู่จริงของคุณ การทดสอบในหน้านี้มีอยู่เพื่อแสดงว่าที่อยู่ตรงกันหรือไม่
การปิด WebRTC ทำให้การโทรวิดีโอเสียหายไหม?
การโทรและแชร์หน้าจอในเบราว์เซอร์ที่ใช้ WebRTC จะหยุดทำงาน รวมถึงเครื่องมือประชุมหลายตัว หากต้องการเพียงหยุดแชร์ที่อยู่ท้องถิ่น ให้เลือกการตั้งค่าที่แคบกว่า เช่น media.peerconnection.ice.no_host ใน Firefox หรือนโยบายจัดการ IP ของ WebRTC ที่เข้มกว่าใน Brave
ผู้สมัคร mDNS คืออะไร?
เป็นที่อยู่ท้องถิ่นที่เบราว์เซอร์ซ่อนไว้หลังชื่อสุ่มที่ลงท้าย .local ซึ่งแก้ไขได้เฉพาะในเครือข่ายของคุณ Safari ใช้โดยค่าเริ่มต้น เบราว์เซอร์อื่นใช้ในบางเงื่อนไข การเห็นชื่อ mDNS หมายความว่าที่อยู่ส่วนตัวของคุณไม่ได้ถูกส่งออกในรูปแบบที่อ่านได้
ทดสอบการรั่วของ DNS บนเว็บไซต์นี้ได้ไหม?
ยังไม่ได้ การทดสอบปัจจุบันครอบคลุมสัญญาณ WebRTC, IPv6 และเขตเวลาในเบราว์เซอร์ การทดสอบการรั่วของ DNS ต้องใช้โดเมนทดสอบเฉพาะและคำถามต่างชนิด และอยู่ในแผนงาน ไม่ได้ถูกข้ามอย่างเงียบ ๆ
การรั่วของ IPv6 คืออะไร?
เกิดเมื่ออุโมงค์ปกป้อง IPv4 แต่ข้อมูล IPv6 ยังออกผ่านการเชื่อมต่อเดิม เว็บไซต์ที่รองรับ IPv6 เข้าถึงคุณที่ที่อยู่ที่ไม่ได้รับการปกป้องได้ เครือข่ายที่ WebRTC หรือคำขอ IPv6 เห็นจึงต่างจากเครือข่ายที่เห็นผ่าน IPv4
พร็อกซีและ Tor ป้องกันการรั่วของ WebRTC ไหม?
ไม่โดยอัตโนมัติ พร็อกซีมักครอบคลุมเพียงคำขอปกติของเบราว์เซอร์ และ WebRTC ลอดได้เหมือนที่ลอด VPN บางส่วน Tor Browser จึงมาพร้อม WebRTC ที่ปิดโดยค่าเริ่มต้น ไม่ว่าจะใช้เครื่องมือใด ให้เรียกการทดสอบหลังจากนั้นและตรวจว่าที่อยู่ตรงกัน