
عرض تقديمي تعليمي يحلل CVE-2021-21193، وهي ثغرة استخدام بعد التحرير (use-after-free) في محرك Blink الخاص بمتصفح Google Chrome، بما في ذلك تفاصيل الاستغلال ونصائح التخفيف.
مقدمة في الاختراق
عروض دراسات حالة الثغرات الأمنية
مارس 2022
مهرزاد خداشناس، ستاره شيخ الاسلام زاده
إدخال قاموس CVE:
CVE-2021-21193
تاريخ النشر في NVD:
16/03/2021
آخر تعديل في NVD:
12/03/2021
المصدر:
Chrome
| السمة | القيمة |
|---|
| الخطورة | 7 |
| CVSS | (AV:N/AC:M/Au:N/C:P/I:P/A:P) |
| تاريخ النشر | 05/03/2021 |
| تاريخ الإنشاء | 06/03/2021 |
| تاريخ الإضافة | 05/03/2021 |
| تاريخ التعديل | 09/04/2021 |
الاستخدام بعد التحرير (Use after free) في Blink في Google Chrome قبل الإصدار 89.0.4389.90 سمح لمهاجم عن بُعد باستغلال تلف الكومة (heap corruption) عبر صفحة HTML مصممة بعناية.
أدخل وصف الصورة هنا
CVE، وهو اختصار لـ Common Vulnerabilities and Exposures (الثغرات والتعرضات الشائعة)، هو قائمة بالعيوب الأمنية للحاسوب التي تم الكشف عنها علنًا. عندما يشير شخص ما إلى CVE، فإنه يعني عيبًا أمنيًا تم تخصيص رقم معرف CVE له. دائمًا ما تذكر النشرات الأمنية الصادرة عن البائعين والباحثين معرف CVE واحدًا على الأقل. تساعد CVEs المتخصصين في تكنولوجيا المعلومات على تنسيق جهودهم لتحديد أولويات هذه الثغرات ومعالجتها لجعل أنظمة الحاسوب أكثر أمانًا. المصدر

نشر فريق Chrome إعلانًا في مارس 2021 مفاده أنه إذا كنت تستخدم Google Chrome على أي من أجهزتك، فمن الضروري تحديثه فورًا. هناك تحديثات متكررة لـ Google Chrome، لكن أحدث تصحيح، وهو الإصدار المستقر 89.0.4389.90، يصحح العديد من الثغرات الأمنية، ثلاث منها ذات تصنيف خطورة مرتفع، وواحدة منها تم استغلالها بالفعل من قبل مجرمي الإنترنت والقراصنة. المصدر كانت واحدة من الثغرات ذات التصنيف عالي الخطورة تسمى CVE-2021-21193. وهي ثغرة في محرك المتصفح Blink الخاص بـ Google Chrome، وهو المكوّن الرئيسي المسؤول عن تحويل كود HTML إلى صفحات الويب المصممة جيدًا التي اعتدت تصفحها. تؤثر هذه المشكلة على معالجة معينة غير محددة في مكوّن Blink، ويؤدي التلاعب بمدخلات غير معروفة إلى ثغرة تلف في الذاكرة. هذه الثغرة التي تم استغلالها من قبل المخربين تشير إلى أن جميع المستخدمين بحاجة إلى التحديث إلى الإصدار 89.0.4389.90. وهي ثغرة من نوع الاستخدام بعد التحرير (use-after-free)، مما يعني أن Blink كان يواجه مشكلة في مسح الذاكرة. المصدر
تم الكشف عن الضعف في 05/03/2021. لا يلزم أي شكل من أشكال المصادقة للاستغلال الناجح، ولكنه يتطلب أن يقوم الضحية بنوع من التفاعل مع المستخدم. هناك أيضًا سعر تقديري لاستغلال هذه الثغرة يبلغ حوالي 5,000 إلى 25,000 دولار أمريكي تم حسابه في 28/03/2021. https://vuldb.com/?id.170687
على الرغم من أن هذا يبدو تافهًا وعاديًا، فإن أكثر العواقب شيوعًا لثغرة الاستخدام بعد التحرير هي تلف البيانات وتنفيذ كود تعسفي، والتي، وفقًا لوصف قاعدة بيانات الثغرات الوطنية (National Vulnerability Database) لثغرة CVE-2021-21193 نفسها، يمكن أن تسمح "لمهاجم عن بُعد باستغلال تلف الكومة عبر صفحة HTML مصممة بعناية." المصدر
الاستخدام بعد التحرير (UAF) هو ثغرة مرتبطة بالاستخدام غير الصحيح للذاكرة الديناميكية أثناء تشغيل البرنامج. إذا لم يقم البرنامج بمسح المؤشر إلى موقع الذاكرة بعد تحريره، يمكن للمهاجم استخدام هذا الخطأ لاختراق البرنامج.
تنبع ثغرات UAF من آلية تخصيص الذاكرة الديناميكية. على عكس المكدس (stack)، تم تصميم الذاكرة الديناميكية (المعروفة أيضًا باسم الكومة heap) لتخزين كميات كبيرة من البيانات. يمكن للمبرمجين تخصيص كتل بأحجام عشوائية فيها، ويمكن للمهام داخل البرنامج إما تعديلها أو تحريرها وإعادتها إلى الكومة لاستخدامها لاحقًا بواسطة مهام أخرى في نفس البرنامج.
يجب على البرامج التحقق باستمرار من مناطق الكومة الحرة والمشغولة نظرًا لأن الذاكرة الديناميكية يتم إعادة تخصيصها غالبًا. تساعد الرؤوس (headers) من خلال الإشارة إلى مناطق الذاكرة المخصصة. يتم تضمين عنوان البداية للكتلة المناسبة في كل رأس. تنشأ أخطاء UAF عندما لا تدير البرامج هذه الرؤوس بشكل صحيح.
تشير المؤشرات في البرنامج إلى مجموعات البيانات في الذاكرة الديناميكية. إذا تم حذف مجموعة بيانات أو نقلها إلى كتلة أخرى ولكن المؤشر، بدلاً من مسحه (تعيينه إلى null)، يستمر في الإشارة إلى الذاكرة المحررة الآن، تكون النتيجة مؤشرًا معلقًا (dangling pointer). إذا قام البرنامج بعد ذلك بتخصيص نفس الجزء من الذاكرة لكائن آخر (على سبيل المثال، بيانات أدخلها مهاجم)، فسيشير المؤشر المعلق الآن إلى مجموعة البيانات الجديدة هذه. بمعنى آخر، تسمح ثغرات UAF باستبدال الكود.
يمكن للمهاجم استخدام ثغرات UAF لتمرير كود تعسفي، أو مرجع إليه، إلى برنامج والتنقل إلى بداية الكود باستخدام مؤشر معلق. بهذه الطريقة، يمكن لمجرم الإنترنت الحصول على السيطرة على نظام الضحية عن طريق تنفيذ كود خبيث. المصدر
أبلغ باحث أمني مجهول عن CVE-2021-211193 في 9 مارس، وسارع Google بإصدار إصلاح في ثلاثة أيام فقط. قد يُعزى هذا الاستعجال إلى الاستغلال الواقعي للثغرة؛ فقد استخدم المجرمون الثغرة بالفعل، وهذا سبب كافٍ للجميع لتحديث Google Chrome في أسرع وقت ممكن. المصدر
عادةً لا تنشر Google معلومات حول الثغرات الأمنية إلا بعد إصلاحها، وقد تم إصلاح ثغرة CVE-2021-21193 في موعد لا يتجاوز ثلاثة أيام بعد الإبلاغ عنها من قبل باحث أمني مجهول، وهو ما يعني على الأرجح أن الثغرة قد تم استغلالها بالفعل في موقف واقعي. القاعدة الذهبية هي أنه إذا كانت شركة تقنية عملاقة مثل Google تأخذ مشكلة أمنية على محمل الجد، فيجب علينا جميعًا أن نفعل الشيء نفسه.
ولكن هناك خلاصة مهمة أخرى هنا، وهي أن هذه الشركات التقنية العملاقة ومنتجاتها ليست مثالية؛ فهي، مثلنا تمامًا، جزء من السباق المستمر للحفاظ على أمان الأنظمة والأدوات للمستخدمين النهائيين أمثالك. من الضروري للغاية الحفاظ على تحديث برامجك بأحدث التحديثات من مطوريها، لأن أحدث التحديثات هي تلك التي تم تصميمها لتقليل التهديد من التهديدات السيبرانية سريعة التطور والتقدم. المصدر