نقاط الضعف في Git التي تسمح لك بالكتابة فوق الملفات أو تنفيذ التعليمات البرمجية الخاصة بك

الإصدارات التصحيحية لنظام التحكم بالمصدر الموزع Git 2.40.1 و 2.39.3 و 2.38.5 و 2.37.7 و 2.36.6 و 2.35.8 و 2.34.8 و 2.33.8 و 2.32.7 و 2.31.8 و 2.30.9 تم نشره .XNUMX ، والذي أصلح خمس نقاط ضعف. يمكنك متابعة إصدار تحديثات الحزمة في التوزيعات على صفحات Debian و Ubuntu و RHEL و SUSE / openSUSE و Fedora و Arch و FreeBSD. كحل بديل للحماية من الثغرات الأمنية ، يوصى بتجنب تشغيل الأمر "git application --reject" عند العمل مع التصحيحات الخارجية غير المختبرة ، والتحقق من محتويات $ GIT_DIR / config قبل تشغيل "git subodule deinit"، "git config --rename-section "و" git config --remove-section "عند التعامل مع مستودعات غير موثوقة.

تسمح الثغرة الأمنية CVE-2023-29007 باستبدال الإعدادات في ملف التكوين $ GIT_DIR / config ، والذي يمكن استخدامه لتنفيذ التعليمات البرمجية في النظام عن طريق تحديد المسارات إلى الملفات القابلة للتنفيذ في توجيهات core.pager و core.editor و core.sshCommand. تنتج الثغرة الأمنية عن خطأ منطقي يمكن من خلاله التعامل مع قيم التكوين الطويلة جدًا كبداية لقسم جديد عند إعادة تسمية قسم من ملف التكوين أو حذفه. في الممارسة العملية ، يمكن تحقيق استبدال القيم الاستغلالية عن طريق تحديد عناوين URL طويلة جدًا للوحدات الفرعية المخزنة في ملف $ GIT_DIR / config أثناء التهيئة. يمكن تفسير عناوين URL هذه على أنها إعدادات جديدة عند محاولة إزالتها عبر "git submodule deinit".

تسمح الثغرة الأمنية CVE-2023-25652 بالكتابة فوق محتويات الملفات خارج شجرة العمل عندما تتم معالجة التصحيحات المصممة خصيصًا بواسطة الأمر "git application --reject". إذا حاولت تنفيذ تصحيح ضار باستخدام الأمر "git application" الذي يحاول الكتابة إلى ملف من خلال ارتباط رمزي ، فسيتم رفض العملية. في Git 2.39.1 ، تم توسيع حماية معالجة الارتباط الرمزي لحظر التصحيحات التي تنشئ روابط رمزية وتحاول الكتابة من خلالها. يتمثل جوهر الثغرة الأمنية قيد النظر في أن Git لم تأخذ في الاعتبار إمكانية قيام المستخدم بتنفيذ الأمر "git application -reject" لكتابة الأجزاء المرفوضة من التصحيح كملفات بامتداد “.rej” ، ويمكن للمهاجم اغتنم هذه الفرصة لكتابة المحتويات إلى دليل عشوائي ، بقدر ما تسمح به الأذونات الحالية.

بالإضافة إلى ذلك ، تم إصلاح ثلاث ثغرات أمنية تظهر فقط على نظام Windows الأساسي: CVE-2023-29012 (ابحث عن doskey.exe القابل للتنفيذ في دليل العمل بالمستودع عند تنفيذ الأمر "Git CMD" ، والذي يسمح لك بالتنظيم تنفيذ التعليمات البرمجية الخاصة بك على نظام المستخدم) ، CVE-2023 -25815 (تجاوز سعة المخزن المؤقت أثناء معالجة ملفات الترجمة المخصصة في gettext) و CVE-2023-29011 (إمكانية استبدال ملف connect.exe عند العمل من خلال SOCKS5).

المصدر: opennet.ru

إضافة تعليق