Tavis Ormandy، محقق امنیتی گوگل، آسیبپذیری جدیدی (CVE-2023-23583) در پردازندههای اینتل با نام رمز Reptar شناسایی کرده است که عمدتاً تهدیدی برای سیستمهای ابری است که ماشینهای مجازی کاربران مختلف را اجرا میکنند. این آسیبپذیری به سیستم اجازه میدهد تا زمانی که عملیات خاصی بر روی سیستمهای مهمان غیرمجاز انجام میشود، از کار بیفتد یا از کار بیفتد. برای آزمایش سیستم های شما، ابزاری منتشر شده است که شرایطی را برای بروز آسیب پذیری ها ایجاد می کند.
از لحاظ تئوری، این آسیبپذیری میتواند برای افزایش امتیازات از حلقه سوم به حلقه حفاظتی صفر (CPL0) و فرار از محیطهای ایزوله استفاده شود، اما این سناریو به دلیل مشکلات اشکالزدایی در سطح ریزمعماری، هنوز در عمل تایید نشده است. بررسی داخلی در اینتل همچنین پتانسیل سوء استفاده از آسیب پذیری را برای افزایش امتیازات تحت شرایط خاص نشان داد.
به گفته این محقق، این آسیب پذیری در خانواده پردازنده های Intel Ice Lake، Rocket Lake، Tiger Lake، Raptor Lake، Alder Lake و Sapphire Rapids وجود دارد. گزارش اینتل اشاره میکند که این مشکل از نسل دهم (Ice Lake) پردازندههای Intel Core و نسل سوم پردازندههای Xeon Scalable و همچنین در پردازندههای Xeon E/D/W (Ice Lake، Skylake، Haswell، Broadwell شروع میشود. ، Skylake، Sapphire Rapids، Emerald Rapids، Cascade Lake، Cooper Lake، Comet Lake، Rocket Lake) و Atom (دریاچه آپولو، دریاچه جاسپر، ساحل آریزونا، دریاچه آلدر، پارکر ریج، Snow Ridge، Elkhart Lake و Denverton). آسیب پذیری مورد بحث در به روز رسانی میکروکد دیروز 10 رفع شد.
آسیبپذیری ناشی از این واقعیت است که تحت شرایط ریزمعماری خاص، اجرای دستورالعمل "REP MOVSB" با پیشوند "REX" بیش از حد کدگذاری میشود که منجر به رفتار نامشخص میشود. این مشکل در هنگام آزمایش پیشوندهای اضافی کشف شد که در تئوری باید نادیده گرفته شوند، اما در عمل منجر به اثرات عجیبی مانند نادیده گرفتن شاخه های بدون قید و شرط و شکستن ذخیره اشاره گر در دستورات xsave و فراخوانی شد. تجزیه و تحلیل بیشتر نشان داد که افزودن یک پیشوند اضافی به دستورالعمل "REP MOVSB" باعث خراب شدن محتوای بافر ROB (ReOrder Buffer) مورد استفاده برای سفارش دستورات می شود.
اعتقاد بر این است که خطا ناشی از محاسبه نادرست اندازه دستورالعمل "MOVSB" است که منجر به نقض آدرس دهی دستورالعمل های نوشته شده به بافر ROB بعد از MOVSB با پیشوند بیش از حد و افست می شود. از نشانگر دستورالعمل چنین عدم هماهنگی می تواند به اختلال در محاسبات میانی با بازیابی بعدی حالت انتگرال محدود شود. اما اگر همزمان چندین هسته یا رشته SMT را خراب کنید، می توانید به وضعیت ریزمعماری آنقدر آسیب بزنید که خراب شود.
منبع: opennet.ru