2Aug

Safari Bug Leaks يسجل متصفح المستخدمين ومعلومات حساب Google

يمكن لخلل برمجي في Safari 15 من Apple السماح لأي موقع ويب بالحصول على الإنترنت الخاص بك مؤخرًا وحتى بعض معلومات حساب Google ، بالإضافة إلى الكشف عن هويتك.

وفقا ل مشاركة مدونة عن طريق FingerprintJS، وهي خدمة لبصمات المتصفح وكشف الاحتيال ، تم تقديم الخطأ في تطبيق Safari 15 لواجهة برمجة تطبيقات IndexedDB ، والتي تعد جزءًا من محرك تطوير متصفح الويب من Apple WebKit.

بالنسبة لأولئك غير المدركين ، فإن IndexedDB هي واجهة برمجة تطبيقات للمتصفح للتخزين من جانب العميل مصممة للاحتفاظ بكميات كبيرة من البيانات ، وهي مدعومة في جميع المتصفحات الرئيسية وشائعة الاستخدام.

مثل معظم تقنيات مستعرض الويب الحديثة ، تتبع IndexedDB سياسة نفس الأصل ، والتي تعد أمانًا أساسيًا آلية تقيد كيفية تفاعل المستندات أو النصوص التي تم تحميلها من أصل واحد مع موارد أخرى أصول. قواعد البيانات المفهرسة مرتبطة بأصل معين.

تقول المدونة: "يجب ألا تتمتع المستندات أو البرامج النصية المرتبطة بأصول مختلفة مطلقًا بإمكانية التفاعل مع قواعد البيانات المرتبطة بأصول أخرى".

في Safari 15 على macOS وفي جميع المتصفحات على iOS و iPadOS 15 ، تنتهك واجهة برمجة تطبيقات IndexedDB سياسة المصدر نفسه. عندما يتفاعل موقع ويب مع قاعدة بيانات في Safari ، فإن FingerprintJS يقول قاعدة بيانات جديدة (فارغة) بها يتم إنشاء نفس الاسم في جميع الإطارات وعلامات التبويب والنوافذ النشطة الأخرى داخل نفس المستعرض حصة.

حقيقة أن أسماء قواعد البيانات تتسرب عبر أصول مختلفة هي انتهاك واضح للخصوصية. يتيح لمواقع الويب التعسفية معرفة مواقع الويب التي يزورها المستخدم في علامات تبويب أو نوافذ مختلفة. هذا ممكن لأن أسماء قواعد البيانات عادةً ما تكون فريدة ومحددة بموقع الويب.

علاوة على ذلك ، لاحظ FingerprintJS أنه في بعض الحالات ، تستخدم مواقع الويب معرفات فريدة خاصة بالمستخدم في أسماء قواعد البيانات. هذا يعني أنه يمكن تعريف المستخدمين المصادق عليهم بشكل فريد ودقيق.

بعض الأمثلة الشائعة هي YouTube أو تقويم Google أو Google Keep. تنشئ جميع مواقع الويب هذه قواعد بيانات تتضمن معرف مستخدم Google المصادق عليه وفي حالة تسجيل المستخدم الدخول إلى حسابات متعددة ، يتم إنشاء قواعد بيانات لجميع هذه الحسابات.

معرف مستخدم Google هو معرف داخلي تم إنشاؤه بواسطة Google. إنه يحدد بشكل فريد حساب Google واحد ، والذي يمكن استخدامه مع Google APIs لجلب المعلومات الشخصية العامة لمالك الحساب.

"هذا لا يعني فقط أن مواقع الويب غير الموثوقة أو الضارة يمكنها التعرف على هوية المستخدم ، ولكن ذلك يعني أيضًا كما يسمح بربط حسابات منفصلة متعددة يستخدمها نفس المستخدم " بصمة الإصبع

لاحظ أن هذه التسريبات لا تتطلب أي إجراء محدد من المستخدم. يمكن لعلامة تبويب أو نافذة تعمل في الخلفية وتستعلم باستمرار عن واجهة برمجة تطبيقات IndexedDB لقواعد البيانات المتاحة معرفة مواقع الويب الأخرى التي يزورها المستخدم في الوقت الفعلي. بدلاً من ذلك ، يمكن لمواقع الويب فتح أي موقع ويب في إطار iframe أو نافذة منبثقة من أجل تشغيل تسريب مستند إلى قاعدة بيانات مفهرسة لهذا الموقع المحدد.

أنشأ FingerprintJS صفحة تجريبية توضح كيف يمكن لموقع ويب معرفة هوية حساب Google لأي زائر. العرض متاح في safarileaks.com. يمكنك تجربته إذا كان لديك Safari 15 وما فوق على جهاز Mac أو iPhone أو iPad. حاليًا ، يكتشف العرض التوضيحي فقط وجود أكثر من 20 موقعًا في علامات تبويب أو نوافذ المتصفح الأخرى ، بما في ذلك تقويم Google و Youtube و Twitter و Bloomberg.

قالت FingerprintJS إنها أبلغت عن خطأ Safari إلى WebKit Bug Tracker في 28 نوفمبر 2021 باعتباره الخطأ 233548 ؛ ومع ذلك ، لم تقم شركة Apple بإصلاح المشكلة بعد.

حتى ذلك الحين ، قد يكون الحل الوحيد هو حظر جميع JavaScript افتراضيًا والسماح بها فقط على المواقع الموثوق بها. بديل آخر لمستخدمي Safari على أجهزة Mac هو التبديل مؤقتًا إلى متصفح مختلف. لسوء الحظ ، لا يعد هذا خيارًا في iOS و iPadOS لأن جميع المتصفحات تتأثر.