یک آسیبپذیری امنیتی با شناسه CVE-2026-6103 در تابع phar_tar_number() شناسایی شده است. این نقص امنیتی به دلیل عدم بررسی سرریز (Overflow) در هنگام تجزیه و تحلیل فیلد اندازه Octal در هدرهای TAR رخ میدهد.
تحلیل فنی مشکل
در این تابع، فیلد اندازه Octal به یک مقدار uint32_t تبدیل میشود. با توجه به اینکه این فیلد دارای ۱۱ رقم Octal است و میتواند مقادیری تا 0x1FFFFFFFF را پشتیبانی کند، هر مقداری که فراتر از 0xFFFFFFFF باشد، به صورت خودکار دچار Wrap-around شده و مقدار اشتباهی را برمیگرداند.
پیامدهای امنیتی
- خطای پیمایش: پارسر (Parser) تعداد بلوکهای دادهای را به اشتباه محاسبه کرده و از آنها عبور میکند.
- تزریق محتوا: در نتیجه این خطا، محتوای فایل که توسط مهاجم کنترل شده است، به عنوان هدر بعدی TAR تفسیر میشود.
- تزریق ورودیهای جعلی: این وضعیت به مهاجم اجازه میدهد تا آرشیوهای دستکاری شدهای (Crafted Archives) ایجاد کند که در آنها ورودیهای جعلی تزریق شدهاند. در نهایت،
PharDataاین ورودیها را به عنوان فایلهای معتبر گزارش کرده و استخراج میکند.