پژوهشگران امنیت سایبری چندین روش جدید برای حمله به پردازنده های اینتل کشف کرده اند که می توانند به دست آوردن داده های حساس و کلید های رمزگذاری در سیستم قربانی را ممکن سازند. این روش ها با نام Downfall شناخته می شوند و بر پایه یک آسیب پذیری قبلی به نام Foreshadow ساخته شده اند. در این مطلب به بررسی آسیب پذیری مذکور میپردازیم.
بنابر گزارش Bleeping Computer، پس از آنکه هفته گذشته مشخصات یک آسیب پذیری در بسیاری از مدلهای پردازنده AMD کشف شد که میتواند بستری برای نفوذ و دزدیدن اطلاعات کلیدهای رمزنگاری شده کاربران باشد، این هفته شاهد کشف آسیبپذیری از این نوع در پردازندههای اینتل هستیم.
این آسیب پذیری که گزارش اولیه مربوط به آن، روز گذشته توسط گوگل منتشر شده «Downfall» نامگذاری شده است. Downfall به دسته جدیدی از حملات نفوذ و دزدی اطلاعات گفته میشود که از آسیب پذیری موجود در اکتنشن محافظ اجرای برنامههای یا همان SGX برای دسترسی به دادههای جاری کاربر استفاده میکنند.
جالب است بدانید که CVE-2022-40982 برای اولین بار توسط دانیل مقیمی، دانشمند ایرانیالاصل تیم تحقیقاتی ارشد امنیت در گوگل کشف شده و یافتههای آن در جلسه امروز در رویداد Black Hat USA 2023 مورد بحث و بررسی قرار خواهد داد. این آسیب پذیری به کاربر مهاجم اجازه می دهد تا به دادههای کاربر دیگری در شرایطی که همزمان به سیستم او متصل شده، دسترسی داشته و آنها را سرقت کند. Downfall همچنین میتواند برای به دست آوردن رمزهای عبور، کلیدهای رمزگذاری و سایر اطلاعات با ارزش از سوی مهاجم مورد استفاده قرار گیرد.
ذکر این توضیح پیش از پرداختن به اصل موضوع لازم است که بنابر دستهبندی حملات امنیت سایبری، Foreshadow یک حمله نوع side-channel است که با استفاده از یک قابلیت نوآورانه در پردازنده های اینتل به نام Software Guard Extensions (SGX) روی سیستم قربانی اجرا میشود. فناوری جدیدی است که به نرم افزارها اجازه میدهد تا قسمتهای خود را در یک فضای حافظه منحصر به فرد و محافظت شده به نام enclave اجرا کنند. enclaveها برای حفاظت از داده های حساس و کلیدهای رمزگذاری طراحی شدهاند و حتی توسط سیستم عامل یا خود پردازنده نیز قابل دسترس نیستند.
در این شرایط Foreshadow با استفاده از یک خطای طراحی در SGX میتواند به enclave ها دسترسی پیدا نموده و داده های آنها را بخواند. Foreshadow با استفاده از چگونگی عملکرد cache پردازنده، enclave ها را فریب داده و باعث میشود که دادههای آن ها در cache قابل دسترس شوند. سپس Foreshadowبا تحلیل الگوهای cache، محتوای enclave ها را بازسازی میکند.
انواع روش حمله با آسیب پذیری Downfall به سیستم قربانی
اما در مورد آسیبپذیری Downfall، باید آن را به نوعی یک نسخه جدید و پیشرفتهتر از Foreshadow بدانیم که با استفاده از روشهای مختلف، به enclaveهای SGX حمله می کنند. بعضی از این روش ها عبارتند از:
- Downfall-Prime+Probe: در این روش داونفُل، با استفاده از چگونگی عملکرد Translation Lookaside Buffer (TLB)، که یک نوع cache برای ذخیرهسازی آدرسهای حافظه است، enclave ها را تحت فشار قرار داده و باعث می شود که داده های آن ها در cache قابل دسترس شوند. سپس با انجام یک عملیات به نام Prime+Probe، که یک تکنیک side-channel است، الگوهای cache را مشاهده نموده و محتوای enclave ها را بازسازی می کند.
- Downfall-Flush+Reload: در این روش، مهاجم با استفاده از یک دستور به نام clflush، که به برنامههای نرم افزاری اجازه میدهد تا دادههای cache را پاک کنند، enclaveها را مجبور میکند تا دادههای خود را از حافظه اصلی بخوانند. سپس با انجام یک عملیات به نام Flush+Reload، که آن هم یک تکنیک side-channel است، زمان لازم برای خواندن دادهها را اندازه گیری نموده و در ادامه محتوای enclaveها را بازسازی می کند.
- Downfall-Evict+Reload: در این روش نیز مهاجم با استفاده از یک دستور به نام clflushopt، که به برنامه های نرم افزاری اجازه میدهد تا دادههای cache را به صورت بهینه حذف کنند، enclave ها را مجبور میکند تا دادههای خود را از حافظه اصلی بخوانند. سپس با انجام یک عملیات به نام Evict+Reload، که مجدداً آن هم یک تکنیک side-channel است، زمان لازم برای خواندن دادهها را اندازه گیری نموده و محتوای enclave ها را بازسازی می کند.
پژوهشگران امنیتی نشان داده اند که Downfall میتواند به صورت موثر و سریع به enclaveهای SGX حمله نموده و اطلاعات حساس و کلیدهای رمزگذاری را برای حملات بعدی در دسترس قرار دهد.
پردازندههای آسیب پذیر در برابر Downfall
طبق اعلام گوگل، این آسیبپذیری که ناشی از ویژگی بهینهسازی حافظه در معماریهای تراشههای مدرن اینتل است، بر پردازندههای Core این شرکت، از نسل ششم سری Skylake تا تراشههای نسل یازدهم Tiger Lake تأثیر میگذارد. به عبارت دیگر، این آسیب پذیری در پردازندههای اینتل عرضه شده از سال 2015 تا 2020 وجود داشته و برخلاف Foreshadow، با آپدیت نرم افزاری قابل رفع نیست.
پژوهشگران پیشنهاد میکنند که برای جلوگیری از به خطر افتادن اطلاعات به واسطه نفوذ از طریق Downfall، قابلیت SGX را غیرفعال نموده یا از پردازنده های جدیدتر و بروز شده اینتل استفاده کنید.