Reptar: آسیب‌پذیری در پردازنده‌های اینتل

14 آذر 1402 Reptar: آسیب‌پذیری در پردازنده‌های اینتل

روابط عمومی شرکت ایدکو (توزیع‌کننده‌ی محصولات کسپرسکی در ایران)؛ در تاریخ 14 نوامبر، گوگل بولتنی منتشر کرد که در آن آسیب‌پذیری‌ای در چندین پردازنده‌ی اینتل (شروع از نسل Ice Lake منتشرشده در سال 2019) گزارش داده شده بود. این آسیب‌پذیری بالقوه می‌تواند به انکار سرویس، افزایش مزیت یا بسته شدن اطلاعات حساس منجر شود. تا زمان نگارش این مقاله به‌روزرسانی‌های میکروکد که مسئول رسیدگی به این مسائل بودند برای نسل 12 و 13 پردازنده‌های اینتل (Alder Lake و Raptor Lake به ترتیب) منتشر شده‌اند. پچ برای پردازنده‌های نسل 10 و 11 Ice Lake) و Tiger Lake) در حال انجام است. فهرست کامل پردازنده‌های درگیر در وبسایت اینتل در قالب صفحه گسترده مبسوط وجود دارد. طبق گفته‌ی نمایندگان اینتل، مهندسین این شرکت از رفتار غیرعادی پردازنده‌ها خبر داشتند اما این مسئله را غیرحیاتی خوانده و از این رو برنامه رفع آن به نیمه اول 2024 موکول شد. با این وجود، وقتی محققین گوگل به طور مستقل اقدام به کشف این مشکل کردند شرایط تغییر کرد. در حقیقت، همه جزئیات در مورد این آسیب‌پذیری از متخصصین گوگل خصوصاً از همین مقاله که تاویس اورماندی ارائه داده بدست آمده است.

آزمون فاز[1] پردازنده

تاویس اورماندی چندین آسیب‌پذیری اصلی را در برنامه‌ها و دستگاه‌های مختلف کشف کرده است. اخیراً نیز آسیب‌پذیری Zenbleed را در پردازنده‌های AMD پیدا کرده است. آنجا بود که تاویس در واقع در مورد انجام فازینگ یا آزمون فاز برای پیدا کردن آسیب‌پذیری‌های سخت‌افزاری صحبت کرد. فازینگ متود تستی است شامل فید کردن اطلاعات رندوم در ورودی سیستم اطلاعاتی مورد آزمایش. معمولاً فازینگ برای خودکارسازی سرچ آسیب‌پذیری‌های نرم‌افزاری استفاده می‌شود: برای تعامل با برنامه و نظارت وضعیت آن، ابزار فازینگ ویژه‌ای ساخته شد و پس از آن ده‌ها یا صدها تست برای شناسایی رفتار ناهنجار در کد تست‌شده انجام شد. وقتی حرف از پردازنده‌های تست می‌شود اوضاع پیچیده‌تر نیز می‌شود. باید برنامه‌های رندومی را تولید کرد که بدون شکستی از سمت خود اجرا شده و بشود آن‌ها را روی پردازنده اجرا کرد. چطور می‌شود در چنین شرایطی فرق بین رفتار نرمال پردازنده را از رفتار غیرنرمال تشخیص داد؟ از اینها گذشته هر خطایی در طول اجرای نرم‌افزار به خرابی منجر نمی‌شود. اورماندی تکنیکی ارائه داده است که همان کد رندوم هم‌زمان روی چندین پردازنده اجرا می‌شود. به لحاظ تئوری، خروجی برنامه همسان باید همسان باشد اما اینطور نیست! و این نشان می‌دهد مشکلی وجود دارد. همین رویکرد بود که نشان داد در پردازنده‌های اینتل، آسیب‌پذیری وجود دارد.

کدی بیهوده اما خطرناک

برای درک اینکه چطور آسیب‌پذیری  Reptar کار می‌کند باید برویم سروقت پایین‌ترین درجه برنامه‌‌ریزی- کد ماشین که پردازنده‌ها مستقیم آن را اجرا می‌کنند. زبان اسمبلی برای بازنمایی ساده‌ترِ دستورالعمل‌های این چنین پایه استفاده می‌شود. یک قطعه کد زبان اسمبلی چیزی شبیه به این است:

آخرین خط دارای دستورالعمل movsb است که به پردازنده می‌گوید داده ها را از یک ناحیه حافظه به منطقه دیگر منتقل کند. قبل از آن اصلاح کننده rep وجود دارد که نشان می‌دهد دستور movsb باید چندین بار پشت سر هم اجرا شود. چنین پیشوندهایی برای همه دستورالعمل ها مرتبط نیستند. پردازنده های اینتل می‌دانند که چگونه از پیشوندهای بی معنی عبور کنند. Tavis Ormandy مثالی را ارائه می‌دهد:

بیایید پیشوند دیگری به نام rex.rxb اضافه کنیم. این در کنار معماری x86-64 برای کنترل هشت رجیستر پردازنده اضافی معرفی شد. اگرچه دقیقاً چه کاری انجام می‌دهد چندان مهم نیست - تنها چیزی که باید بدانیم این است که این پیشوند هنگام استفاده با دستور movsb معنی ندارد:

 

در واقع، این پیشوند رفتار پردازنده‌های اینتل را تغییر می‌دهد (از Ice Lake شروع می‌شود)، اگرچه اینطور نیست. در این نسل از پردازنده ها، فناوری به نام "حرکت سریع کوتاه تکراری" اضافه شد. این برای تسریع عملیات مربوط به حرکت داده در RAM طراحی شده است. از جمله اینکه این فناوری می تواند اجرای دستور rep movsb را بهینه کند. همراه با ویژگی «Fast Short Repeat Move»، نقصی در منطق پردازنده وجود داشت که ابتدا توسط مهندسین اینتل و بعداً توسط کارشناسان گوگل کشف شد.

تهدید فوری

اجرای این دستورالعمل که رفتار طبیعی پردازنده را مختل می‌کند، به چه چیزی می‌تواند منجر شود؟ به گفته Ormandy، نتایج غیر قابل پیش‌بینی است. محققین اجرای کد رندوم را مشاهده کردند که بخش‌هایی از برنامه نادیده گرفته شد و شکست‌های مختلف از سمت پردازنده همگی دست به دست دادند تا شکستی عظیم صورت گیرد. در مورد دومی (شکست‌های مختلف از سمت پردازنده) باید آسیب‌پذیری روی جفتی از هسته‌های پردازنده همزمان اکسپلویت شود. برای چک کردن این آسیب‌پذیری در سیستم‌های خود، تیمی از محققین گوگل برنامه تست تهیه کردند. رفتار غیرقابل پیش‌بینی خود به اندازه کافی بد است. مهم‌ترین فرق بین این باگ پردازنده و همه باگ‌های دیگر در این است که این مستقیم ارائه‌دهندگان خدمات میزبانی سرور خصوصی مجازی یا ارائه‌دهندگان راهکار کلود را به طور کلی تهدید می‌کند. این صنعت بر پایه توانایی در اشتراک‌گذاری سرور واحد نیرومند از میان صدها کلاینت دیگر (هر یک سیستم عامل مجازی خود را مدیریت می‌کنند) بنا شده و مهم است که تحت هیچ شرایطی کلاینت نباید داده‌های کلاینت دیگر یا داده‌های میزبان را ببیند. حال توصر کنید کلاینتی بتواند برنامه‌ای را در سیستم عامل مجازی خود که باعث خرابی میزبان می‌شود اجرا کند. دست کم این می‌تواند روی ارائه‌دهنده حمله DoS را فعال کند. در واقع، اورماندی هیچ سناریوی اکسپلویت دیگری را ارائه نکرد و این حقیقت را بازگو نمود که سخت می‌شود رفتار پردازنده‌ای را در حالت بلک باکس یا جعبه سیاه پیش‌بینی کرد. هرچند از حیث نظری این امکان وجود دارد که مهاجم بتواند به جای تکیه بر شکست‌های رندوم، کد مخرب خاصی را اجرا کند. نمایندگان اینتل خود اعتراف کردند که اجرای کد و بسته شدن اطلاعات امکان‌پذیر است. از این رو به شدت مهم است که آپدیت‌های میکروکد آماده‌شده توسط اینتل، نصب شود (دست کم برای ارائه‌دهندگان سرویس میزبانی مجازی).

 

[1]Fuzzing: آزمون فاز یک فرایند آزمون نرم‌افزار است که شامل فراهم کردن داده‌های ناصحیح، غیرمنتظره، اعداد تصادفی به‌عنوان ورودی به یک نرم‌افزار رایانه‌ای است. برنامه معمولاً برای رخ‌دادهایی از جمله کرش، شکست Assertionهای داخلی یا برای یافتن نشت‌های حافظه احتمالی استفاده می‌شود. به طور معمول، فازرها جایی استفاده می‌شوند که برنامه ورودی ساختاریافته دریافت می‌کند.

 

 

منبع: کسپرسکی آنلاین (ایدکو)

کسپرسکی اسم یکی از بزرگترین شرکتهای امنیتی و سازنده آنتی ویروس است که برخی از کاربران اشتباهاً این شرکت و محصولات آنتی ویروس آن را با عناوینی نظیر کسپرسکای،کاسپرسکی، کسپراسکای، کسپراسکای، و یا کاسپراسکای نیز می‌شناسد. همچنین لازم به ذکر است مدیرعامل این شرکت نیز یوجین کسپرسکی نام دارد.

محصولات مرتبط

  • Kaspersky Internet Security for Android

    امنیت پیشرفته‌ای که همیشه همراه شماست بخش مهمی از زندگی اکثر ما اکنون روی گوشی‌ها و تبلت‌هاست- پس به امنیت موبایلی نیاز دارید که شما را همیشه امن نگه ...

    7,238,100 ریال
    خرید
  • Kaspersky Cloud Password Manager

    Kaspersky Cloud Password Manager ابزار مدیریت کلمه عبور ابری کسپرسکی (KCPM) ضمن ذخیره ایمن تمامی کلمات عبور مورد استفاده شما برای وبسایت‌ها، اپلیکیشن‌ها، و شبکه‌های اجتماعی آنها را در تمامی ...

    10,860,600 ریال
    خرید
  • Kaspersky Safe Kids

    اپلیکیشن همه‌کاره برای فرزندپروریِ دیجیتال و سلامت خانواده نرم افزار امنیت کودکان کسپرسکی، نظارت‌های والدین را آسان می‌کند. ردیابی مکان و عادات دستگاه، محدودسازی محتوا، متعادل‌سازی ...

    1,086,060 ریال10,860,600 ریال
    خرید
  • Kaspersky Security Cloud Personal

    تمام اپ‌های امنیتیِ ما در دستانتان. به کل خانواده‌ی اپ‌های ما برای دسکتاپ و موبایل دسترسی پیدا کنید. از آنتی‌ویروس گرفته تا ابزارهای حریم خصوصی و اجرایی، هر کدام را به میل ...

    72,443,100 ریال
    خرید
  • Kaspersky Standard

    سیستم امنیتی بهبودیافته به همراه تقویت‌کننده عمکرد دستگاه طرح امنیتی استاندارد ما، نه تنها سیستم امنیتی قدرتمندی را برای انواع ویروس‌ها، بدفزارها و باج‌افزارها ارائه می‌دهد ...

    10,246,500 ریال20,493,000 ریال
    خرید
  • Kaspersky Plus

    امنیت. کارایی. حریم خصوصی. همه در یک برنامه با کاربری آسان کسپرسکی پلاس با ارائه امنیت سایبری نسل بعد، شما در برابر ویروس‌ها، باج‌افزارها و بدافزارهای جدید محافظت کند - بدون ...

    14,693,550 ریال29,387,100 ریال
    خرید
  • Kaspersky Premium

    حفاظت کامل از دستگاه ها، حریم خصوصی و هویت شما با محصول Kaspersky Premium تمام نیازهای امنیتی خود و خانواده‌تان را پوشش دهید. حفاظت پیشرفته ...

    15,718,200 ریال31,436,400 ریال
    خرید
  • Kaspersky Small Office Security

    محافظت در حین کار Kaspersky Small Office Security به طور خاص برای سازمان‌هایی طراحی شده است که 5 تا 50 دستگاه کامپیوتر در خود جای داده‌اند. نصب آن بسیار آسان است؛ مدیریت آن ...

    65,201,550 ریال130,403,100 ریال
    خرید
  • Kaspersky Small Office Security

    امنیت ادارات کوچک

    208,649,100 ریال
    خرید
  • Kaspersky Small Office Security

    امنیت ادارات کوچک

    78,242,550 ریال156,485,100 ریال
    خرید
  • Kaspersky Small Office Security

    250,670,100 ریال
    خرید
  • Kaspersky Small Office Security

    91,283,550 ریال182,567,100 ریال
    خرید
  • Kaspersky Small Office Security

    291,966,600 ریال
    خرید
  • Kaspersky Small Office Security

    104,324,550 ریال208,649,100 ریال
    خرید
  • Kaspersky Small Office Security

    333,987,600 ریال
    خرید
  • Kaspersky Small Office Security

    117,365,550 ریال234,731,100 ریال
    خرید
  • Kaspersky Small Office Security

    375,284,100 ریال
    خرید
  • Kaspersky Small Office Security

    119,539,050 ریال239,078,100 ریال
    خرید
  • Kaspersky Small Office Security

    382,529,100 ریال
    خرید
  • Kaspersky Small Office Security

    168,442,800 ریال336,885,600 ریال
    خرید
  • Kaspersky Small Office Security

    539,021,100 ریال
    خرید
  • Kaspersky Small Office Security

    217,346,550 ریال434,693,100 ریال
    خرید
  • Kaspersky Small Office Security

    695,513,100 ریال
    خرید
  • Kaspersky Small Office Security

    262,627,800 ریال525,255,600 ریال
    خرید
  • Kaspersky Small Office Security

    840,413,100 ریال
    خرید
  • Kaspersky Small Office Security

    498,090,300 ریال996,180,600 ریال
    خرید
  • Kaspersky Small Office Security

    1,593,893,100 ریال
    خرید

نظر خودتان را ارسال کنید


کاربر گرامی چنانچه تمایل دارید، نقد یا نظر شما به نام خودتان در سایت ثبت شود، لطفاً وارد سایت شوید.
*نظر
کلیه حقوق مادی و معنوی این سایت محفوظ و متعلق به شرکت گسترش خدمات تجارت الکترونیک ایرانیان است و هر گونه کپی برداری از آن پیگرد قانونی دارد