نقاط الضعف في وحدة Linux kernel ksmbd التي تسمح بتنفيذ التعليمات البرمجية عن بُعد

في وحدة ksmbd، التي توفر تنفيذ خادم ملفات استنادًا إلى بروتوكول SMB المدمج في Linux kernel، تم تحديد 14 نقطة ضعف، أربع منها تسمح لأحد الأشخاص بتنفيذ التعليمات البرمجية عن بعد باستخدام حقوق kernel. يمكن تنفيذ الهجوم دون مصادقة، ويكفي أن يتم تنشيط وحدة ksmbd على النظام. تظهر المشكلات بدءًا من الإصدار 5.15 من kernel، والذي يتضمن وحدة ksmbd. تم إصلاح الثغرات الأمنية في تحديثات النواة 6.3.2 و6.2.15 و6.1.28 و5.15.112. يمكنك تتبع الإصلاحات في التوزيعات على الصفحات التالية: Debian، Ubuntu، Gentoo، RHEL، SUSE، Fedora، Gentoo، Arch.

تم تحديد القضايا:

  • CVE-2023-32254، CVE-2023-32250، CVE-2023-32257، CVE-2023-32258 - تنفيذ التعليمات البرمجية عن بعد مع حقوق kernel بسبب عدم وجود قفل مناسب للكائن عند معالجة الطلبات الخارجية التي تحتوي على SMB2_TREE_DISCONNECT وSMB2_SESSION_SETUP وSMB2_LOGOFF و SMB2_CLOSE، مما يؤدي إلى حالة سباق قابلة للاستغلال. يمكن تنفيذ الهجوم دون مصادقة.
  • CVE-2023-32256 - تسرب محتويات مناطق ذاكرة kernel بسبب حالة السباق أثناء معالجة أوامر SMB2_QUERY_INFO وSMB2_LOGOFF. يمكن تنفيذ الهجوم دون مصادقة.
  • CVE-2023-32252، وCVE-2023-32248 - رفض الخدمة عن بعد بسبب عدم مرجعية مؤشر NULL عند معالجة أوامر SMB2_LOGOFF وSMB2_TREE_CONNECT وSMB2_QUERY_INFO. يمكن تنفيذ الهجوم دون مصادقة.
  • CVE-2023-32249 - إمكانية اختطاف الجلسة مع المستخدم بسبب عدم وجود العزل المناسب عند التعامل مع معرف الجلسة في الوضع متعدد القنوات.
  • CVE-2023-32247، CVE-2023-32255 - رفض الخدمة بسبب تسرب الذاكرة عند معالجة الأمر SMB2_SESSION_SETUP. يمكن تنفيذ الهجوم دون مصادقة.
  • CVE-2023-2593 هو رفض الخدمة بسبب استنفاد الذاكرة المتوفرة، بسبب فشل الذاكرة عند معالجة اتصالات TCP الجديدة. يمكن تنفيذ الهجوم دون مصادقة.
  • CVE-2023-32253 يحدث رفض الخدمة بسبب حالة توقف تام عند معالجة الأمر SMB2_SESSION_SETUP. يمكن تنفيذ الهجوم دون مصادقة.
  • CVE-2023-32251 - نقص الحماية ضد هجمات القوة الغاشمة.
  • CVE-2023-32246 يمكن لمستخدم النظام المحلي الذي لديه الحق في إلغاء تحميل وحدة ksmbd تنفيذ التعليمات البرمجية على مستوى Linux kernel.

بالإضافة إلى ذلك، تم تحديد 5 نقاط ضعف أخرى في حزمة أدوات ksmbd، والتي تتضمن أدوات مساعدة لإدارة ksmbd والعمل معها، ويتم تنفيذها في مساحة المستخدم. أخطر الثغرات الأمنية (ZDI-CAN-17822، ZDI-CAN-17770، ZDI-CAN-17820، CVE لم يتم تعيينها بعد) تسمح لمهاجم بعيد وغير مصادق بتنفيذ التعليمات البرمجية الخاصة به باستخدام حقوق الجذر. تنجم الثغرات الأمنية عن عدم التحقق من حجم البيانات الخارجية المستلمة قبل نسخها إلى المخزن المؤقت في رمز خدمة WKSSVC وفي معالجات كود التشغيل LSARPC_OPNUM_LOOKUP_SID2 وSAMR_OPNUM_QUERY_USER_INFO. هناك ثغرتان أخريان (ZDI-CAN-17823، ZDI-CAN-17821) يمكن أن تؤدي إلى رفض الخدمة عن بعد دون مصادقة.

يُوصف Ksmbd بأنه امتداد Samba عالي الأداء وجاهز للدمج ويتكامل مع أدوات ومكتبات Samba حسب الحاجة. دعم تشغيل خادم SMB باستخدام وحدة ksmbd موجود في حزمة Samba منذ الإصدار 4.16.0. على عكس خادم SMB الذي يعمل في مساحة المستخدم، يعد ksmbd أكثر كفاءة من حيث الأداء واستهلاك الذاكرة والتكامل مع إمكانيات kernel المتقدمة. يتم ترميز ksmbd بواسطة Namjae Jeon من Samsung وHyunchul Lee من LG، ويتم صيانته كجزء من kernel بواسطة Steve French من Microsoft، وهو مشرف على الأنظمة الفرعية CIFS/SMB2/SMB3 في Linux kernel وعضو منذ فترة طويلة في فريق تطوير Samba، وقد قدم مساهمات كبيرة في تنفيذ الدعم لبروتوكولات SMB/CIFS في Samba و لينكس.

بالإضافة إلى ذلك، يمكن ملاحظة اثنتين من نقاط الضعف في برنامج تشغيل الرسومات vmwgfx، المستخدم لتنفيذ تسريع ثلاثي الأبعاد في بيئات VMware. تسمح الثغرة الأمنية الأولى (ZDI-CAN-3) للمستخدم المحلي بتصعيد امتيازاته في النظام. ترجع الثغرة الأمنية إلى عدم التحقق من حالة المخزن المؤقت قبل تحريره عند معالجة vmw_buffer_object، مما قد يؤدي إلى استدعاء مزدوج للوظيفة المجانية. الثغرة الثانية (ZDI-CAN-20292) تؤدي إلى تسرب محتويات ذاكرة النواة بسبب أخطاء في تنظيم قفل كائنات GEM.

المصدر: opennet.ru

إضافة تعليق