كامل (هناك كشف كامل للمعلومات، مما يؤدي إلى كشف جميع ملفات النظام.)
تأثير السلامة
كامل (هناك مساس كامل بسلامة النظام. هناك فقدان كامل لحماية النظام، مما يؤدي إلى اختراق النظام بالكامل.)
تأثير التوفر
كامل (هناك إيقاف تام للمورد المتأثر. يمكن للمهاجم جعل المورد غير متاح تمامًا.)
تعقيد الوصول
منخفض (لا توجد شروط وصول متخصصة أو ظروف مخففة. لا يتطلب الاستغلال سوى معرفة أو مهارة قليلة جدًا. )
المصادقة
غير مطلوبة (المصادقة غير مطلوبة لاستغلال الثغرة.)
الوصول المكتسب
لا شيء
نوع (أنواع) الثغرة
تنفيذ برمجيات
الأنظمة الأساسية المتأثرة
Windows وMacintosh وLinux وChrome OS [1]
وصف أساسي للثغرة وكيف يمكن استغلالها.
لنفترض أنك تلقيت بريدًا إلكترونيًا يحتوي على مستند MS Office من شخص ما، أو قمت بتنزيل مستند MS Office مستضاف على خادم DDNS. إذا كان مستند MS Office هذا مصممًا بشكل خاص من قِبل المهاجم الذي ينوي استغلال هذه الثغرة، فمن المحتمل أن تحدث الإجراءات التالية.
تفتح مستند MS Office على نظام يشغّل Flash Player الإصدار 21.0.0.226 أو إصدار أقدم، ولكن ليس أقدم من 21.0.0.196 [6]
سترى المحتوى المبني على Flash داخل المستند ويتم تشغيل الاستغلال
يتصل جهاز الكمبيوتر الخاص بك بخادم المهاجم ويقوم بتنزيل حمولة خبيثة
سترى مستندًا خادعًا وقد لا تدرك أي شيء ضار، لكن نظامك أصبح مخترقًا وربما يكون جزءًا من شبكة بوتنت (Botnet) في انتظار التعليمات من خادم القيادة والتحكم (C&C) [يرجى مراجعة قسم التفاصيل التقنية لمزيد من المعلومات]
ما الأنظمة المتأثرة؟
جميع منصات Windows وMacintosh وLinux وChrome OS التي تشغّل Adobe Flash Player الإصدار 21.0.0.226 أو إصدار أقدم متأثرة بثغرة CVE-2016-4117.
ما الذي يمكن عمله للتخفيف من الثغرة؟
عالجت Adobe ثغرة CVE-2016-4117 في 12 مايو 2016، وأوصت المستخدمين بتحديث تثبيت المنتج إلى أحدث الإصدارات باستخدام التعليمات المشار إليها في النشرة الأمنية [2]. بالإضافة إلى ذلك، يمكن للمستخدمين أيضًا تجنب استخدام Adobe Flash Player إذا لم يكن مطلوبًا لأنظمتهم.
هل يتوفر كود استغلال؟
نعم. لا توجد وحدة Metasploit لثغرة CVE-2016-4117، ولكن يمكن اتباع الخطوات التالية من أجل القراءة والكتابة بشكل عشوائي في الذاكرة
يحدد المهاجم اسم خاصية مثل "placement" يتعارض مع اسم الواجهة الداخلية في com.adobe.tvsdk.mediacore.timeline.operations.DeleteRangeTimelineOperation
الآن، استدعاء واجهة "placement" يجعل ActionScript VM يستدعي الدالة الداخلية getBinding للحصول على معرف الربط (bind id)
نظرًا لأن الخاصية "placement" تتعارض مع اسم الواجهة، يمكن للمهاجم التلاعب بمعرف الربط وإنشاء تعارض
من أجل إدخال كود برمجي للتحكم في الذاكرة، يعرّف الاستغلال كائنًا يمتد من ByteArray بقيم مميزة. تساعد القيم المميزة الاستغلال في تحديد موقع الكائنات في الذاكرة بسهولة
يمكن لخاصية "placement" الآن التلاعب بمعرف الربط للقراءة خارج الحدود والإشارة إلى ByteArray الموسع الذي يحتوي على كود القشرة (shell code)
عندما يتم تنفيذ كود القشرة الموجود في ByteArray، تتاح للمهاجم القدرة على إفساد أحد الكائنات لتوسيع طوله إلى 0xffffffff (ذاكرة عالية) ومخزن البيانات الخاص به إلى العنوان 0، أي أن الكائن قادر على قراءة وكتابة جميع محتويات الذاكرة (RAM)
على سبيل المثال، إذا كان النظام عبارة عن خادم ويب، يمكن للاستغلال قراءة قيمة المفتاح الخاص المخزنة في الذاكرة واختراق هوية خادم الويب [3]
كيف يمكن أن تؤثر أنشطة الاستغلال على الأنظمة المتأثرة؟
لنفترض أن النظام الأساسي هو خادم ويب يعمل بنظام Ubuntu ويشغّل Adobe Flash Player الإصدار 21.0.0.226 أو إصدار أقدم، ولكن ليس أقدم من 21.0.0.196. كما هو موضح في القسم السابق، يسمح الاستغلال الناجح للمهاجم بقراءة وكتابة محتويات الذاكرة. هناك أنواع عديدة ومختلفة من اختراقات الأنظمة المحتملة. فيما يلي بعض الاختراقات المحتملة
قيام المهاجم بالحصول على جميع محتويات الذاكرة وإرسالها إلى خوادم C&C
قيام المهاجم بمسح الذاكرة مما قد يتسبب في انقطاع بعض الخدمات أو تعطل البرامج
قيام المهاجم بتثبيت باب خلفي (backdoor) بحيث يمكن الوصول إلى المضيف المخترق في المستقبل
قيام المهاجم باستخراج معلومات حساسة مثل المفاتيح الخاصة وكلمات المرور (ممكن في بعض الحالات)
قيام المهاجم بتشغيل أداة strace أو مصحح أخطاء (debugger) للارتباط بالعملية الجارية لاكتشاف استدعاءات/متغيرات النظام المحتملة وتغيير قيمها
قيام المهاجم بالسيطرة الكاملة على النظام وتدميره بالكامل