در نسخههای 1.6.6 و قدیمیتر نرمافزار WookTeam، یک آسیبپذیری از نوع Directory Traversal شناسایی شده است که امکان دسترسی غیرمجاز به فایلهای حساس سرور را فراهم میکند.
جزئیات فنی آسیبپذیری
این نقص امنیتی در نقطه انتهایی (Endpoint) مربوط به خروجی تسکهای پروژه یعنی /api/project/task/export رخ میدهد. زمانی که پارامتر data با یک JSON payload دستکاری شده ارسال شود، سیستم اجازه دانلود فایلهای دلخواه از سرور را میدهد.
- علت ریشه ای: مقدار فیلد
fileدر داخل JSON مستقیماً به تابعstorage_path($file)متصل میشود. - مشکل پیادهسازی: به دلیل عدم استفاده از Path Normalization یا بررسی مرزهای دایرکتوری (Directory Boundary Check)، مهاجم میتواند با استفاده از توالیهای
../از پوشهstorage/خارج شده و به سایر مسیرهای سیستم دسترسی یابد. - نتیجه: تابع
response()->download()هر فایلی را که توسط کاربر وبسرور قابل خواندن باشد، برای مهاجم استریم میکند.