یک آسیبپذیری امنیتی در هسته لینوکس (Linux Kernel) شناسایی و برطرف شده است که مربوط به نحوه مدیریت فریمها در بخش ppp_async است.
جزئیات فنی نقص امنیتی
این مشکل در تابع ppp_receive_nonmp_frame() رخ میدهد. در این مسیر، سیستم پیش از اجرای فیلترهای BPF (Pass/Active)، یک تگ جهتنما (Direction Tag) دو بایتی را به ابتدای بسته اضافه میکند. با این حال، در مسیر دریافت دادهها، هیچ تضمینی برای وجود فضای کافی (Headroom) در ابتدای بسته وجود ندارد.
تحلیل ریشه مشکل
در مسیر پردازش خطای فریم در تابع process_input_packet() مربوط به ppp_async، زمانی که یک skb (Socket Buffer) مجدداً مورد استفاده قرار میگیرد، فضای Headroom آن به صفر بازنشانی میشود، در حالی که سیستم ادعا میکند این فضا را بازیابی کرده است. این تناقض میتواند منجر به رفتارهای پیشبینی نشده یا کرش سیستم شود.
راهکار اصلاحی
در بهروزرسانی جدید، به جای تلاش برای بازنشانی Headroom در شرایط بروز خطا، فریمهای دارای خطا به طور کامل حذف (Drop) میشوند تا از دسترسیهای غیرمجاز به حافظه یا ناپایداری هسته جلوگیری شود.