این حمله سایبری ترسناک اندروید از حافظه خارجی شما برای کنترل کل دستگاه شما استفاده می کند. در اینجا چیزی است که شما باید بدانید.
اگر کاربر اندروید هستید، باید در مورد حمله Man-in-the-Disk و خطراتی که به همراه دارد بدانید. این نقص به مزاحمان اجازه میدهد برنامههای قانونی روی دستگاه اندرویدی شما را کنترل کنند و از آنها برای معرفی برنامههای مخرب استفاده کنند.
بنابراین، Man-in-the-Disk دقیقاً چیست؟ چگونه کار می کند؟ و چگونه می توانید از دستگاه خود در برابر آن محافظت کنید؟
حمله Man-in-the-Disk چیست؟
Man-in-the-Disk نوعی حمله سایبری به دستگاه های دارای سیستم عامل اندروید است که در آن بدافزار نصب شده بر روی گوشی هوشمند یا تبلت، یک برنامه را از طریق فایل های موجود در حافظه خارجی هدف قرار می دهد.
سپس زمانی که کاربر تلاش میکند به آن فایلها دسترسی پیدا کند، کد مخرب اجرا میشود و به مهاجم اجازه میدهد کنترل دستگاه وسیعتری را در دست بگیرد. این حمله به این دلیل امکان پذیر است که اندروید به طور پیش فرض به برنامه ها اجازه می دهد داده ها را در حافظه خارجی بخوانند و بنویسند.
حافظه خارجی برای اهداف مختلفی مانند ذخیره موسیقی، فیلم و تصاویر استفاده می شود. با این حال، همچنین راهی را برای بدافزارها فراهم میکند تا حتی پس از بازنشانی کارخانهای بر روی دستگاه باقی بمانند.
هنگامی که مهاجم به حافظه خارجی دسترسی پیدا کرد، میتواند فایلها را اصلاح یا حذف کند، کدهای مخرب را در برنامههای قانونی وارد کند، یا برنامههای جدید را بدون اطلاع کاربر نصب کند.
حمله Man-in-the-Disk بسیار نزدیک به مفهوم حمله Man-in-the-Middle (MitM) است.
Sandboxing در اندروید چیست؟
برای درک حمله Man-in-the-Disk، ابتدا باید بدانید که برنامه ها و داده های آنها چگونه در دستگاه های اندرویدی ذخیره می شوند.
یکی از ویژگی های امنیتی کلیدی سیستم عامل اندروید، sandboxing است. ایده sandboxing جداسازی هر برنامه نصب شده و فایل های آن از سایر برنامه های نصب شده است.
بنابراین، هر زمان که برنامهای را روی دستگاه اندرویدی خود نصب میکنید، در یک منطقه ایزوله به نام sandbox ذخیره میشود.
هر برنامه در یک جعبه شنی جداگانه قرار دارد که توسط سایر برنامه های نصب شده غیرقابل دسترسی است.
مزیت sandboxing این است که حتی اگر یک برنامه مخرب راه خود را به دستگاه Android شما پیدا کند، نمی تواند داده های سایر برنامه های کاربردی مانند برنامه های بانکی، برنامه های رسانه های اجتماعی و سایر موارد را تغییر دهد و آنها را سرقت کند.
به این ترتیب، دادههای ضروری شما، مانند جزئیات مالی، اعتبارنامه ورود و غیره، علیرغم وجود بدافزار محافظت میشوند. با این حال، مهاجمان سایبری موفق شده اند از روش sandboxing با استفاده از حمله Man-in-the-Disk سوء استفاده کنند.
حمله Man-in-the-Disk چگونه کار می کند؟
همانطور که در بالا توضیح داده شد، اندروید برای ذخیره برنامهها و فایلهای آنها از sandbox استفاده میکند. با این حال، به غیر از سندباکس، اندروید دارای فضای ذخیرهسازی مشترکی است که به آن External Storage میگویند.
وقتی برخی از برنامه ها را نصب می کنید، ممکن است برای استفاده از حافظه خارجی از شما اجازه بگیرند. این مجوز چیزی شبیه به این است – “Allow [App Name] to Access photos, media and files on your device?”.
با اعطای این مجوز، در واقع به برنامه اجازه میدهید در حافظه خارجی شما بخواند و بنویسد. به طور کلی، این ایمن در نظر گرفته می شود و تقریباً هر برنامه ای آن را درخواست می کند. در واقع، بسیاری از برنامهها از آن میخواهند که دادههای دانلود شده خود را قبل از انتقال به جعبهشنودی خود، موقتاً در حافظه خارجی ذخیره کند.
به عنوان مثال، هنگامی که یک برنامه را به روز می کنید، ماژول های جدید ابتدا در حافظه خارجی دانلود می شوند و سپس به جعبه ایمنی ایزوله اضافه می شوند. اینجاست که حمله Man-in-the-Disk وارد عمل می شود.
حمله Man-in-the-Disk با سوء استفاده از یک آسیبپذیری در نحوه مدیریت حافظه خارجی اندروید عمل میکند. برخلاف سندباکس، هر برنامهای که مجوز خواندن/نوشتن در حافظه خارجی دارد، میتواند فایلهای موجود در آنجا را تغییر دهد. بنابراین، حتی اگر فایل های برخی از برنامه ها فقط به طور موقت در حافظه خارجی ذخیره شوند، برنامه غیرقانونی نصب شده توسط متجاوزان می تواند آنها را تغییر داده و کدهای مخرب را وارد کند.
این بدان معناست که هنگام به روز رسانی یک برنامه قانونی، ممکن است حتی ندانید که بدافزار را ناخواسته به دستگاه خود وارد کرده اید. هنگامی که می خواهید برنامه را راه اندازی کنید، کد مخرب اجرا می شود و مهاجم کنترل دستگاه را به دست می آورد.
چگونه از دستگاه خود در برابر حمله Man-in-the-Disk محافظت کنید
بنابراین اکنون که می دانید حمله Man-in-the-Disk چگونه کار می کند، باید بدانید چگونه می توانید دستگاه خود را در برابر آن محافظت کنید. چند کار وجود دارد که می توانید برای محافظت از خود در برابر حمله Man-in-the-Disk انجام دهید:
- بهترین راه برای در امان ماندن از این حمله، عدم اعطای مجوز خواندن/نوشتن به حافظه خارجی برای هر اپلیکیشنی است که مطلقاً به آن نیاز ندارد. وقتی برنامه ای این مجوز را می خواهد، قبل از دادن آن دو بار فکر کنید.
- ثانیاً، همیشه باید برنامه ها را از منابع قابل اعتماد مانند فروشگاه Google Play نصب کنید. از دانلود و نصب برنامه ها از وب سایت ها و فروشگاه های برنامه های شخص ثالث خودداری کنید زیرا ممکن است میزبان برنامه های مخرب باشند.
- مجوزهایی را که برای برنامه هایی که به ندرت استفاده می کنید ارائه کرده اید لغو کنید.
- در دستگاه Android خود، مجوز نصب برنامه از منابع ناشناس را غیرفعال کنید.
- دستگاه اندروید خود را با آخرین وصله های امنیتی منتشر شده توسط سازنده به روز نگه دارید. این وصلههای امنیتی آسیبپذیریهای سیستم عامل را برطرف میکنند و از سوء استفاده مهاجمان از آنها جلوگیری میکنند.
- شما باید از یک راه حل آنتی ویروس قابل اعتماد اندرویدی استفاده کنید که می تواند محافظت جامع در برابر انواع بدافزارها و تهدیدات سایبری ارائه دهد.
- برنامه هایی را که دیگر به آنها نیاز ندارید حذف نصب کنید. همچنین، برنامه هایی را که واقعاً به آنها نیاز ندارید، بی جهت نصب نکنید. هرچه تعداد برنامه های موجود در دستگاه شما کمتر باشد، احتمال بهره برداری کمتر است.
به عنوان یک کاربر برنامه اندروید، این نکات ضروری است که باید به خاطر داشته باشید تا احتمال حملات Man-in-the-Disk به دستگاه خود را به حداقل برسانید.
چگونه توسعه دهندگان می توانند از برنامه ها در برابر حملات Man-in-the-Disk محافظت کنند؟
حافظه خارجی بخش ضروری سیستم عامل اندروید است و آسیب پذیری آن نیز به همین ترتیب است. بنابراین، اگر یک توسعهدهنده اندروید هستید، مطمئن شوید که برنامهها را به گونهای طراحی میکنید که از حافظه خارجی به طور ایمن استفاده کنند.
چند کار وجود دارد که می توانید برای محافظت از برنامه خود در برابر حملات Man-in-the-Disk انجام دهید:
- بخش «بهترین روشها» گوگل را در راهنمای توسعه برنامه به دقت دنبال کنید. این شامل مجموعهای از دستورالعملها است که توسعهدهندگان باید برای طراحی برنامههای اندرویدی ایمن از آنها پیروی کنند.
- اگر داده های حساس را در حافظه خارجی ذخیره می کنید، آن را با استفاده از یک الگوریتم رمزگذاری قوی رمزگذاری کنید. این کار رمزگشایی و سوء استفاده از داده ها را برای مهاجمان دشوار می کند.
- مجوز “WRITE_EXTERNAL_STORAGE” را فقط در صورت لزوم درخواست کنید. اگر برنامه شما به این نیاز ندارد، آن را درخواست نکنید.
- از ویژگیهای امنیتی داخلی Android، مانند جعبه ایمنی برنامه و مجوزها، برای ایمن سازی بیشتر برنامه خود استفاده کنید.
- اگر برنامه شما برای خواندن/نوشتن در حافظه خارجی به مجوز نیاز ندارد، آن را در فایل Manifest اعلام نکنید.
بهعنوان یک توسعهدهنده اندروید، این مسئولیت شماست که برنامههایی را طراحی کنید که امن باشند و از دادههای کاربر در برابر سوء استفاده محافظت کنند. حمله Man-in-the-Disk تنها یکی از حملات متعددی است که می تواند تهدیدی برای اپلیکیشن شما و کاربران آن باشد. بنابراین، مطمئن شوید که بهترین شیوه ها را برای توسعه برنامه اندروید دنبال می کنید و برنامه خود را در برابر انواع تهدیدات ایمن می کنید.
آیا باید نگران حملات Man-in-the-Disk باشید؟
حتی اگر حمله Man-in-the-Disk یک تهدید جدی است، تا زمانی که اقدامات مناسبی برای محافظت از دستگاه خود انجام دهید، لازم نیست نگران آن باشید.
فقط به یاد داشته باشید که برنامه ها را از منابع قابل اعتماد نصب کنید، دستگاه خود را به روز نگه دارید و از یک راه حل امنیتی قابل اعتماد تلفن همراه استفاده کنید تا از انواع بدافزارها و تهدیدات سایبری در امان بمانید.
اگر یک توسعهدهنده اندروید هستید، مطمئن شوید که بهترین روشها را برای توسعه برنامه دنبال میکنید و برنامه خود را در برابر این حمله ایمن میکنید. این اقدامات ساده به شما کمک می کند دستگاه ها و داده ها را از حملات Man-in-the-Disk ایمن نگه دارید.