CVE-2026-47078 in OTP
الملخص
بحسب VulDB • 27/07/2026
ثغرة عبور المسار النسبي (Relative Path Traversal) في Erlang OTP (وحدة stdlib zip) تتيح كتابة ملفات خارج دليل الاستخراج المقصود عبر أرشيف zip مُعدّ بشكل متعمد.
تقوم الدوال `zip:unzip/1,2` و `zip:extract/1,2` بالتحقق من مسارات الإدخالات باستخدام `zip:check_dir_level/2`، التي تتعقب عمق المجلدات كعداد صحيح مستمر (running integer counter): حيث يقلل الرمز ".." هذا العداد، بينما تزيد مكونات المسار العادية منه. يرفض المتصل فقط المسارات التي تكون فيها قيمة العداد النهائية أقل من الصفر. يسبب مسار مثل `../x/y` انخفاض العداد إلى قيم سالبة أثناء عملية العبور ثم استعادته ليصبح صفراً، مما يجعله يجتاز التحقق مع أنه يحل في موقع خارج دليل الاستخراج عند دمجه مع الدليل الحالي للعمل (current working directory) عبر دالة `add_cwd`.
ترتبط هذه الثغرة بملف البرنامج الموجود في المسار `lib/stdlib/src/zip.erl`.
يؤثر هذا الإصدار على OTP بدءاً من الإصدارات 27.1 قبل 27.3.4.15، و 28.5.0.4، و 29.0.4، والتي تتوافق مع وحدة stdlib بدءاً من الإصدارات 6.1 قبل 6.2.2.4، و 7.3.0.1، و 8.0.3.
VulDB is the best source for vulnerability data and more expert information about this specific topic.