
نعلن أسبوع من الخلل ما قبل التاريخ. تم وصف الثغرة الأمنية في أرشيف WinRAR ، الذي تم اكتشافه وإغلاقه في نهاية شهر يناير ، بالتفصيل من قِبل متخصصي Check Point Software (
أخبار ،
أبحاث أصلية). في أسوأ الحالات ، يسمح لك الاختراق بفك ضغط الملف الضار إلى موقع تعسفي على محرك الأقراص الثابتة ، على سبيل المثال ، إلى دليل التشغيل التلقائي لـ Windows.
تجعلك مشكلة عدم الحصانة هذه تفكر في استخدام مكتبات الجهة الخارجية التي يصعب التحقق منها في برنامجك ، ولكن ليس فقط. اليوم سنتحدث باختصار عن المشكلة نفسها ، قرار مطوري WinRAR بالتخلي عن المكتبة لتفريغ المحفوظات بتنسيق ACE ، وسنطرح أيضًا موضوع تحديث WinRAR على أجهزة كمبيوتر المستخدمين. التطلع إلى المستقبل: على الرغم من أن الأخبار تسببت في صدى خطير ، إلا أنها على الأرجح قصة نهاية سعيدة. لكن فئة الثغرات الأمنية المرتبطة بمعالجة أي أرشيفات تصل إلى جهاز الكمبيوتر الخاص بك تستحق الاهتمام بشكل خاص بها.
في التقرير الأصلي ، قبل توضيح المشكلة ، هناك العديد من التفاصيل (المثيرة للاهتمام) ، ولكن دعونا ننظر إلى النتيجة على الفور.
يتم حفظ الأرشيف المعد على سطح المكتب ، ويحاول المستخدم فك ضغطه هناك ، ولكن بدلاً من ذلك تتم كتابة الملف القابل للتنفيذ إلى دليل التشغيل التلقائي. كيف حدث ذلك؟ استخدم الباحثون تقنية التشويش ، وهي حزمة
WinAFL ، التي يدعمها فريق Google Project Zero وهو إصدار Windows من
حلقة غامضة أمريكية . مثل الأدوات الأخرى المماثلة ، يسمح لك WinAFL بفحص أمان (أو ثبات) البرنامج عن طريق تمرير بيانات عشوائية (أو ليست كاملة) إلى التطبيق والحفاظ على التفاعل. يمكن اعتبار Fuzzers نوعًا من "العصا السحرية" للباحث الأمني. فهي تساعد على اكتشاف تعطل البرامج المختلفة في الأماكن التي لا ينبغي أن تكون.
ومع ذلك ، يُظهر تقرير Check Point أن الأمور ليست بهذه البساطة. ساعد بحث WinAAR مع WinAFL على تحديد العديد من أعطال التطبيق غير المتوقعة وقاد الباحثين إلى مكتبة تعالج الأرشيفات بتنسيق ACE - وهو معيار أرشيف خاص. تم آخر تحديث لهذه المكتبة (unacev2.dll) في عام 2006 ولم يكن لديها آليات حماية قياسية (مثل ASLR أو DEP). علاوة على ذلك ، كانت حاضرة في جميع إصدارات WinRAR على مدار السنوات الـ 19 الماضية ، وكما اتضح فيما بعد ، كان كل هذا الوقت ضعيفًا. في الوقت الذي تم فيه اكتشاف الخطأ ، لم يتمكن مطورو WinRAR من الوصول إلى الكود المصدر الخاص به. كانت ACE بشكل عام محفوظات تجارية في وقت واحد ، وكانت مكتبة فك الحزم مجانية ، لكن لا يمكنك إنشاء محفوظات قانونية بهذا التنسيق إلا باستخدام الأداة المساعدة WinACE الملكية (تم تحديثه حتى عام 2007 ،
وموقع البرنامج على الويب موجود حتى عام 2017 ، والآن تم التخلي عن هذا البرنامج بشكل واضح )
العثور على مشكلة عدم حصانة بسيطة مثل Path Traversal عندما لا يعمل الأرشيف في فك ضغط الملف في دليل تعسفي ، كان علي إعداد أداة مساعدة مرة أخرى ، ولكن هذه المرة بعد دراسة ميزات التنسيق باستخدام كل من برنامج WinACE الأصلي والرمز الموزع مجانًا لفك الرزم إلى بيثون. في الرحلة التالية للتعرف على مواطن الخلل العشوائي ، وجد الباحثون ملفًا لم يتم حفظه على الإطلاق حيث كان من المفترض أن يحفظ WinAFL نتيجة تشغيل المكتبة.

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

هذا ما حدث. هذه لقطة من تحليل الأرشيف "المعد" باستخدام كود بيثون المذكور أعلاه. تتم معالجة مزدوج c: \\ في بداية المسار بواسطة مكتبة unacev2 و WinRAR نفسها بحيث تتم كتابة الملف إلى دليل التعسفي. يبدو أن استغلال جاهز؟ مرة أخرى لا ، أو بالأحرى لا حقا. ستؤدي محاولة كتابة الملف القابل للتنفيذ إلى دليل التشغيل التلقائي في هذا التكوين إلى تشغيل حماية Windows. لكن الباحثين تمكنوا من إيجاد طريقة للتغلب على هذا القيد إذا تم حفظ الملف في دليل المستخدم ، على سبيل المثال ، في مجلد التنزيلات أو على سطح المكتب (وهو أمر محتمل جدًا). كما هو موضح في الفيديو في البداية ، تم حفظ الملف الذي تم إعداده في دليل التشغيل التلقائي للمستخدم عن طريق التنقل في مجلد واحد أعلى في مسار الملف.
ما هي النتيجة؟ في WinRAR 5.70 Beta 1 ، تم إصلاح مشكلة عدم الحصانة عن طريق التخلي تمامًا عن استخدام مكتبة قديمة للعمل مع ملفات ACE. من غير المرجح أن يكون أي شخص مستاء بشكل خطير من هذا. بالمناسبة ، فإن النصيحة المقدمة في
مقال على موقع ZDNet - "لا تفتح الأرشيفات المشبوهة بتنسيق ACE" - خاطئة بعض الشيء. لا يقوم WinRAR بالكشف عن الملفات بإذن ، وسيعمل الاستغلال مع إصدار مستضعف من البرنامج ، حتى إذا كان أرشيف ACE المُعد يحتوي على امتداد RAR (أو أي شيء آخر). لا تفتح الأرشيفات المشبوهة - هذا أمر جيد ، لكن يجب تحديثه بشكل عام.
الآن ، انزع عقلك عن المنشور لمدة دقيقة وشاهد إصدار WinRAR الذي قمت بتثبيته (ما لم تستخدم بالطبع هذا الأرشيف). كمرجع: تم إصدار الإصدار 5.50 في عام 2017 ، 5.00 - في عام 2012 ، 3.90 - في عام 2009. مع بعض الاحتمالات ، سيتوافق تاريخ إصدار WinRAR تقريبًا مع تاريخ الإعداد الأولي للنظام ، نظرًا لعدم وجود وظيفة تحديث تلقائي في هذا البرنامج. كما ترون من تغريدة شركة وسيط الضعف Zerodium ، هناك طلب على مآثر العمل في المحفوظات. يمكن استخدام نقاط الضعف مثل تلك الموجودة في المكتبة الخاصة بأرشيفات ACE للهجمات الجماعية أو المستهدفة على أجهزة الكمبيوتر الخاصة بالضحايا. تجدر الإشارة إلى أن فرص التشغيل الناجح لمثل هذا الخطأ بعيدة عن أن تكون مطلقة. من المحتمل جدًا أن يتم حظر الأرشيف المصاب بواسطة خدمة البريد (على سبيل المثال ، GMail ، على سبيل المثال ، الأرشيفات المحمية بكلمة مرور والمحفوظات مع الملفات القابلة للتنفيذ داخل لا يتم تخطيها هناك) أو بواسطة برنامج مكافحة الفيروسات. ما لم يكن ، بالطبع ، لديك.
ومع ذلك ، فإن كل هذه التذكيرات المزعجة بضرورة تحديث أحد العشرات من البرامج المثبتة على الكمبيوتر أمر منطقي. خلاف ذلك ، من السهل تفويت ثغرة أمنية خطيرة ستعمل في أكثر اللحظات غير المناسبة. في الإنصاف ، نلاحظ أن المشاكل الخطيرة في WinRAR
تظهر بشكل غير منتظم.
إخلاء المسئولية: الآراء الواردة في هذا الملخص قد لا تتوافق دائمًا مع الموقف الرسمي لـ Kaspersky Lab. عزيزي المحررين يوصون عمومًا بمعالجة أي آراء بتشكك صحي.