ثغرة أمنية في Git لـ Cygwin تسمح لك بتنظيم تنفيذ التعليمات البرمجية

تم التعرف على ثغرة خطيرة في Git (CVE-2021-29468)، والتي تظهر فقط عند إنشاء بيئة Cygwin (مكتبة لمحاكاة Linux API الأساسية على Windows ومجموعة من برامج Linux القياسية لنظام التشغيل Windows). تسمح الثغرة الأمنية بتنفيذ تعليمات برمجية للمهاجم عند استرداد البيانات ("git checkout") من مستودع يتحكم فيه المهاجم. تم إصلاح المشكلة في حزمة git 2.31.1-2 لـ Cygwin. في مشروع Git الرئيسي، لم يتم حل المشكلة بعد (من غير المرجح أن يقوم شخص ما ببناء بوابة لـ Cygwin بيديه، بدلاً من استخدام حزمة جاهزة).

سبب الثغرة الأمنية هو معالجة Cygwin للبيئة كنظام يشبه Unix بدلاً من Windows، مما يؤدي إلى عدم وجود قيود على استخدام الحرف '\' في المسار، بينما في Cygwin، كما هو الحال في Windows، يمكن أن يكون هذا الحرف تستخدم لفصل الدلائل. ونتيجة لذلك، من خلال إنشاء مستودع معدل خصيصًا يحتوي على روابط وملفات رمزية ذات حرف مائل عكسي، من الممكن الكتابة فوق الملفات التعسفية عند تحميل هذا المستودع إلى Cygwin (تم إصلاح ثغرة أمنية مماثلة في Git لنظام التشغيل Windows في عام 2019). من خلال اكتساب القدرة على الكتابة فوق الملفات، يمكن للمهاجم تجاوز مكالمات الخطاف في git والتسبب في تنفيذ تعليمات برمجية عشوائية على النظام.

المصدر: opennet.ru

إضافة تعليق