الحلقة 5: من إعداد "آدي" في ماونتن فيو، كاليفورنيا (آب (أغسطس) 2019)
الحلقات السابقة
ينقسم Chrome إلى عمليات. بعضها في وضع الحماية، مما يعني أنه ليس لديهم إمكانية وصول إلى النظام وحسابات المستخدمين. في العملية ذات وضع الحماية، تكون الأخطاء التي تسمح بتشغيل التعليمات الضارة أقل شدة.
لا تتضمّن عملية المتصفح وضع حماية، وبالتالي قد يؤدي الخطأ إلى منح الرمز الضار إمكانية الوصول الكامل إلى الجهاز بأكمله. ما الذي يجب عليك فعله بشكل مختلف؟ وماذا وضع العمليات الأخرى؟
تحتوي كل الرموز على أخطاء. في عمليات المتصفح، تسمح هذه الأخطاء للرموز البرمجية الضارة بتثبيت برنامج، وسرقة بيانات المستخدمين، وضبط إعدادات الكمبيوتر، والوصول إلى محتوى جميع علامات تبويب المتصفح، وبيانات تسجيل الدخول، وما إلى ذلك.
في العمليات الأخرى، يتم تقييد الوصول إلى نظام التشغيل من خلال القيود الخاصة بالنظام الأساسي. لمزيد من المعلومات، اطّلع على دليل تنفيذ وضع الحماية في Chrome.
احرص على تجنُّب الأخطاء الشائعة التالية:
- لا تحلِّل البيانات غير الموثوقة أو تفسّرها باستخدام لغة C++ في عملية المتصفّح.
- يجب عدم الوثوق في المصدر الذي يدّعي العارض تمثيله. يمكن استخدام RenderFrameHost في المتصفِّح للحصول على المصدر الحالي بأمان.
وبدلاً من ذلك، اتّبِع أفضل الممارسات التالية:
- يمكنك التعامل بذكاء إضافي إذا كان الرمز البرمجي قيد المعالجة في المتصفّح.
- التحقّق من صحة جميع عناوين IPC من خلال العمليات الأخرى افترض أن جميع العمليات الأخرى قد تعرضت للاختراق بالفعل وتذهب لخداعك.
- إجراء المعالجة من خلال عملية عارض أو أداة مساعدة أو عملية أخرى في وضع الحماية. من الناحية المثالية، استخدم أيضًا لغة آمنة للذاكرة مثل JavaScript (لحل أكثر من 50% من أخطاء الأمان).
على مدار سنوات، كنا نستخدم حزم الشبكات (مثل HTTP وDNS وQUIC) في عمليات المتصفح، مما أدى إلى حدوث بعض الثغرات الخطيرة. في بعض الأنظمة الأساسية، أصبح للشبكات الآن عملية خاصة بها، مع توفير وضع حماية.
مراجع إضافية
- القاعدة الثانية من Chromium: لا تزيد عن اثنتين من البيانات غير الآمنة والرموز غير الآمنة والعمليات غير الآمنة.
- التحقّق من بيانات IPC: دليل حول كيفية ضمان أنّ عناوين IPC من عملية العرض ليست مليئة بالرجفان الأذيني والوصف المضلِّل