یک آسیبپذیری تازه کشفشده در هسته لینوکس با نام CIFSwitch میتواند به مهاجمان محلی اجازه دهد با سوءاستفاده از مکانیزم احراز هویت پروتکل CIFS، سطح دسترسی خود را تا سطح روت (Root) ارتقا دهند و کنترل کامل سیستم را در اختیار بگیرند.
یک آسیبپذیری تازه کشفشده در هسته لینوکس با نام CIFSwitch میتواند به مهاجمان محلی اجازه دهد با سوءاستفاده از مکانیزم احراز هویت پروتکل CIFS، سطح دسترسی خود را تا سطح روت (Root) ارتقا دهند و کنترل کامل سیستم را در اختیار بگیرند.
به گزارش افتانا، این نقص امنیتی چندین توزیع لینوکس را تحت تأثیر قرار میدهد؛ بهویژه سیستمهایی که از نسخههای آسیبپذیر هسته لینوکس و بسته cifs-utils استفاده میکنند. هرچند نسخههای 6.14 و جدیدتر بیشترین تأثیر را دارند، برخی نسخههای قدیمیتر نیز در معرض این مشکل قرار گرفتهاند.
CIFS یا Common Internet File System پروتکلی است که برای دسترسی به فایلها، پوشهها و منابع اشتراکی در شبکههای محلی مورد استفاده قرار میگیرد. در لینوکس، این پروتکل امکان اتصال به پوشههای اشتراکی و خواندن یا نوشتن دادهها روی سیستمهای راه دور را فراهم میکند.
بر اساس تحقیقات عاصم ولادی اوغلو مانیزادا (Asim Viladi Oglu Manizada)، مهندس امنیت شرکت اسپیسایکس که این آسیبپذیری را کشف کرده است، مشکل از آنجا ناشی میشود که زیرسیستم CIFS در هسته لینوکس منشأ درخواستهای خاصی موسوم به cifs.spnego را بهدرستی اعتبارسنجی نمیکند.
در حالت عادی، هنگام استفاده از احراز هویت Kerberos برای دسترسی به اشتراکهای شبکه، هسته لینوکس از یک ابزار کمکی در فضای کاربر برای انجام فرایند احراز هویت استفاده میکند. اما به دلیل این ضعف، یک کاربر عادی و بدون دسترسی ویژه میتواند درخواستهای جعلی ایجاد کند و سیستم را وادار به اجرای روندی کند که معمولاً فقط برای عملیات معتبر در نظر گرفته شده است.
این درخواستهای cifs.spnego برای دریافت اطلاعات احراز هویت موردنیاز کلاینت CIFS/SMB استفاده میشوند. مشکل زمانی رخ میدهد که ابزار سیستمی cifs.upcall که با سطح دسترسی روت اجرا میشود، برخی دادههای قابل کنترل توسط مهاجم را معتبر فرض میکند؛ دادههایی که در شرایط عادی باید تنها توسط هسته تولید شده باشند.
مهاجم میتواند با دستکاری این مقادیر و سوءاستفاده از فرآیند تغییر فضای نام (Namespace Switching)، پیش از کاهش سطح دسترسی برنامه، یک ماژول مخرب را بارگذاری کند. نتیجه این فرایند، اجرای کد دلخواه با دسترسی روت و درنهایت تصاحب کامل سیستم خواهد بود.
ریشه این آسیبپذیری به حدود ۱۹ سال پیش و سال ۲۰۰۷ بازمیگردد. با این حال، بهرهبرداری از آن در همه سیستمها امکانپذیر نیست و به عوامل مختلفی از جمله نسخه هسته، نسخه cifs-utils، فعال بودن User Namespaceها و همچنین تنظیمات امنیتی SELinux یا AppArmor بستگی دارد.
بررسیها نشان میدهد نسخههای پیشفرض برخی توزیعها از جمله Linux Mint 21.3 و 22.3، CentOS Stream 9، Rocky Linux 9، AlmaLinux 9، نسخههای مختلف Kali Linux از 2021.4 تا 2026.1 و همچنین SLES 15 SP7 در برابر این حمله آسیبپذیر هستند.
علاوه بر این، برخی نسخههای اوبونتو، دبیان، Pop!_OS، openSUSE، Oracle Linux و Amazon Linux نیز در صورتی که بسته cifs-utils روی آنها نصب شده باشد، ممکن است در معرض خطر قرار داشته باشند.
در مقابل، توزیعهایی مانند Ubuntu 26.04، Fedora 40 تا 44، CentOS Stream 10، Rocky Linux 10، SLES 16، AlmaLinux 10 و openSUSE Leap 16 بهطور پیشفرض از طریق سیاستهای امنیتی SELinux یا AppArmor در برابر این حمله محافظت میشوند و بهرهبرداری از آسیبپذیری در آنها امکانپذیر نیست.
همچنین Amazon Linux 2 و نسخههای قدیمیتر Kali Linux شامل 2019.4 و 2020.4 اساساً تحت تأثیر این نقص قرار نمیگیرند، زیرا نسخههای cifs-utils مورد استفاده در آنها قابلیت مرتبط با تغییر فضای نام را ندارند.
توسعهدهندگان لینوکس برای رفع این مشکل، وصلهای را منتشر کردهاند که منشأ درخواستهای cifs.spnego را اعتبارسنجی میکند و مانع سوءاستفاده از این ضعف میشود. با این حال، زمان انتشار این اصلاحیه در توزیعهای مختلف متفاوت است و کاربران باید وضعیت بهروزرسانیهای امنیتی توزیع خود را بررسی کنند.
کارشناس کشفکننده این آسیبپذیری به مدیران سیستم توصیه کرده است در صورت عدم نیاز، ماژول CIFS را غیرفعال یا مسدود کنند، بسته cifs-utils را حذف کنند و همچنین قابلیت User Namespace برای کاربران عادی را غیرفعال سازند. او همچنین یک نمونه کد اثبات مفهوم (PoC) منتشر کرده است تا سازمانها بتوانند اثربخشی وصلهها و اقدامات حفاظتی خود را ارزیابی کنند.
آسیبپذیری CIFSwitch تازهترین مورد از مجموعه نقصهای افزایش سطح دسترسی در لینوکس محسوب میشود که طی ماههای اخیر افشا شدهاند؛ فهرستی که شامل آسیبپذیریهایی با نامهای Copy Fail، Dirty Frag، Fragnesia، DirtyDecrypt و PinTheft نیز میشود و بار دیگر اهمیت بهروزرسانی مداوم سیستمهای لینوکسی را یادآوری میکند.