تم اكتشاف ثغرة أمنية في xterm تؤدي إلى تنفيذ التعليمات البرمجية

حساسية

إذا تم استغلالها ، يمكن أن تسمح هذه العيوب للمهاجمين بالوصول غير المصرح به إلى المعلومات الحساسة أو التسبب بشكل عام في حدوث مشكلات

مؤخرا اندلعت الأخبار ذلك تم العثور على ثغرة أمنية في محاكي xterm الطرفية (تم فهرستها بالفعل ضمن CVE-2022-45063) ، المشكلة يسمح بتنفيذ أوامر shell عندما تتم معالجة تسلسلات هروب معينة في الجهاز.

حول المشكلة ذكر ذلك إنه ناتج عن خطأ في معالجة كود الهروب 50 والذي يستخدم لتعيين أو الحصول على خيارات الخط. في حالة عدم وجود الخط المطلوب ، تُرجع العملية اسم الخط المحدد في الطلب.

تكمن المشكلة في تسلسل OSC 50 ، وهو التكوين والاستشارة نافورة. في حالة عدم وجود مصدر معين ، لا يتم تعيينه ، ولكن يتم تعيين استعلام سيعيد الاسم الذي تم تعيينه. لا يمكن أن تكون أحرف التحكم مضمن ، ولكن يمكن إنهاء سلسلة الاستجابة بـ ^ G. شرق يعطينا أساسًا بدائية لإعادة النص إلى المحطة وتنتهي بـ ^ G.

لا يمكن إدراج أحرف التحكم مباشرة باسم، ولكن يمكن إنهاء السلسلة التي تم إرجاعها بالتسلسل "^ G" ، والتي في zsh ، عندما يكون وضع تحرير سطر نمط vi نشطًا ، يؤدي إلى إجراء عملية توسيع قائمة ، والتي يمكن استخدامها لتنفيذ الأوامر دون الضغط صراحة على مفتاح الإدخال.

للهجوم في أبسط الحالات ، يكفي عرض محتوى ملف مصمم خصيصًا على الشاشة ، على سبيل المثال ، باستخدام الأداة المساعدة cat ، أو لصق خط من الحافظة.

يقوم Debian و Red Hat وغيرهما بتعطيل عمليات الخطوط افتراضيًا ، ولكن يمكن للمستخدمين إعادة تمكينها من خلال خيار أو قائمة التكوين. أيضا ، xterm المنبع يفعل لا يقوم بتعطيلها افتراضيًا ، لذلك تتضمن بعض التوزيعات ملف التكوين الافتراضي الضعيف.

لاستغلال الثغرة الأمنية بنجاح ، يجب على المستخدم استخدام Zsh shell مع تبديل محرر سطر الأوامر (vi-cmd-mode) إلى الوضع "vi"، والذي لا يتم استخدامه بشكل افتراضي في التوزيعات.

نحتاج في الأساس إلى:
zsh
وضع تحرير الخط النشط في نمط vi
نسخ نص حصان طروادة إلى الحافظة
لصقه في zsh

يمكن القيام بذلك تلقائيًا ، حيث تقوم العديد من المواقع بتعديل النص عند نسخه إلى الحافظة. لذلك أستخدم فقط مخزن التحديد ، والذي لا يمكن الوصول إليه بواسطة المتصفحات. فقط في gtk3 وفي ff على وجه الخصوص ، ينكسران باستمرار لسبب ما ، إنه أمر مرهق.

لا تظهر المشكلة أيضًا عند تعيين xterm على allowWindowOps = false أو allowFontOps = false. على سبيل المثال ، التكوين allowFontOps = خطأ تم ضبطه على OpenBSD و Debian و RHEL ، لكن لا يتم فرضه افتراضيًا على Arch Linux.

بناءً على التغيير والبيان الصادر عن الباحث الذي حدد المشكلة ، الثغرة الأمنية ثابتة في إصدار xterm 375 ، ولكن وفقًا لمصادر أخرى ، تستمر الثغرة الأمنية في الظهور في xterm 375 من Arch Linux.

هذا يعني أنه لاستغلال هذه الثغرة الأمنية ، يجب أن يكون المستخدم كذلك
باستخدام Zsh في وضع تحرير سطر vi (عادةً عبر محرر $ الذي يحتوي على "vi" في
انها). في حين أن هذا غامض إلى حد ما ، إلا أن هذا لم يُسمع به تمامًا.
التكوين.

في هذا التكوين ، شيء مثل:
printf "\ e] 50؛ i \ $ (touch / tmp / hack-like-its-1999) \ a \ e] 50؛؟ \ a"> cve-2022-45063
cat cve-2022-45063 # أو طريقة أخرى لإيصال هذا إلى الضحية

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

ومن الجدير بالذكر أن لا يُسمح بعمليات الخطوط في الإعدادات الافتراضية لـ xterm من بعض توزيعات Linux ، لذلك ليست كل التوزيعات عرضة لهذا الخطأ. للراغبين في متابعة نشر التصحيحات عن طريق التوزيعات ، يمكنهم القيام بذلك على هذه الصفحات: ديبيانRHELفيدوراSUSEأوبونتوقوس لينكساكبر برهانفرينت بي.

إذا كنت مهتم بمعرفة المزيد عنها، يمكنك التحقق من التفاصيل في الرابط التالي.


كن أول من يعلق

اترك تعليقك

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها ب *

*

*

  1. المسؤول عن البيانات: ميغيل أنخيل جاتون
  2. الغرض من البيانات: التحكم في الرسائل الاقتحامية ، وإدارة التعليقات.
  3. الشرعية: موافقتك
  4. توصيل البيانات: لن يتم إرسال البيانات إلى أطراف ثالثة إلا بموجب التزام قانوني.
  5. تخزين البيانات: قاعدة البيانات التي تستضيفها شركة Occentus Networks (الاتحاد الأوروبي)
  6. الحقوق: يمكنك في أي وقت تقييد معلوماتك واستعادتها وحذفها.