ใหม่ เทคนิคที่ใช้ในการระบุอินสแตนซ์ของเบราว์เซอร์. วิธีการ ขึ้นอยู่กับคุณสมบัติการประมวลผลภาพของ Favicon ด้วยความช่วยเหลือซึ่งไซต์จะกำหนดไอคอนที่แสดงในบุ๊กมาร์กแท็บและองค์ประกอบอื่น ๆ ของอินเทอร์เฟซของเบราว์เซอร์
เบราว์เซอร์บันทึกภาพ Favicon ในแคชแยกต่างหากซึ่งไม่ทับซ้อนกับแคชอื่น ๆ เป็นเรื่องปกติสำหรับทุกโหมดการทำงานและจะไม่ถูกล้างโดยแคชมาตรฐานและตัวล้างประวัติการเข้าชม
ฟังก์ชั่นนี้ อนุญาตให้ใช้ตัวระบุแม้ว่าจะทำงานในโหมดไม่ระบุตัวตนและ ทำให้ยากต่อการลบ การรับรองความถูกต้องโดยใช้วิธีการที่เสนอจะไม่ได้รับผลกระทบจากการใช้ VPN และปลั๊กอินบล็อกโฆษณา
วิธีการระบุจะขึ้นอยู่กับข้อเท็จจริงที่ว่าในฝั่งเซิร์ฟเวอร์เป็นไปได้ที่จะตรวจสอบว่าผู้ใช้เปิดเพจก่อนหน้านี้หรือไม่โดยการวิเคราะห์ข้อมูลเกี่ยวกับการโหลด Favicon หากเบราว์เซอร์ไม่ได้ร้องขอภาพ Favicon ที่ระบุในพารามิเตอร์ของหน้า จากนั้นเพจจะโหลดก่อนหน้านี้และรูปภาพจะแสดงจากแคช
ตั้งแต่ลเบราว์เซอร์ช่วยให้คุณกำหนดค่า Favicon ของคุณเองได้ สำหรับแต่ละหน้า ข้อมูลที่เป็นประโยชน์สามารถเข้ารหัสผ่านการส่งต่อตามลำดับ จากผู้ใช้ไปยังเพจที่ไม่ซ้ำกันหลาย ๆ เพจ
ยิ่งมีการเปลี่ยนเส้นทางมากขึ้นในสายโซ่ก็จะสามารถกำหนดตัวระบุได้มากขึ้น (จำนวนตัวระบุถูกกำหนดโดยสูตร 2 ^ N โดยที่ N คือจำนวนการเปลี่ยนเส้นทาง) ตัวอย่างเช่นผู้ใช้ 4 คนสามารถจัดการกับการเปลี่ยนเส้นทางได้ 3 ครั้งคือ 8 - 4, 16 - 10, 1024 - 24, 16 - 32 ล้าน, 4 - XNUMX พันล้าน
ข้อเสียของวิธีนี้คือความล่าช้าที่ยาวนาน- ยิ่งความแม่นยำสูงเท่าใดการเปลี่ยนเส้นทางก็จะยิ่งใช้เวลานานขึ้นในการเปิดหน้า
การเปลี่ยนเส้นทาง 32 ครั้งสร้างตัวระบุสำหรับผู้ใช้อินเทอร์เน็ตทั้งหมด แต่ทำให้เกิดความล่าช้าประมาณสามวินาที สำหรับตัวระบุล้านตัวความล่าช้าจะอยู่ที่ประมาณหนึ่งวินาทีครึ่ง
วิธีนี้เกี่ยวข้องกับการทำงานในสองโหมด: การเขียนและการอ่าน:
- โหมดการเขียน สร้างและจัดเก็บตัวระบุสำหรับผู้ใช้ที่เข้าถึงไซต์ครั้งแรก
- โหมดการอ่าน อ่านตัวระบุที่เก็บไว้ก่อนหน้านี้
การเลือกโหมดขึ้นอยู่กับคำขอของไฟล์ Favicon สำหรับหน้าหลักของไซต์: หากมีการร้องขอรูปภาพข้อมูลจะไม่ถูกแคชและสามารถสันนิษฐานได้ว่าผู้ใช้ไม่ได้เข้าถึงไซต์มาก่อนหรือเนื้อหาถูกแคช . ล้าสมัย. ตามที่นักวิจัยระบุส่วนหัว HTTP Cache-Control ทำให้สามารถใช้ Favicon ในแคชได้นานถึงหนึ่งปี
ในโหมดอ่านเมื่อเปิดไซต์ผู้ใช้จะถูกผูกมัดกับหน้าที่กำหนดไว้ล่วงหน้าด้วย Favicons และ เซิร์ฟเวอร์ HTTP จะแยกวิเคราะห์ Favicons ที่ร้องขอจากเซิร์ฟเวอร์ และจะแสดงโดยไม่ต้องเข้าถึงเซิร์ฟเวอร์จากแคช การมีอยู่ของคำขอมีรหัสเป็น "0" และไม่มีเป็น "1" เพื่อให้ตัวระบุถูกเก็บรักษาไว้ในการโทรในอนาคตรหัสข้อผิดพลาด 404 จะแสดงขึ้นเพื่อตอบสนองต่อคำขอ Favicon นั่นคือในครั้งต่อไปที่คุณเปิดไซต์เบราว์เซอร์จะพยายามโหลด Favicons เหล่านี้อีกครั้ง
ในโหมดเขียนในลูปการเปลี่ยนเส้นทาง สำหรับหน้าที่เข้ารหัส "1" คำตอบที่ถูกต้องของ Favicon จะถูกส่งกลับ ฝากไว้ในแคชของเบราว์เซอร์ (เมื่อวนซ้ำข้อมูล Favicon จะถูกส่งคืนจากแคชโดยไม่ต้องเข้าถึงเซิร์ฟเวอร์) และสำหรับหน้าที่เข้ารหัส "0" - รหัสข้อผิดพลาด 404 (หากคุณทำซ้ำรอบการเปลี่ยนเส้นทางข้อมูลเพจ จะถูกร้องขออีกครั้ง)
วิธีนี้ใช้ได้ใน Chrome, Safari, Edge และบางส่วนใน Firefox ใน Firefox สำหรับ Linux การใช้ Favicons เป็น Supercookies จะถูกขัดขวางโดยคุณลักษณะที่ป้องกันไม่ให้เบราว์เซอร์แคช Favicon
ที่น่าสนใจคือผู้เขียนวิธีการตรวจสอบสิทธิ์ได้แจ้งให้นักพัฒนา Firefox ทราบเกี่ยวกับคุณลักษณะนี้เมื่อประมาณหนึ่งปีที่แล้วโดยสังเกตว่ามีข้อผิดพลาดในแคช แต่ไม่ได้กล่าวถึงงานของพวกเขาและการแก้ไขข้อผิดพลาดจะนำไปสู่ความเป็นไปได้ในการระบุตัวผู้ใช้
Fuente: https://www.cs.uic.edu