جوجل تختار Rust: قرار حكيم يقود إلى تقليل الثغرات الأمنية في Android
كشفت شركة جوجل أن انتقالها إلى اللغات الآمنة للذاكرة مثل Rust كجزء من نهجها الآمن حسب التصميم أدى إلى انخفاض نسبة الثغرات الآمنة للذاكرة المكتشفة في نظام Android من 76% إلى 24% على مدى ست سنوات. .
كشفت شركة جوجل أن انتقالها إلى اللغات الآمنة للذاكرة مثل Rust كجزء من نهجها الآمن حسب التصميم أدى إلى انخفاض نسبة الثغرات الآمنة للذاكرة المكتشفة في نظام Android من 76% إلى 24% على مدى ست سنوات. .
وقال عملاق التكنولوجيا التركيز على الترميز الآمن للميزات الجديدة لا تقلل فقط من المخاطر الأمنية الشاملة لقاعدة التعليمات البرمجية، ولكنها أيضًا تجعل التبديل أكثر “قابلية للتطوير وفعالية من حيث التكلفة”.
في النهاية، يؤدي هذا إلى انخفاض في ثغرات أمان الذاكرة حيث يتباطأ التطوير غير الآمن للذاكرة الجديدة بعد فترة زمنية معينة، ويتولى التطوير الآمن للذاكرة الجديدة المسؤولية، كما يقول جيف فاندر ستيب من Google وأليكس ريبرت قال في منشور تمت مشاركته مع The Hacker News.
ولعل الأمر الأكثر إثارة للاهتمام هو أن عدد ثغرات أمان الذاكرة يميل إلى تسجيل انخفاض على الرغم من زيادة كمية التعليمات البرمجية غير الآمنة للذاكرة الجديدة.
يتم تفسير المفارقة من خلال حقيقة أن الثغرات الأمنية تتدهور بشكل كبير، حيث توصلت إحدى الدراسات إلى أن عددًا كبيرًا من الثغرات الأمنية غالبًا ما يكون موجودًا في التعليمات البرمجية الجديدة أو المعدلة مؤخرًا.
وأشار فاندر ستوب وريبرت إلى أن “المشكلة تكمن بشكل كبير في التعليمات البرمجية الجديدة، مما يستلزم تغييرًا أساسيًا في كيفية تطوير التعليمات البرمجية”. “تنضج التعليمات البرمجية وتصبح أكثر أمانًا بمرور الوقت، بشكل كبير، مما يجعل عوائد الاستثمارات مثل عمليات إعادة الكتابة تتضاءل بمرور الوقت مع تقدم التعليمات البرمجية.”
قالت Google، التي أعلنت رسميًا عن خططها لدعم لغة البرمجة Rust في Android في أبريل 2021، إنها بدأت في إعطاء الأولوية لنقل التطوير الجديد إلى اللغات الآمنة للذاكرة في عام 2019 تقريبًا.
ونتيجة لذلك، انخفض عدد الثغرات الأمنية في الذاكرة التي تم اكتشافها في نظام التشغيل 223 في عام 2019 إلى أقل من 50 في عام 2024.
وغني عن القول أيضًا أن الكثير من الانخفاض في مثل هذه العيوب يرجع إلى التقدم في الطرق المصممة لمكافحتها، والانتقال من التصحيح التفاعلي إلى التخفيف الاستباقي إلى الاكتشاف الاستباقي للثغرات الأمنية باستخدام أدوات مثل مطهرات Clang.
وأشار عملاق التكنولوجيا أيضًا إلى أن استراتيجيات سلامة الذاكرة يجب أن تتطور بشكل أكبر لإعطاء الأولوية لـ “الوقاية عالية الضمان” من خلال دمج مبادئ التصميم الآمن التي تكرس الأمن في الأسس ذاتها.
“بدلاً من التركيز على التدخلات المطبقة (التخفيف، والتشويش)، أو محاولة استخدام الأداء السابق للتنبؤ بالأمان المستقبلي، يتيح لنا التشفير الآمن تقديم تأكيدات قوية حول خصائص الكود وما يمكن أن يحدث أو لا يحدث بناءً على تلك الخصائص،” فاندر قال ستوب وريبرت.
هذا ليس كل شيء. وقالت جوجل إنها تركز أيضًا على تقديم إمكانية التشغيل البيني بين Rust وC++ وKotlin، بدلاً من إعادة كتابة التعليمات البرمجية، باعتباره “نهجًا عمليًا وتدريجيًا” لتبني اللغات الآمنة للذاكرة والقضاء في النهاية على فئات الثغرات الأمنية بأكملها.
وقالت: “إن اعتماد التشفير الآمن في التعليمات البرمجية الجديدة يوفر نقلة نوعية، مما يسمح لنا بالاستفادة من التدهور المتأصل في نقاط الضعف لصالحنا، حتى في الأنظمة الكبيرة الحالية”.
“المفهوم بسيط: بمجرد إيقاف تشغيل الثغرات الأمنية الجديدة، فإنها تنخفض بشكل كبير، مما يجعل جميع التعليمات البرمجية الخاصة بنا أكثر أمانًا، ويزيد من فعالية تصميم الأمان، ويخفف من تحديات قابلية التوسع المرتبطة باستراتيجيات سلامة الذاكرة الحالية بحيث يمكن تطبيقها بشكل أكثر فعالية بطريقة هادفة.”
يأتي هذا التطوير في الوقت الذي تروج فيه Google لزيادة التعاون مع فرق هندسة أمان المنتجات ووحدة معالجة الرسومات (GPU) التابعة لشركة Arm للإبلاغ عن أوجه القصور المتعددة ورفع مستوى الأمان العام لمجموعة برامج GPU / البرامج الثابتة عبر نظام Android البيئي.
يتضمن ذلك اكتشاف مشكلتين في الذاكرة في تخصيص Pixel لرمز برنامج التشغيل (CVE-2023-48409 وCVE-2023-48421) وآخر في البرامج الثابتة لوحدة معالجة الرسومات Arm Valhall والبرامج الثابتة لبنية وحدة معالجة الرسومات من الجيل الخامس (CVE-2024-0153).
“إن الاختبار الاستباقي يعد بمثابة نظافة جيدة لأنه يمكن أن يؤدي إلى اكتشاف نقاط الضعف الجديدة وحلها قبل استغلالها،” Google وArm قال.