افشای نقص موجود در مرورگر EDGE توسط محقق امنیتی شرکت گوگل

محققان امنیتی در Google Project Zero جزئیات مربوط به آسیب‌پذیری در مرورگر Edge را افشا کرده‌اند؛ زیرا مایکروسافت با توجه به سیاست افشاگری گوگل، در یک مهلت 90 روزه به آن پاسخ نداده است.

کد خبر: ۲۰۴۳۲۲

تاریخ: ۱۱ اسفند ۱۳۹۶ - ۰۲:۳۰

این نقص می‌تواند توسط مهاجمان مورد سوءاستفاده قرار گیرد تا از ACG (Arbitrary Code Guard) که در Update ویندوز 10 به همراه CIG (Code Integrity Guard) به Edge اضافه شدند، عبور کنند.
ACG و CIG ویژگی‌های امنیتی نسبتاً جدیدی هستند که مهاجمان را از بارگذاری و اجرای کد مخرب به حافظه‌ی یک رایانه از راه مرورگر Edge بازمی‌دارد.

شرکت مایکروسافت این دو ویژگی امنیتی جدید را در یک پست وبلاگ در سال گذشته این‌گونه توصیف کرد: «یک برنامه می‌تواند به‌طور مستقیم کدهای مخرب را از راه بارگذاری یک DLL / EXE مخرب از روی دیسک یا با تولید/تغییر کد پویا در حافظه، وارد حافظه کند. CIG از روش اول (بارگذاری یک DLL / EXE مخرب) با فعال‌کردن الزامات امضای DLL برای Microsoft Edge جلوگیری می‌کند. این کار تضمین می‌کند که فقط DLLهای امضا شده می‌توانند توسط یک فرایند بارگذاری شوند.

ایوان فراتریک، محقق Google Project Zero که این آسیب‌پذیری را کشف کرد، راهی برای دورزدن ویژگی ACG نشان داد. این کارشناس این مسئله را در 17 نوامبر به مایکروسافت گزارش داد و به این شرکت مهلت داد تا آن را رفع کند. این غول تکنولوژی در ابتدا برنامه‌ریزی کرد تا این آسیب‌پذیری را که به‌عنوان «شدت متوسط» طبقه‌بندی شده است، در به‌روزرسانی روز سه‌شنبه‌ی ماه فوریه وصله کند؛ اما اعلام کرد که اصلاحات لازم پیچیده‌تر از آن چیزی بود که پیش‌بینی شده بود و ارایه‌ی آن را به سیزدهم ماه مارس موکول کرد.

اگر یک فرایند آسیب‌پذیر باشد و بتواند پیش‌بینی کند که کدام فرآیندJIT (Just-In-Time) آدرس مجازی "VirtualAllocEx()" بعدی را فراخوانی خواهد کرد (یادآوری می‌شود که این کار نسبتاً قابل پیش‌بینی است)، آنگاه فرایند محتوا می‌تواند:
حافظه‌ی مشترک نگاشت‌شده را با استفاده از "UnmapViewOfFile()" از نگاشت خارج کند.
منطقه‌ی قابل‌نوشتنی در حافظه را در همان آدرسی که کارگزار JIT قصد نوشتن در آن را دارد، قرار دهد و یک بارگذاری قابل‌اجرا را در آنجا بنویسد.
هنگامی‌که فرایند JIT، " VirtualAllocEx()" را فراخوانی می‌کند، حتی اگر حافظه قبلاً اختصاص داده شده باشد، این فراخوانی موفق خواهد بود و حفاظت از حافظه به حالت "PAGE_EXECUTE_READ" تنظیم می‌شود.

این اولین باری نیست که فراتریک به‌طور عمومی یک اشکال در Edge را افشا کرده است. در ماه فوریه‌ی سال 2017، وی جزئیات فنی مربوط به آسیب‌پذیری نوع شدیدی را منتشر کرد که به‌عنوان "CVE-2017-0037" ردیابی شده بود و می‌توانست توسط مهاجمان برای حمله به اینترنت اکسپلورر و مرورگر Edge و تحت شرایط خاص برای اجرای کد دلخواه مورد سوءاستفاده قرار گیرد.