یک آسیبپذیری (CVE-2021-27365) در کد زیرسیستم iSCSI هسته لینوکس شناسایی شده است که به کاربر محلی غیرمجاز اجازه میدهد تا کد را در سطح هسته اجرا کند و امتیازات ریشه را در سیستم به دست آورد. یک نمونه اولیه از اکسپلویت برای آزمایش در دسترس است. این آسیبپذیری در بهروزرسانیهای هسته لینوکس 5.11.4، 5.10.21، 5.4.103، 4.19.179، 4.14.224، 4.9.260 و 4.4.260 برطرف شد. بهروزرسانیهای بسته هسته در توزیعهای Debian، Ubuntu، SUSE/openSUSE، Arch Linux و Fedora در دسترس هستند. هنوز هیچ اصلاحی برای RHEL منتشر نشده است.
مشکل ناشی از یک خطا در تابع iscsi_host_get_param() از ماژول libiscsi است که در سال 2006 در طول توسعه زیرسیستم iSCSI معرفی شد. به دلیل عدم بررسی اندازه مناسب، برخی از ویژگی های رشته iSCSI، مانند نام میزبان یا نام کاربری، ممکن است از مقدار PAGE_SIZE (4 کیلوبایت) فراتر رود. این آسیبپذیری میتواند توسط یک کاربر غیرمجاز که پیامهای Netlink ارسال میکند که ویژگیهای iSCSI را روی مقادیر بیشتر از PAGE_SIZE تنظیم میکند، مورد سوء استفاده قرار گیرد. هنگامی که این ویژگی ها از طریق sysfs یا seqfs خوانده می شوند، کدی فراخوانی می شود که ویژگی ها را به تابع sprintf ارسال می کند تا در بافری که اندازه آن PAGE_SIZE است کپی شود.
بهره برداری از آسیب پذیری در توزیع ها به پشتیبانی از بارگیری خودکار ماژول هسته scsi_transport_iscsi هنگام تلاش برای ایجاد یک سوکت NETLINK_ISCSI بستگی دارد. در توزیع هایی که این ماژول به طور خودکار بارگذاری می شود، بدون توجه به استفاده از عملکرد iSCSI، حمله می تواند انجام شود. در عین حال، برای استفاده موفقیتآمیز از اکسپلویت، ثبت حداقل یک انتقال iSCSI نیز لازم است. به نوبه خود، برای ثبت یک حمل و نقل، می توانید از ماژول هسته ib_iser استفاده کنید، که وقتی یک کاربر غیرمجاز سعی می کند یک سوکت NETLINK_RDMA ایجاد کند، به طور خودکار بارگذاری می شود.
بارگذاری خودکار ماژول های لازم برای برنامه اکسپلویت در CentOS 8، RHEL 8 و Fedora هنگام نصب بسته rdma-core بر روی سیستم پشتیبانی می شود، که برای برخی از بسته های محبوب وابستگی دارد و به طور پیش فرض در تنظیمات برای ایستگاه های کاری، سیستم های سرور با نصب شده است. مجازی سازی رابط کاربری گرافیکی و محیط میزبان با این حال، rdma-core هنگام استفاده از مجموعه سروری که فقط در حالت کنسول کار می کند و هنگام نصب یک تصویر نصب حداقلی نصب نمی شود. به عنوان مثال، بسته در توزیع پایه Fedora 31 Workstation گنجانده شده است، اما در Fedora 31 Server گنجانده نشده است. دبیان و اوبونتو کمتر در معرض این مشکل هستند زیرا بسته rdma-core ماژول های هسته مورد نیاز برای حمله را تنها در صورت وجود سخت افزار RDMA بارگذاری می کند.
به عنوان یک راه حل امنیتی، می توانید بارگیری خودکار ماژول libiscsi را غیرفعال کنید: echo "install libiscsi /bin/true" >> /etc/modprobe.d/disable-libiscsi.conf
علاوه بر این، دو آسیبپذیری کمتر خطرناک که میتواند منجر به نشت دادهها از هسته شود در زیرسیستم iSCSI رفع شده است: CVE-2021-27363 (نشت اطلاعات توصیفگر انتقال iSCSI از طریق sysfs) و CVE-2021-27364 (بافر خارج از محدوده). خواندن) . از این آسیبپذیریها میتوان برای برقراری ارتباط از طریق یک سوکت شبکه با زیرسیستم iSCSI بدون امتیازات لازم استفاده کرد. به عنوان مثال، یک کاربر غیرمجاز میتواند به iSCSI متصل شود و دستور پایان جلسه را صادر کند تا جلسه را خاتمه دهد.
منبع: opennet.ru