CVE-2021-32804
إنشاء/استبدال ملفات تعسفي بسبب عدم كفاية تنظيف المسار المطلق
- تم النشر
- 03/08/2021
- محدث
- 03/08/2024
- تخصيص CNA
- GitHub_M
- الأدلة المرصودة
- 05/08/2026
CVSS الأساسي
nvd · CVSS 3.1
CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:C/C:H/I:H/A:Nمتوسط · الثلاثين يومًا القادمة
- المئوية
- 96.6%
- تاريخ الموديل
- 21/09/2026
EPSS هو تقدير إحصائي، وليس يقينًا أو مقياسًا للتأثير. ادمجها مع CVSS وحالة KEV والتعرض وبيئتك.
ملخص
حزمة npm "tar" (المعروفة أيضًا باسم node-tar) قبل الإصدارات 6.1.1 و5.0.6 و4.4.14 و3.3.2 تحتوي على ثغرة إنشاء/استبدال ملفات تعسفية بسبب عدم كفاية تنظيف المسارات المطلقة. يهدف node-tar إلى منع استخراج مسارات الملفات المطلقة عن طريق تحويل المسارات المطلقة إلى مسارات نسبية عندما لا يتم تعيين علامة `preservePaths` إلى `true`. يتم تحقيق ذلك عن طريق إزالة جذر المسار المطلق من أي مسارات ملفات مطلقة موجودة في ملف tar. على سبيل المثال، سيتحول `/home/user/.bashrc` إلى `home/user/.bashrc`. كان هذا المنطق غير كافٍ عندما تحتوي مسارات الملفات على جذور مسارات متكررة مثل `////home/user/.bashrc`. كان `node-tar` يزيل جذر مسار واحد فقط من هذه المسارات. عند إعطاء مسار ملف مطلق مع جذور مسارات متكررة، فإن المسار الناتج (مثل `///home/user/.bashrc`) سيظل يُحل إلى مسار مطلق، مما يسمح بإنشاء واستبدال ملفات تعسفية. تمت معالجة هذه المشكلة في الإصدارات 3.2.2 و4.4.14 و5.0.6 و6.1.1. يمكن للمستخدمين تجاوز هذه الثغرة دون الترقية عن طريق إنشاء طريقة `onentry` مخصصة تنظف `entry.path` أو طريقة `filter` تزيل الإدخالات ذات المسارات المطلقة. راجع GitHub Advisory المشار إليه للحصول على التفاصيل. انتبه إلى CVE-2021-32803 الذي يصلح خطأً مشابهًا في الإصدارات الأحدث من tar.
المصادر
1بيئة إعادة إنتاج قائمة على Docker لـ CVE-2021-32804، وهي ثغرة من نوع اجتياز المسار في node-tar تؤثر على npm، مع نصوص استغلال خطوة بخطوة.
الاستخدام المسؤول
استخدم معلومات الثغرات الأمنية فقط على الأنظمة التي تمتلكها أو المرخص لها باختبارها. يرتبط Kitploit ببيانات تعريف البحث العامة ولا يخزن أكواد الاستغلال أو الحمولات الضارة.