تحديثات وموارد الأمان

فريق أمان Android مسؤول عن إدارة الثغرات الأمنية المكتشفة في نظام Android الأساسي والعديد من تطبيقات Android الأساسية المجمعة مع أجهزة Android.

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

الإبلاغ عن مشكلات الأمان

أي مطور، المستخدم الروبوت، أو الباحث الأمني يمكن أن يخطر الفريق الأمني الروبوت من القضايا الأمنية المحتملة من خلال نموذج الإبلاغ ثغرة أمنية .

الأخطاء التي تم تمييزها على أنها مشكلات أمنية ليست مرئية من الخارج ، ولكن قد تظهر في النهاية بعد تقييم المشكلة أو حلها. إذا كنت تخطط لإرسال اختبار تصحيح أو اختبار مجموعة اختبار التوافق (CTS) لحل مشكلة أمنية ، فيرجى إرفاقه بتقرير الخطأ وانتظر الرد قبل تحميل الرمز إلى AOSP.

فرز البق

تتمثل المهمة الأولى في التعامل مع الثغرة الأمنية في تحديد مدى خطورة الخطأ والمكوّن المتأثر في Android. تحدد درجة الخطورة كيفية تحديد أولوية المشكلة ، ويحدد المكون من يصلح الخطأ ومن يتم إخطاره وكيف يتم نشر الإصلاح للمستخدمين.

أنواع السياق

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

نوع السياق تعريف النوع
سياق مقيد بيئة تنفيذ مقيدة حيث يتم توفير الحد الأدنى فقط من الأذونات.

على سبيل المثال ، تطبيق "sandboxes" لمعالجة البيانات غير الموثوق بها دون السماح بالوصول إلى النظام الأساسي.
سياق غير مميز بيئة تنفيذ نموذجية متوقعة بواسطة كود غير مميز.

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

على سبيل المثال، تطبيق الروبوت مع القدرات التي من شأنها أن تكون ممنوعة من قبل سيلينو untrusted_app المجال أو مع الحصول على privileged|signature أذونات.
قاعدة الحوسبة الموثوقة (TCB) الوظيفة التي هي جزء من kernel ، تعمل في نفس سياق وحدة المعالجة المركزية مثل kernel (مثل برامج تشغيل الأجهزة) ، ولها وصول مباشر إلى ذاكرة kernel (مثل مكونات الأجهزة على الجهاز) ، ولديها القدرة على تحميل البرامج النصية في مكون kernel ( على سبيل المثال، eBPF)، ومعالجات الاتصالات، أو هي واحدة من عدد قليل من خدمات المستخدم الذي يعتبر نواة يعادل: apexd ، bpfloader ، init ، ueventd ، و vold .
سلسلة محمل الإقلاع مكون يقوم بتكوين الجهاز عند بدء التشغيل ثم يقوم بتمرير التحكم إلى نظام التشغيل Android OS.
بيئة تنفيذ موثوقة (TEE) مكون تم تصميمه للحماية حتى من نواة معادية (على سبيل المثال ، TrustZone و Hypervisor).
Secure Enclave / Secure Element (SE) عنصر الأجهزة اختياري مصممة لتكون محمية من جميع المكونات الأخرى على الجهاز ومن الاعتداء الجسدي، كما هو محدد في مقدمة عناصر الآمنة .

يتضمن ذلك شريحة Titan-M الموجودة في بعض أجهزة Pixel.

خطورة

تعكس شدة الخطأ عمومًا الضرر المحتمل الذي يمكن أن يحدث إذا تم استغلال الخطأ بنجاح. استخدم المعايير التالية لتحديد مدى الخطورة.

تقييم نتيجة الاستغلال الناجح
حرج
  • الوصول غير المصرح به إلى البيانات المؤمنة من قبل SE
  • تنفيذ التعليمات البرمجية التعسفية في TEE أو SE
  • تنفيذ التعليمات البرمجية التعسفي عن بُعد في سياق ذي امتياز أو سلسلة أداة تحميل التشغيل أو TCB
  • رفض الخدمة المستمر عن بُعد (دائم أو يتطلب إعادة تحميل نظام التشغيل بالكامل أو إعادة ضبط المصنع)
  • تجاوز عن بعد لمتطلبات تفاعل المستخدم عند تثبيت الحزمة أو السلوك المكافئ
  • تجاوز عن بُعد لمتطلبات تفاعل المستخدم لأي مطور أو إعدادات أمان أو خصوصية
  • تجاوز التمهيد الآمن عن بعد
  • تجاوز الآليات المصممة لمنع تعطل البرامج أو مكونات الأجهزة المتعلقة بالسلامة (على سبيل المثال ، الحماية الحرارية)
  • الوصول عن بُعد إلى بيانات الاعتماد الحساسة المستخدمة لمصادقة الخدمة عن بُعد (على سبيل المثال ، كلمات مرور الحساب أو الرموز المميزة لحاملها)
عالي
  • تجاوز التمهيد الآمن المحلي
  • تجاوز كامل لميزة الأمان الأساسية (مثل SELinux أو FDE أو seccomp)
  • تنفيذ التعليمات البرمجية التعسفي عن بعد في سياق غير مميز
  • تنفيذ التعليمات البرمجية التعسفي المحلي في سياق ذي امتياز ، أو سلسلة أداة تحميل التشغيل ، أو TCB
  • الوصول غير المصرح به إلى البيانات التي يتم تأمينها بواسطة TEE
  • الهجمات ضد SE التي تؤدي إلى خفض التصنيف إلى تطبيق أقل أمانًا
  • تجاوز محلي لمتطلبات تفاعل المستخدم عند تثبيت الحزمة أو السلوك المكافئ
  • الوصول عن بعد إلى البيانات المحمية (البيانات التي تقتصر على سياق متميز)
  • رفض محلي مستمر للخدمة (دائم أو يتطلب إعادة تحميل نظام التشغيل بالكامل أو إعادة ضبط المصنع)
  • تجاوز متطلبات تفاعل المستخدم عن بُعد (الوصول إلى الوظائف أو البيانات التي تتطلب عادةً إما بدء المستخدم أو إذن المستخدم)
  • نقل معلومات حساسة عبر بروتوكول شبكة غير آمن (على سبيل المثال ، HTTP وبلوتوث غير مشفر) عندما يتوقع مقدم الطلب إرسالًا آمنًا (لاحظ أن هذا لا ينطبق على تشفير Wi-Fi ، مثل WEP)
  • تجاوز عام للدفاع في العمق أو استغلال تقنية التخفيف في سلسلة أداة تحميل التشغيل أو TEE أو SE
  • تجاوز عام لعمليات حماية نظام التشغيل التي تعزل بيانات التطبيق أو ملفات تعريف المستخدمين عن بعضها البعض
  • تجاوز محلي لمتطلبات تفاعل المستخدم لأي مطور أو إعدادات أمان أو خصوصية
  • ثغرة أمنية تسمح بشن هجمات ضد البروتوكولات الشاملة ، بما في ذلك الهجمات ضد أمان طبقة النقل (TLS) والبلوتوث (BT).
  • تجاوز قفل الشاشة
  • تجاوز حماية الجهاز / حماية إعادة ضبط المصنع / قيود الناقل
  • المنع المستهدف للوصول إلى خدمات الطوارئ
  • تجاوز متطلبات تفاعل المستخدم التي يتم تأمينها بواسطة TEE
  • المنع عن بُعد من الوصول إلى الخدمة الخلوية دون تدخل المستخدم (على سبيل المثال ، تعطل خدمة الراديو الخلوي بحزمة مشوهة)
  • الوصول المحلي إلى بيانات الاعتماد الحساسة المستخدمة لمصادقة الخدمة عن بُعد (على سبيل المثال ، كلمات مرور الحساب أو الرموز المميزة للحامل)
معتدل
  • تنفيذ التعليمات البرمجية التعسفي عن بعد في سياق مقيد
  • رفض خدمة الجهاز المؤقت عن بُعد (تعليق أو إعادة تشغيل عن بُعد)
  • تنفيذ كود تعسفي محلي في سياق غير مميز
  • تجاوز عام للدفاع في العمق أو استغلال تكنولوجيا التخفيف في سياق متميز أو TCB
  • تجاوز القيود على عملية مقيدة
  • الوصول عن بُعد إلى البيانات غير المحمية (يمكن الوصول إلى البيانات عادةً من أي تطبيق مثبت محليًا)
  • الوصول المحلي إلى البيانات المحمية (البيانات التي تقتصر على سياق متميز)
  • تجاوز محلي لمتطلبات تفاعل المستخدم (الوصول إلى الوظائف أو البيانات التي تتطلب عادةً إما بدء المستخدم أو إذن المستخدم)
  • ثغرة تشفير في أساسيات التشفير القياسية تسمح بتسريب نص عادي (وليس الأساسيات المستخدمة في TLS)
  • تجاوز تشفير أو مصادقة Wi-Fi
قليل
  • تنفيذ كود تعسفي محلي في سياق مقيد
  • ثغرة تشفير في الاستخدام غير القياسي
  • تجاوز عام للدفاع على مستوى المستخدم في العمق أو استغلال تقنية التخفيف في سياق غير مميز
  • الوثائق غير الصحيحة التي قد تؤدي إلى سوء فهم متعلق بالأمان مع عيوب التعليمات البرمجية اللاحقة
  • تجاوز العام لإضفاء الطابع الشخصي على ميزات الجهاز مثل المباراة صوت أو مباراة الوجه
تأثير أمني ضئيل (NSI)
  • الثغرة التي تم التخفيف من تأثيرها بواسطة واحد أو أكثر من مُعدِّلات التصنيف أو تغييرات البنية الخاصة بالإصدار بحيث تكون درجة الخطورة الفعالة أقل من منخفضة ، على الرغم من أن مشكلة الكود الأساسي قد تظل قائمة
  • أي الضعف الذي يتطلب نظام الملفات تالف، إذا هو أن نظام الملفات دائما اعتمد / تشفير قبل الاستخدام.

معدلات التصنيف

على الرغم من سهولة التعرف على شدة الثغرات الأمنية ، فقد تتغير التصنيفات بناءً على الظروف.

سبب تأثير
يتطلب التشغيل كسياق ذي امتيازات لتنفيذ الهجوم -1 شدة
التفاصيل الخاصة بالثغرات الأمنية تحد من تأثير المشكلة -1 خطورة
تجاوز المصادقة البيومترية التي تتطلب معلومات بيومترية مباشرة من مالك الجهاز -1 شدة
تخفف تكوينات برنامج التحويل البرمجي أو النظام الأساسي من ثغرة أمنية في التعليمات البرمجية المصدر شدة معتدلة إذا كانت الثغرة الأمنية الأساسية متوسطة أو أعلى
يتطلب وصولاً ماديًا إلى الأجزاء الداخلية للجهاز ولا يزال ممكنًا إذا كان الجهاز مغلقًا أو لم يتم إلغاء قفله منذ تشغيله -1 شدة
يتطلب الوصول المادي إلى الأجزاء الداخلية للجهاز أثناء تشغيل الجهاز وتم إلغاء قفله مسبقًا -2 شدة
هجوم محلي يتطلب إلغاء قفل سلسلة أداة تحميل التشغيل ليس أعلى من منخفض
هجوم محلي يتطلب وضع المطور أو أي إعدادات وضع مطور ثابتة ليتم تمكينها حاليًا على الجهاز (وليس خطأ في وضع المطور نفسه). ليس أعلى من منخفض
إذا لم يكن هناك مجال SELinux يمكنه إجراء العملية بموجب سياسة SEPolicy المقدمة من Google تأثير أمني ضئيل

محلي مقابل قريب مقابل بعيد

يشير ناقل الهجوم عن بُعد إلى أنه يمكن استغلال الخطأ دون تثبيت تطبيق أو بدون وصول فعلي إلى الجهاز. يتضمن ذلك الأخطاء التي يمكن تشغيلها عن طريق التصفح إلى صفحة ويب أو قراءة بريد إلكتروني أو تلقي رسالة SMS أو الاتصال بشبكة معادية. لأغراض تقييمات الخطورة لدينا ، نعتبر أيضًا ناقلات الهجوم "القريبة" بعيدة. وتشمل هذه الأخطاء التي لا يمكن استغلالها إلا من قبل المهاجم الذي يكون فعليًا بالقرب من الجهاز المستهدف ، على سبيل المثال ، خطأ يتطلب إرسال حزم Wi-Fi أو Bluetooth مشوهة. نحن نعتبر هجمات النطاق العريض للغاية (UWB) والهجمات التي تعتمد على تقنية NFC بمثابة هجمات قريبة وبالتالي بعيدة.

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

أمن الشبكة

يفترض Android أن جميع الشبكات معادية ويمكنها شن هجمات أو التجسس على حركة المرور. بينما يؤمن أمان طبقة الارتباط (على سبيل المثال ، تشفير Wi-Fi) الاتصال بين الجهاز ونقطة الوصول التي يتصل بها ، فإنه لا يفعل شيئًا لتأمين الروابط المتبقية في السلسلة بين الجهاز والخوادم التي يتصل بها.

على النقيض من ذلك ، يحمي HTTPS عادةً الاتصال بالكامل من طرف إلى طرف ، ويقوم بتشفير البيانات عند مصدرها ، ثم يقوم بفك تشفيرها والتحقق منها فقط بمجرد وصولها إلى وجهتها النهائية. لهذا السبب ، تم تصنيف الثغرات الأمنية التي تهدد أمان شبكة طبقة الارتباط بأنها أقل خطورة من الثغرات الأمنية في HTTPS / TLS: تشفير Wi-Fi وحده غير كافٍ لمعظم الاتصالات على الإنترنت.

تصديق احصائى

التوثيق التعريفية هو الفضاء تحدي، وحتى أفضل أنظمة يمكن أن ينخدع بها بالقرب من مباراة (انظر مطورين الروبوت مقالات: قفل الشاشة والتوثيق تحسينات في الروبوت 11 ). تميز تصنيفات الخطورة هذه بين فئتين من الهجمات وتهدف إلى عكس المخاطر الفعلية التي يتعرض لها المستخدم النهائي.

تسمح الفئة الأولى من الهجمات بتجاوز المصادقة البيومترية بطريقة قابلة للتعميم ، بدون بيانات بيومترية عالية الجودة من المالك. على سبيل المثال ، إذا تمكن المهاجم من وضع قطعة من العلكة على مستشعر بصمات الأصابع ، ومنح الوصول إلى الجهاز بناءً على البقايا المتبقية على المستشعر ، فهذا هجوم بسيط يمكن تنفيذه على أي جهاز حساس. لا يتطلب أي معرفة بمالك الجهاز. نظرًا لأنه قابل للتعميم ويحتمل أن يؤثر على عدد أكبر من المستخدمين ، فإن هذا الهجوم يتلقى تصنيف الخطورة الكامل (على سبيل المثال ، مرتفع ، لتجاوز Lockscreen).

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

SYSTEM_ALERT_WINDOW وTapjacking

للحصول على معلومات حول سياساتنا بشأن SYSTEM_ALERT_WINDOW وtapjacking، راجع "Tapjacking / تراكب SYSTEM_ALERT_WINDOW الضعف في حرج غير الأمنية شاشة" من جامعة BugHunter من البق مع عدم وجود تأثير الأمنية الصفحة.

المكون المتأثر

يعتمد فريق التطوير المسؤول عن إصلاح الخطأ على المكون الموجود فيه الخطأ. يمكن أن يكون مكونًا أساسيًا لمنصة Android ، أو برنامج تشغيل kernel مقدمًا من قبل الشركة المصنعة للمعدات الأصلية (OEM) ، أو أحد التطبيقات المحملة مسبقًا على أجهزة Pixel .

يتم إصلاح الأخطاء في كود AOSP بواسطة فريق هندسة Android. قد يتم إصلاح الأخطاء منخفضة الخطورة ، أو الأخطاء الموجودة في مكونات معينة ، أو الأخطاء المعروفة بالفعل للجمهور مباشرةً في الفرع الرئيسي لـ AOSP المتاح للجمهور ؛ وإلا سيتم إصلاحها في مستودعاتنا الداخلية أولاً.

يعد المكون أيضًا عاملاً في كيفية حصول المستخدمين على التحديثات. يتطلب الخلل في إطار العمل أو kernel تحديثًا للبرامج الثابتة عبر الهواء (OTA) يحتاج كل مُصنِّع أصلي إلى دفعه. يمكن إرسال خطأ في تطبيق أو مكتبة منشورة في Google Play (على سبيل المثال ، Gmail أو خدمات Google Play أو WebView) إلى مستخدمي Android كتحديث من Google Play.

إخطار الشركاء

عندما يتم إصلاح ثغرة أمنية في AOSP في نشرة أمان Android ، سنقوم بإخطار شركاء Android بتفاصيل المشكلة وتقديم التصحيحات. تتغير قائمة الإصدارات المدعومة من backport مع كل إصدار جديد من Android. اتصل بالشركة المصنعة للجهاز للحصول على قائمة الأجهزة المدعومة.

تحرير الكود إلى AOSP

إذا كان الخطأ الأمني ​​موجودًا في أحد مكونات AOSP ، فسيتم دفع الإصلاح إلى AOSP بعد إصدار OTA للمستخدمين. يمكن إرسال إصلاحات المشكلات منخفضة الخطورة مباشرةً إلى الفرع الرئيسي لـ AOSP قبل أن يتوفر الإصلاح للأجهزة من خلال OTA.

تلقي تحديثات Android

يتم تسليم تحديثات نظام Android بشكل عام إلى الأجهزة من خلال حزم تحديث OTA. قد تأتي هذه التحديثات من OEM الذي أنتج الجهاز أو الناقل الذي يوفر الخدمة للجهاز. تأتي تحديثات جهاز Google Pixel من فريق Google Pixel بعد المرور بإجراء اختبار قبول فني (TA). كما تنشر جوجل صور مصنع بكسل يمكن أن يكون لأجهزة محملة الجانب.

تحديث خدمات جوجل

بالإضافة إلى توفير تصحيحات للأخطاء الأمنية ، يقوم فريق أمان Android بمراجعة الأخطاء الأمنية لتحديد ما إذا كانت هناك طرق أخرى لحماية المستخدمين. على سبيل المثال ، يفحص Google Play جميع التطبيقات ويزيل أي تطبيق يحاول استغلال خطأ أمني. للتطبيقات المثبتة من خارج Google Play، قد الأجهزة مع خدمات Google Play أيضا استخدام التحقق من التطبيقات ميزة لتحذير المستخدمين حول التطبيقات التي قد تكون ضارة.

موارد آخرى

معلومات للمطورين التطبيق الروبوت: https://developer.android.com

توجد معلومات الأمان في جميع مواقع Android Open Source ومواقع Developer. أماكن جيدة للبدء:

التقارير

ينشر فريق أمان Android أحيانًا تقارير أو مستندات تقنية. انظر تقارير الأمن لمزيد من التفاصيل.