عزل الموقع

تصوير لكيفية فصل عزل المواقع الإلكترونية المختلفة إلى عمليات مختلفة

عزل المواقع هو ميزة أمان في متصفحات الويب ، حيث يتم تجميع المواقع الإلكترونية في عمليات معزولة (sandbox) بناءً على مصادرها . تُمكّن هذه التقنية بيئة العمليات المعزولة من منع عمليات التجاوز عبر المصادر المختلفة، والتي قد تُكشف لولا ذلك من خلال ثغرات أمنية قابلة للاستغلال في العملية المعزولة.

اقترح تشارلز ريس وآخرون هذه الميزة علنًا لأول مرة، على الرغم من أن مايكروسوفت كانت تعمل بشكل مستقل على تطبيقها في متصفح الأبحاث Gazelle في الوقت نفسه. لم يلقَ هذا النهج رواجًا في البداية نظرًا للجهد الهندسي الكبير المطلوب لتطبيقه في متصفح كامل الميزات، والمخاوف بشأن تأثيره على أداء المتصفح في الواقع العملي نتيجة الاستخدام غير المحدود للعمليات. في عام 2018، وبعد اكتشاف ثغرتي Spectre و Meltdown ، سارعت جوجل العمل على هذه الميزة، مما أدى إلى إطلاقها في عام 2019. وفي عام 2021، أطلق فايرفوكس أيضًا نسخته الخاصة من عزل المواقع، والتي كان يعمل عليها تحت الاسم الرمزي Project Fission .

على الرغم من المزايا الأمنية لهذه الخاصية، إلا أنها تنطوي على بعض القيود والمفاضلات. فبينما توفر حماية أساسية ضد هجمات القنوات الجانبية مثل Spectre و Meltdown ، فإن الحماية الكاملة ضد هذه الهجمات تتطلب من المطورين تفعيل بعض إجراءات الحماية المتقدمة للمتصفح بشكل صريح. أما المفاضلة الرئيسية لعزل المواقع فتتمثل في زيادة استهلاك الموارد نتيجةً للعمليات الإضافية التي يتطلبها. وهذا يحد من فعاليته على بعض أنواع الأجهزة، وقد يُستغل في بعض الحالات لتنفيذ هجمات استنزاف الموارد .

خلفية

حتى عام 2017، كان التصميم الأمني ​​السائد للمتصفحات الرئيسية يعتمد على نموذج " عملية لكل مثيل تصفح". يتضمن هذا النموذج أن المتصفح يتألف من عمليات معزولة منفصلة ، ​​تشمل عملية المتصفح، وعملية وحدة معالجة الرسومات، وعملية الشبكة، وعملية العرض. وتتفاعل عملية العرض مع خدمات أخرى ذات صلاحيات خاصة عند الضرورة لتنفيذ إجراءات مُوسّعة أثناء عرض صفحة ويب. [ 1 ] [ 2 ]

على الرغم من أن هذا النموذج نجح في منع المشاكل المرتبطة بوصول برامج جافا سكريبت الخبيثة إلى نظام التشغيل، إلا أنه افتقر إلى القدرة على عزل مواقع الويب عن بعضها البعض بشكل كافٍ. [ 3 ] وعلى الرغم من هذه المخاوف، واجه اعتماد نموذج أكثر قوة إقبالًا محدودًا بسبب المشاكل المتصورة في النماذج الأحدث، لا سيما تلك المتعلقة بالأداء والذاكرة. [ 4 ] [ 5 ]

في عام 2017، أدى الكشف عن ثغرتي Spectre و Meltdown إلى تغيير هذا المشهد. ففي السابق، كان الوصول إلى أي جزء من الذاكرة أمرًا معقدًا يتطلب اختراق برنامج العرض. أما مع ثغرة Spectre، فقد طُوّرت هجمات استغلت خصائص جافا سكريبت لقراءة معظم الذاكرة في عملية العرض، بما في ذلك الذاكرة التي تخزن معلومات حساسة محتملة من صفحات ويب من مصادر مختلفة تم عرضها مسبقًا. [ 6 ] [ 7 ] وقد كشف هذا عن مشاكل نموذج الأمان القائم على "عملية لكل مثيل". ونتيجة لذلك، برزت الحاجة إلى بنية أمنية جديدة تسمح بفصل عملية عرض صفحات الويب المختلفة إلى عمليات معزولة تمامًا. [ 8 ] [ 7 ]

تاريخ

في عام ٢٠٠٩، اقترح ريس وآخرون النسخة الأولى من نموذج "العملية لكل موقع" لعزل صفحات الويب بناءً على مصدرها على الويب. [ ٩ ] وقد طُوِّر هذا النموذج في عام ٢٠٠٩ بواسطة متصفح الأبحاث "غزال" ، الذي فصل إطارات المستندات المحددة بناءً على "مبدأ الويب" الخاص بها، وهو حاجز أمني يتوافق مع المستند المحدد الذي يتم تحميله. [ ١٠ ] [ ١١ ] وفي نفس الفترة تقريبًا، كان العمل جاريًا أيضًا على متصفحات OP (الذي أصبح لاحقًا متصفح OP2)، وIBOS، وTahoma، وSubOS، والتي اقترحت جميعها نماذج مختلفة لحل مشكلة فصل العمليات بين المواقع. [ ١٢ ] [ ١٣ ]

التنفيذ الحديث

في مايو 2013، أعلن أحد أعضاء فريق عزل المواقع في جوجل كروم ، عبر القائمة البريدية chromium-dev، عن بدء دمج شيفرة برمجية لإطارات i-frames خارج العملية (OOPIF). [ 14 ] تبع ذلك قمة عزل المواقع في مؤتمر BlinkOn في يناير 2015، حيث تم تقديم الفريق المكون من ثمانية مهندسين، وشرح دوافعهم وأهدافهم وهيكلية المشروع والجدول الزمني المقترح والتقدم المحرز حتى الآن. كما تضمن العرض التقديمي عرضًا توضيحيًا لمتصفح كروم يعمل بنموذج أولي مبكر لعزل المواقع. [ 15 ]

في عام ٢٠١٩، قدم ريس وزملاؤه من مشروع جوجل كروم ورقة بحثية في مؤتمر USENIX Security [ ١٦ ] شرحوا فيها بالتفصيل التغييرات التي أُدخلت على نموذج أمان المتصفح الحالي استجابةً للأبحاث الحديثة التي أثبتت إمكانية استغلال ثغرة Spectre داخل عملية عرض المتصفح. [ ١٧ ] [ ١٨ ] اقترحت الورقة تغييرات على النموذج مستوحاة من عمل ريس وزملاؤه في عام ٢٠٠٩. [ ١٩ ] يعتمد تطبيق كروم لعزل المواقع على أصول الويب كمعيار أساسي لتمييز "الموقع" على مستوى العملية. [ ٢٠ ] [ ٢١ ] بالإضافة إلى ذلك، طبق فريق كروم فكرة تنفيذ إطارات مواقع الويب خارج العملية، وهي ميزة اقترحها مطورو متصفح Gazelle ، وكذلك متصفحي OP وOP2. [ 12 ] تطلب ذلك إعادة هندسة كبيرة لرمز معالجة العمليات في متصفح كروم، وشملت أكثر من 4000 عملية إيداع من 320 مساهمًا على مدى 5 سنوات. [ 22 ]

سمح تطبيق كروم لعزل المواقع بالقضاء على العديد من هجمات البرمجة النصية الشاملة عبر المواقع (uXSS). [ 23 ] تسمح هجمات uXSS للمهاجمين باختراق سياسة المصدر نفسه ، مما يمنحهم وصولاً غير مقيد لحقن وتحميل جافا سكريبت يتحكم بها المهاجم على مواقع ويب أخرى. [ 24 ] وجد فريق كروم أن جميع هجمات uXSS البالغ عددها 94 هجمة، والتي تم الإبلاغ عنها بين عامي 2014 و2018، ستصبح غير فعالة بفضل تطبيق عزل المواقع. [ 25 ] بالإضافة إلى ذلك، ادعى فريق كروم أيضًا أن تطبيقهم لعزل المواقع سيكون فعالاً في منع أنواع مختلفة من هجمات التوقيت Spectre وMeltdown التي تعتمد على وجود مساحة عنوان الضحية في نفس عملية المهاجم. [ 18 ]

في مارس 2021، أعلن فريق تطوير فايرفوكس عن إطلاق تطبيقهم لعزل المواقع. وقد كان هذا التطبيق قيد التطوير لعدة أشهر تحت الاسم الرمزي "مشروع الانشطار". [ 26 ] عالج تطبيق فايرفوكس بعض الثغرات التي وُجدت في تطبيق كروم، وتحديدًا بقاء صفحات الويب المتشابهة عرضةً لهجمات uXSS. [ 27 ] [ 28 ] كما تطلّب المشروع إعادة كتابة شيفرة معالجة العمليات في فايرفوكس. [ 29 ]

استقبال

قبل عام ٢٠١٩، كان عزل المواقع مقتصراً على متصفحات الأبحاث. واعتُبر عزل المواقع مُستهلكاً للموارد [ ٥ ] نظراً لزيادة مساحة الذاكرة التي تشغلها العمليات. [ ٣٠ ] وانعكس هذا العبء على الأداء في التطبيقات العملية أيضاً. [ ٣١ ] فقد استهلك تطبيق كروم لعزل المواقع، في المتوسط، نواة أو نواتين إضافيتين مقارنةً بالتطبيق نفسه بدون عزل المواقع. [ ٥ ] بالإضافة إلى ذلك، لاحظ المهندسون العاملون على مشروع عزل المواقع زيادةً في استخدام الذاكرة بنسبة تتراوح بين ١٠ و١٣ بالمئة عند استخدام عزل المواقع. [ ٣٢ ] [ ٣٣ ]

كان متصفح كروم أول متصفح ويب رئيسي في الصناعة يتبنى عزل المواقع كآلية دفاعية ضد هجمات uXSS وهجمات التنفيذ العابر . [ 34 ] ولتحقيق ذلك، تغلب على العديد من عقبات الأداء والتوافق، مما أدى إلى إطلاق جهد على مستوى الصناعة لتحسين أمان المتصفحات . ومع ذلك، وعلى الرغم من ذلك، وُجد أن بعض جوانب دفاعات Spectre قاصرة. [ 6 ] وعلى وجه الخصوص، وُجد أن قدرة عزل المواقع على الدفاع ضد هجمات التوقيت غير مكتملة. [ 35 ] في عام 2021، تمكن أغاروال وزملاؤه من تطوير برنامج استغلال يُسمى Spook.js، والذي استطاع اختراق دفاعات Spectre في كروم وتسريب البيانات عبر صفحات الويب من مصادر مختلفة. [ 36 ] وفي العام نفسه، تمكن باحثون في مايكروسوفت من استغلال عزل المواقع لتنفيذ مجموعة متنوعة من هجمات التوقيت التي سمحت لهم بتسريب معلومات من مصادر مختلفة من خلال التلاعب الدقيق ببروتوكولات الاتصال بين العمليات التي يستخدمها عزل المواقع. [ 37 ]

في عام 2023، أظهر باحثون في جامعة روهر بوخوم أنهم تمكنوا من الاستفادة من بنية العمليات المطلوبة لعزل المواقع لاستنزاف موارد النظام وتنفيذ هجمات متقدمة مثل تسميم نظام أسماء النطاقات (DNS) . [ 38 ]

مراجع

الاقتباسات

  1. ^ ريس وجريبل 2009 ، ص 225 – 226.
  2. ^ دونغ وآخرون. 2013 ، ص 78-79.
  3. ^ جيا وآخرون. 2016 ، ص 791-792.
  4. دونغ وآخرون 2013 ، ص 89.
  5. 1 2 3 تشو ووي وتيواري 2022 ، ص. 114.
  6. 1 2 جين وآخرون. 2022 ، ص. 1525.
  7. 1 2 روتغر ويانك .
  8. ^ روجوفسكي وآخرون. 2017 ، ص 336-367.
  9. ^ ريس وجريبل 2009 ، ص 224-225.
  10. بول 2009 .
  11. وانغ وآخرون 2009 ، ص 1-2.
  12. 1 2 ريس وموششوك وأوسكوف 2019 ، ص. 1674.
  13. دونغ وآخرون 2013 ، ص 80.
  14. أوسكوف، ناسكو (1 مايو 2013). "تنبيه: تتبع التغييرات لإطارات iframe خارج العملية" . chromium-dev (قائمة بريدية) . تم الاطلاع عليه في 30 أغسطس 2024 .
  15. قمة عزل المواقع (يوتيوب). 29 يناير 2015. تم الاطلاع عليه بتاريخ 30 أغسطس 2024 .
  16. ^ جيرلينجز وبرينكمان وشفينك 2023 ، ص. 7049.
  17. ^ كوشر وآخرون. 2020 ، ص 96-97.
  18. 1 2 ريس وموششوك وأوسكوف 2019 ، ص. 1661.
  19. ^ ريس وموششوك وأوسكوف 2019 ، ص 1663 ، 1664.
  20. Bishop 2021 ، ص 25-26.
  21. روكيكي، موريس ولابيردريكس 2021 ، ص 476.
  22. ^ ريس وموششوك وأوسكوف 2019 ، ص. 1667.
  23. كيم ولي 2023 ، ص 757.
  24. ^ كيم وآخرون. 2022 ، ص. 1007.
  25. ^ ريس وموششوك وأوسكوف 2019 ، ص. 1668.
  26. سيمبانو 2019 .
  27. نارايان وآخرون 2020 ، ص 714.
  28. كوكاتسو 2020 .
  29. لايزيل 2019 .
  30. ^ ريس وجريبل 2009 ، ص 229 – 230.
  31. وانغ وآخرون 2009 ، ص 12-13.
  32. وارن 2018 .
  33. ^ ريس وموششوك وأوسكوف 2019 ، ص. 1671.
  34. ^ جين وآخرون. 2022 ، ص. 1526.
  35. ^ جين وآخرون. 2022 ، ص. 1527.
  36. أغاروال وآخرون 2022 ، ص 1529، 1530.
  37. ^ جين وآخرون. 2022 ، ص 1525، 1530.
  38. ^ جيرلينجز وبرينكمان وشفينك 2023 ، ص 7037-7038.

مصادر