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

 

تصيب الثغرة الإصدارات التالية:

  • Windows XP Service Pack 3
  • Windows XP Professional x64 Edition Service Pack 2
  • Windows Server 2003 Service Pack 2
  • Windows Server 2003 x64 Edition Service Pack 2
  • Windows Server 2003 with SP2 for Itanium-based Systems
  • Windows Vista Service Pack 1 and Windows Vista Service Pack 2
  • Windows Vista x64 Edition Service Pack 1 and Windows Vista x64 Edition Service Pack 2
  • Windows Server 2008 for 32-bit Systems and Windows Server 2008 for 32-bit Systems Service Pack 2
  • Windows Server 2008 for x64-based Systems and Windows Server 2008 for x64-based Systems Service Pack 2
  • Windows Server 2008 for Itanium-based Systems and Windows Server 2008 for Itanium-based Systems Service Pack 2
  • Windows 7 for 32-bit Systems
  • Windows 7 for x64-based Systems
  • Windows Server 2008 R2 for x64-based Systems
  • Windows Server 2008 R2 for Itanium-based Systems

في موضوعنا هذا سنقوم بتجربتها على نظامي Windows 7 Ultimate 64bit و Windows XP sp2 64bit بآخر تحديثاتهم.

إستغلال الملف المصاب في المثال يتمثل في تحميل وبدء مكتبة بإسم dll.dll على جذر القرص C, المكتبة ستعرض رسالة للمستخدم حال تحميلها.

بعد تجهيز المكتبة نقوم بوضعها مع الإختصار المصاب على القرص, إعادة تسمية ملف الإختصار ومن ثم تحديث المجلد لإعادة تحميل الإيقونة…

نلاحظ أن المكتبة قد تم تحميلها وقد تم تنفيذ محتوياتها:

 

Windows LNK Exploit

Windows LNK Exploit

 

طبعاَ الإستغلال الضار يكون بإضافة shellcode يقوم بتحميل أو تنفيذ ملفات ضارة مرفقة مع ملف الإختصار, كما في فيروس Stuxnet الذي يعتبر أول إستغلال علني وواسع النطاق للثغرة حيث ينشر الإختصارات المصابة مع نسخة منه في كل أقراص الذاكرة ويقوم بتحميل rootkit يحمل شهادة رقمية موقعة من شركة Realtek Semiconductor Corp. حسب تحليل موقع F-Secure.

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

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

نقوم في البداية بفتح محرر التسجيل regedit والذهاب إلى المفتاح التالي:

HKEY_CLASSES_ROOTlnkfileshellexIconHandler

Windows LNK Exploit

 

ومن ثم نقوم بتغيير إسم المفتاح من IconHandler إلى اي إسم آخر مثل : IconHandler-bak , ومن ثم نقوم بإعادة تشغيل الجهاز.

بإعادة التشغيل نجد أن كل الإختصارات بدون أيقوناتها ونستطيع ملاحظة أن الثغرة لم تعد تعمل بسبب التعطيل الحاصل:

 

Windows LNK Exploit

 

قبل تحديث النظام وترقيع الثغرة ضع في حسبانك أن تعيد مفتاح IconHandler إلى اسمه الأصلي لأن الترقيع قد يتعامل مع المفتاح بشكل من الأشكال ولا تنس إعادة التشغيل =)

العديد من شركات الحماية بدأت بإضافة ملفات الإختصارات الضارة إلى برامجها وقواعد بياناتها, لتاريخ اليوم يوجد 10 من أصل 42 برنامج حماية يصنف الملفات على أساس أنها ضارة حسب موقع Virus Total.

سيتم تحديث الموضوع عند نزول الترقيع , وسيتم إرفاق الملف المصاب بعد الترقيع إن شاء الله.

مراجع:

عن الكاتب:


مصطفى العيسائي, طالب جامعي مهتم بمجالات الأمن والبرمجة.

Share on FacebookShare on Google+Tweet about this on TwitterShare on LinkedIn