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

การแยกสถานะไม่ใช่การแยกเส้นทาง

โปรไฟล์ของเบราว์เซอร์แยกที่เก็บข้อมูล ทั้งคุกกี้ ประวัติ ส่วนขยาย และบางครั้งก็ข้อมูลรับรอง การแยกนั้นบังคับใช้ภายในทรีโพรเซสเดียว และไม่มีสิทธิ์พูดว่าอินเทอร์เฟซใดเป็นตัวพาแพ็กเก็ต

หน้าต่างส่วนตัวไปไกลกว่าในเรื่องรูปลักษณ์ และไม่ไปไกลกว่าสักก้าวในเรื่องเส้นทาง ทุกอย่างที่เบราว์เซอร์ส่งออกยังคงออกผ่านเส้นทางที่ระบบปฏิบัติการเลือกไว้ เว้นแต่มีบางสิ่งระหว่างซ็อกเก็ตกับเครือข่ายเข้าไปเปลี่ยนมัน การสับสนระหว่างการแยกที่เก็บข้อมูลกับการแยกเครือข่ายก่อให้เกิดความคาดหวังที่ผู้ผลิตเบราว์เซอร์รายใดไม่ได้สัญญาไว้ และไม่มีการทดสอบใดตอบสนองได้

อะไรเป็นตัวเลือกเส้นทางจริง ๆ

มีสี่สิ่งที่เป็นตัวเลือกเส้นทางอื่นได้ กฎ VPN ต่อแอปที่ตรงกับไฟล์เรียกทำงานหรือแพ็กเกจ พร็อกซีที่ตั้งค่าไว้ในเบราว์เซอร์หรือในระบบ เนมสเปซของเครือข่ายหรือคอนเทนเนอร์ และอุปกรณ์ทางกายภาพเครื่องที่สอง แต่ละอย่างเปลี่ยนสิ่งที่เป็นจริง และแต่ละอย่างมีต้นทุน

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

พร็อกซีระดับแอปเพิ่มตัวกลางอีกชั้น

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

เลือกพร็อกซีอย่างตั้งใจ ทั้งตัวรับฟัง SOCKS บนโฮสต์เดียวกัน พร็อกซีที่ผ่านการพิสูจน์ตัวตนภายในทันเนล หรือบริการระยะไกล การผสมพร็อกซีเข้ากับ VPN แบบทันเนลเต็มจะสร้างเส้นทางซ้อนกัน ซึ่งรูปแบบความล้มเหลวทวีคูณขึ้น

ตรวจสอบคำขอจริงของแต่ละเบราว์เซอร์

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

curl -sS --max-time 8 https://api.ipify.org
curl -sS --max-time 8 --proxy socks5h://127.0.0.1:1080 https://api.ipify.org
dig +short example.com

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

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

บทความที่เกี่ยวข้อง