غيّرت شركة جوجل كيفية عمل أحد المكونات الأساسية في
متصفح جوجل كروم من أجل إضافة وسائل جديدة لحماية خصوصية مستخدميها، حيث يعمل مكوّن كروم المعروف باسم "HTTP Cache" أو "Shared Cache" عن طريق حفظ نسخة من الموارد التي تم تحميلها على صفحة ويب، مثل الصور وملفات "CSS" وملفات "JavaScript"، تقول الفكرة: سيقوم متصفح جوجل كروم عندما يزور المستخدم الموقع نفسه بتحميل الملفات من ذاكرة التخزين المؤقتة الداخلية الخاصة به، بدلاً من إضاعة الوقت في إعادة تنزيل كل ملف مرة أخرى.
كان هذا المكون موجودًا – ليس فقط داخل كروم – ولكن داخل جميع متصفحات الويب منذ الأيام الأولى للإنترنت، حيث كان بمثابة ميزة لتوفير النطاق الترددي.
يعمل نظام ذاكرة التخزين عادةً بالطريقة نفسها في جميع المتصفحات، حيث يتلقى كلُّ ملف صورةً أو "CSS" أو "JS" محفوظة في ذاكرة التخزين مفتاح تخزين يكون عادةً عنوان "URL" للمورد.
عندما يقوم المتصفح بتحميل صفحة جديدة فإنه سيبحث عن المفتاح "URL" داخل قاعدة بيانات ذاكرة التخزين المؤقتة الداخلية الخاصة به، ومعرفة كونه بحاجة إلى تنزيل الصورة أو تحميلها من ذاكرة التخزين.
أدركت شركات الإعلان والتحليل على الويب أنه يمكن أيضًا إساءة استخدام هذه الميزة لتتبع المستخدمين، ويقول إيجي كيتامورا، محامي المطورين في جوجل: "تعمل هذه الآلية بشكل جيد من منظور الأداء لفترة طويلة، ومع ذلك، فإن الوقت الذي يستغرقه موقع الويب للرد على طلبات "HTTP" يمكن أن يكشف أن المتصفح قد وصل إلى المورد نفسه في الماضي، مما يفتح المتصفح لهجمات الأمان والخصوصية”.
ويشمل ذلك:
اكتشاف كون المستخدم قد زار موقعًا معيّنًا: يمكن اكتشاف سجل تصفح المستخدم عن طريق التحقق من كون ذاكرة التخزين تحتوي على مورد قد يكون محددًا لموقع معين أو مجموعة من المواقع.
هجوم البحث عبر المواقع: يمكن اكتشاف وجود سلسلة عشوائية في نتائج بحث المستخدم عن طريق التحقق من كون الصورة "لا توجد في نتائج البحث" المستخدمة بواسطة موقع ويب معين موجودة في ذاكرة التخزين المؤقتة للمتصفح.
التتبع عبر المواقع: يمكن استخدام ذاكرة التخزين لتخزين معرفاتٍ تشبه ملفات تعريف الارتباط كآلية للتتبع عبر المواقع.
تنشيط تجزئة ذاكرة التخزين المؤقتة في متصفح كروم 86:
مع إصدار متصفح جوجل كروم 86 خلال الأسبوع الماضي، أدخلت جوجل تغييرات مهمة على عمل هذه الميزة، حيث تعمل هذه الميزة المعروفة باسم "تقسيم ذاكرة التخزين المؤقتة" عن طريق تغيير كيفية حفظ الموارد في ذاكرة التخزين المؤقتة لـ "HTTP" استنادًا إلى عاملين إضافيين، ومن الآن فصاعدًا، سيحوي مفتاح تخزين المورد على ثلاثة عناصر بدلاً من عنصر واحد:
- مجال موقع المستوى الأعلى "http://a.example".
- الإطار الحالي للمورد "http://c.example".
- عنوان "URL" للمورد "https: //x.example/doge.png".
من خلال إضافة مفاتيح إضافية لعملية التحقق الأولية لذاكرة التخزين المؤقتة، حظرَ متصفح جوجل كروم بشكل فعّال جميع الهجمات السابقة ضد آلية ذاكرة التخزين المؤقتة الخاصة به، حيث إن معظم مكونات مواقع الويب ستتمكن فقط من الوصول إلى مواردها الخاصة، ولن تكون قادرة على التحقق من الموارد التي ليس لديها.