آسیب‌پذیری در OverlayFS که امکان افزایش امتیاز را فراهم می‌کند

در هسته لینوکس، یک آسیب‌پذیری در پیاده‌سازی فایل سیستم OverlayFS (CVE-2023-0386) شناسایی شده است که می‌تواند برای دسترسی ریشه در سیستم‌هایی که زیرسیستم FUSE را نصب کرده‌اند استفاده شود و امکان نصب پارتیشن‌های OverlayFS توسط یک کاربر غیرمجاز (شروع با هسته لینوکس 5.11 با گنجاندن فضای نام کاربری غیرمجاز). مشکل در شاخه هسته 6.2 برطرف شد. انتشار به‌روزرسانی‌های بسته در توزیع‌ها را می‌توان در صفحات: Debian، Ubuntu، Gentoo، RHEL، SUSE، Fedora، Arch دنبال کرد.

این حمله با کپی کردن فایل هایی با پرچم های setgid/setuid از یک پارتیشن نصب شده در حالت nosuid به یک پارتیشن OverlayFS انجام می شود که دارای یک لایه مرتبط با پارتیشن است که امکان اجرای فایل های suid را می دهد. این آسیب‌پذیری نزدیک به مشکل CVE-2021-3847 است که در سال 2021 شناسایی شد، اما نیازمندی‌های بهره‌برداری پایین‌تری دارد - مشکل قدیمی نیاز به دستکاری xattrs داشت، که هنگام استفاده از فضای نام کاربری محدود است، و مشکل جدید از بیت‌های setgid/setuid استفاده می‌کند که عبارتند از به طور خاص در فضای نام کاربری مدیریت نمی شود.

الگوریتم حمله:

  • با استفاده از زیرسیستم FUSE، یک فایل سیستم نصب می شود که در آن یک فایل اجرایی متعلق به کاربر root با پرچم های setuid/setgid وجود دارد که برای نوشتن برای همه کاربران قابل دسترسی است. هنگام نصب، FUSE حالت را روی "nosuid" تنظیم می کند.
  • فضای نام کاربر/mount به اشتراک گذاشته نمی شود.
  • OverlayFS نصب شده است و FS را که قبلاً در FUSE ایجاد شده بود به عنوان لایه پایین و لایه بالایی بر اساس دایرکتوری قابل نوشتن مشخص می کند. دایرکتوری لایه بالایی باید در سیستم فایلی قرار داشته باشد که هنگام نصب از پرچم "nosuid" استفاده نمی کند.
  • برای یک فایل suid در پارتیشن FUSE، ابزار لمسی زمان اصلاح را تغییر می‌دهد که منجر به کپی آن در لایه بالایی OverlayFS می‌شود.
  • هنگام کپی کردن، هسته پرچم‌های setgid/setuid را پاک نمی‌کند، که منجر به نمایش فایل در پارتیشنی می‌شود که امکان پردازش setgid/setuid را فراهم می‌کند.
  • برای به دست آوردن حقوق ریشه، فقط فایل را با پرچم های setgid/setuid از دایرکتوری متصل به لایه بالایی OverlayFS اجرا کنید.

علاوه بر این، می‌توانیم به افشای اطلاعات توسط محققان تیم Google Project Zero در مورد سه آسیب‌پذیری اشاره کنیم که در شاخه اصلی هسته لینوکس 5.15 برطرف شده‌اند، اما به بسته‌های دارای هسته از RHEL 8.x/9 منتقل نشده‌اند. x و CentOS Stream 9.

  • CVE-2023-1252 – دسترسی به یک ناحیه حافظه از قبل آزاد شده در ساختار ovl_aio_req هنگام انجام چندین عملیات به طور همزمان در OverlayFS که در بالای سیستم فایل Ext4 مستقر شده است. به طور بالقوه، آسیب پذیری به شما امکان می دهد امتیازات خود را در سیستم افزایش دهید.
  • CVE-2023-0590 - دسترسی به حافظه آزاد شده در تابع ()qdisc_graft. فرض بر این است که عملیات به خاتمه غیرعادی محدود می شود.
  • CVE-2023-1249 به دلیل تماس از دست رفته mmap_lock در file_files_note، دسترسی به حافظه از قبل آزاد شده در کد نوشتن coredump رخ می دهد. فرض بر این است که عملیات به خاتمه غیرعادی محدود می شود.

منبع: opennet.ru

اضافه کردن نظر