PT-2026-54777
CVE-2026-50163
·
تاريخ النشر
2026-07-01
·
تاريخ التحديث
2026-10-27
الوصف من
CVSS 3.1
7.1
عاليةالمقاييسAV:N/AC:L/PR:N/UI:R/S:U/C:H/I:L/A:N
اسم البرنامج المعرض للخطر والإصدارات المتأثرة
إصدارات oras-go الأقدم من 2.6.2
الوصف
توجد مشكلة في اجتياز المسار في دالة المساعدة لاستخراج ملفات tar
ensureLinkPath() الموجودة في content/file/utils.go. تتحقق الدالة من أن هدف الرابط الثابت يتم تحليله داخل قاعدة الاستخراج، لكنها تُرجع سلسلة target الأصلية غير المحللة. عند استدعاء os.Link() بمسار نسبي، فإنها تحلل الهدف مقابل الدليل العامل الحالي للعملية (CWD) بدلاً من دليل الاستخراج المقصود.يمكن للمهاجم الذي يتحكم في سجل متوافق مع OCI إنشاء ملف tarball ضار يحتوي على إدخال
TypeLink واسم رابط نسبي Linkname (على سبيل المثال، victim.secret). إذا تم تمييز الطبقة بـ io.deis.oras.content.unpack: ”true“، فإن عملية الاستخراج تنشئ رابطًا ثابتًا داخل شجرة الاستخراج يشترك في inode مع ملف موجود في دليل العمل الحالي (CWD) للمستدعي. وهذا يسمح للمهاجم بقراءة الملفات الحساسة مثل .env و.git/config و.aws/credentials و~/.ssh/config إذا تم تشغيل العملية بواسطة مستخدم عادي، أو أي ملف على نظام ملفات المضيف إذا تم تشغيل العملية بصفة الجذر.بالإضافة إلى ذلك، ونظرًا لأن الرابط الثابت والملف الموجود في مجلد العمل الرئيسي يشتركان في نفس الرقم التعريفي (inode)، فإن أي تعديلات تُجرى على الملف داخل شجرة الملفات المستخرجة ستؤدي أيضًا إلى تعديل الملف الأصلي الموجود في مجلد العمل الرئيسي.
التوصيات
قم بتحديث oras-go إلى الإصدار 2.6.2.
كإجراء تخفيفي مؤقت، قم بتقييد استخدام التعليق التوضيحي
io.deis.oras.content.unpack على المصادر الموثوقة فقط. وجدت خطأً في الوصف؟ لديك ما تضيفه؟ لا تتردد في مراسلتنا 👾