آسیب‌پذیری برنامه‌های اندرویدی نسبت به حمله Man-in-the-Disk

پژوهشگران CheckPoint، نوع جدیدی از حملات سایبری در گوشی‌های هوشمند را کشف کردند که از حافظه خارجی آنها بهره می‌گیرد. این نوع حمله Man-in-the-Disk (MitD) یا مرد در دیسک نام گرفته است و که باعث تخریب برنامه‌ها و یا اجرای کد مخرب می‌شود.
در گوشی‌های اندرویدی دو نوع حافظه داخلی و خارجی وجود دارد. حافظه داخلی که با حافظه سیستم نیز شناخته می‌شود، بخشی از فضای ذخیرهسازی تعبیه شده در گوشی‌های اندرویدی است که سیستم‌عامل، برنامه‌های سیستمی، درایورها و داده‌های برنامه‌های نصب شده توسط کاربر را در خود ذخیره می‌کند. هر برنامه‌ای که نصب شود، فضایی از حافظه داخلی را به خود اختصاص می‌دهد که این فضا توسط محیط sandbox محافظت می‌شود، بدین معنی که قابلیت دسترسی توسط سایر برنامه‌ها به آن وجود ندارد.
بعضی از برنامه‌های توسعه داده شده بدلایل مختلفی از قبیل کم بودن فضای حافظه داخلی و عدم تمایل سازنده برنامه به نمایش استفاده از فضای زیاد، از فضای حافظه داخلی کمتر استفاده می‌کنند. در عوض، آنها از کاربر می‌خواهند که اجازه دسترسی به فضای حافظه خارجی را تایید کنند تا فایل‌های بخصوص برنامه‌ها در آنجا ذخیره شوند. هنگامی که فایل‌های برنامه در حافظه خارجی قرار داده شوند، حجم برنامه کمتر نمایش داده می‌شود و کاربر تمایل بیشتری به نصب آن دارد. فضای حافظه خارجی معمولا فضای باقیمانده از حافظه داخلی، کارت‌های SD و حافظه‌های USB متصل به گوشی است.
حملات مرد در دیسک به دو دلیل رخ می‌دهند: (۱) هر برنامه‌ای می‌تواند فایل‌های سایر برنامه‌ها در حافظه خارجی را دستکاری کند و (۲) تقریبا تمامی برنامه‌ها دسترسی به حافظه خارجی را از کاربر درخواست می‌کنند و کاربران نیز بدون توجه به خطرهای امنیتی، این دسترسی را تایید می‌کنند.
پژوهشگران CheckPoint هنگام آزمایش این روش حمله، توانستند یک برنامه مخرب را که به عنوان یک برنامه چراغ‌قوه نمایش داده می‌شود، ایجاد کنند که این برنامه اجازه دسترسی به فضای حافظه خارجی را درخواست می‌کند و از این دسترسی برای حمله استفاده می‌کند.
پژوهشگران اعلام کردند که دو حالت مختلف حمله قابل پیاده‌سازی است. در حالت اول با تغییر فایل‌های سایر برنامه‌ها و قرار دادن فایل‌های مخرب، باعث خرابی یا crash این برنامه‌ها می‌شود. زمانی که برنامه‌ای crash شود، امکان قرار دادن کد مخرب در داخل برنامه متوقف شده وجود دارد. اگر برنامه متوقف شده دسترسی‌های بیشتری داشته باشد، امکان دسترسی مهاجم به اطلاعات حساس وجود دارد.

 

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

هنگام انجام آزمایش‌ها، برنامه‌های محبوبی شناسایی شدند که نسبت به هر دو رویکرد حمله آسیب‌پذیر هستند. برخی از این برنامه‌ها بطور پیش‌فرض در بسیاری از دستگاه‌های اندرویدی نصب شده‌اند. برای مثال، Google Translate، Google Voice Typing، Yandex Translate و Yandex Search نسبت به نوع اول حمله و Xiaomi Browser نسبت به نوع دوم آسیب‌پذیر هستند.
به گفته تیم پژوهشی CheckPoint، وجود این آسیب‌پذیری بدلیل عدم رعایت دستورالعمل‌های امنیتی گوگل است. در این دستورالعمل‌ها موارد زیر ذکر شده‌اند:
•    ورودی‌هایی که از حافظه خارجی هستند باید اعتبارسنجی شوند،
•    فایل‌های اجرایی و کلاس‌ها نباید در حافظه خارجی ذخیره شوند،
•    فایل‌های موجود در حافظه خارجی باید قبل از بارگیری امضا و با رمزنگاری تایید شوند.تیم CheckPoint توصیه کرده است که امنیت اندروید باید به گونه‌ای تقویت شود که از حملات مرد در دیسک در سطح سیستم‌عامل جلوگیری شود. به توسعه‌دهندگان توصیه می‌شود تا دستورالعمل‌های امنیتی را جدی بگیرند.

منبع: