آخرین اخبار
همهٔ اخبار
روز صفر (0Day) گزارش بحرانیت ۶/۱۰

آسیب‌پذیری GhostMap در اندروید؛ نصب یک اپلیکیشن می‌تواند منجر به چرخه بوت (Boot Loop) دائمی شود

آسیب‌پذیری GhostMap در اندروید؛ نصب یک اپلیکیشن می‌تواند منجر به چرخه بوت (Boot Loop) دائمی شود

مهاجمان می‌توانند با استفاده از یک اپلیکیشن به‌ویژه طراحی‌شده که نیازی به هیچ‌گونه دسترسی (Permission) ندارد، دستگاه‌های اندرویدی را در یک چرخه بوت (Boot Loop) مداوم گرفتار کنند. این حمله که منجر به از کار افتادگی سرویس (Denial-of-Service یا DoS) می‌شود، از آسیب‌پذیری جدیدی به نام GhostMap بهره می‌برد.

این نقص امنیتی باعث می‌شود سیستم‌عامل اندروید، یک فایل را در یک ناحیه از حافظه که تخصیص نیافته (Unallocated Memory) نگاشت (Map) کند. در نتیجه، زمانی که فرآیند مربوطه سعی در خواندن از آن ناحیه دارد، دچار کرش (Crash) می‌شود.

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

جزئیات فنی و واکنش گوگل

طبق گزارش Bitdefender، آسیب‌پذیری GhostMap از تفاوت در نحوه تفسیر روش‌های فشرده‌سازی ZIP توسط دو کتابخانه (Library) مختلف در اندروید ناشی می‌شود. این تفاوت به یک فایل APK مخرب اجازه می‌دهد تا بررسی‌های مربوط به اندازه (Size Checks) را دور بزند و فراتر از محتوای واقعی فایل، در حافظه نگاشت شود. این امر منجر به بروز خطای SIGBUS (سیگنالی که توسط CPU برای توقف فرآیندهای دارای دسترسی نامعتبر به حافظه ارسال می‌شود) در هر فرآیندی می‌شود که با آن فایل درگیر باشد.

نکته نگران‌کننده این است که گوگل از ماه اوت از وجود GhostMap مطلع بوده، اما بدون انتشار وصله امنیتی (Patch)، این گزارش را با عنوان “غیرقابل بازتولید” (Not Reproducible) بسته است. با وجود تلاش‌های مجدد محققان، گوگل همچنان این موضوع را خارج از محدوده (Out of Scope) به‌روزرسانی‌های امنیتی قرار داده است.

روش‌های مقابله و محدودیت‌ها

توقف این چرخه کرش تنها از دو طریق امکان‌پذیر است:

  • بازنشانی کارخانه (Factory Reset): که منجر به پاک شدن تمام داده‌های محلی دستگاه می‌شود.
  • استفاده از ADB: حذف فایل مخرب از طریق رابط ADB، که البته نیازمند فعال بودن از پیش گزینه Debugging در دستگاه است.

محققان هشدار می‌دهند که این چرخه بوت حتی مانع از دسترسی کاربر به حالت ایمن (Safe Mode) نیز می‌شود؛ حالتی که معمولاً برای عیب‌یابی و بازیابی دستگاه استفاده می‌گردد. در حال حاضر، تنها راه مقابله در مرحله نصب اپلیکیشن است که ابزارهای امنیتی شخص ثالث ممکن است در شناسایی آن کمک کنند، اما قدرت مسدود کردن خودکار نصب را ندارند.