موضوع امنیت در اپلیکیشنهای موبایل موضوع مهمی است که متاسفانه توسط سازندگان اپلیکیشن نادیده گرفته میشود.
سازندگان اپ موبایل معمولا روی ظاهر و قابلیتهای اصلی اپلیکیشن تمرکز دارند و به موضوع امنیت توجه زیادی نمیکنند. شاید یکی از دلایل این موضوع این باشد که کاربران، سفارش دهندگان برنامه موبایل و حتی توسعه دهندگان، اطلاعات لازم و کافی از اهمیت این موضوع را ندارند.
چندین موضوع هستند که امنیت اپلیکیشن را تحت تاثیر قرار میدهند. در زیر هر یک را توضیح میدهیم.
با در نظر داشتن موارد زیر خواهید دید که توجه به موضوع امنیت در اپلیکیشنها چندان هم پیچیده و سخت نیست.
۱-Application Permissions
Application Permissions یا مجوزهای دسترسی برنامه همان مجوزهایی هست که در هنگام نصب اپلیکیشن به شما نشان داده میشود.
اپلیکیشن برای دسترسی به برخی امکانات نیاز به داشتن مجوز دسترسی دارد که توسط توسعه دهنده در اپ قرار داده شده است.
به طور مثال اپلیکیشنی که نیاز به دسترسی اینترنت برای نمایش اطلاعات دارد، حتما باید دارای مجوز دسترسی اینترنت باشد و اگر این مجوز در اپ قرار داده نشده باشد اجرای اپ با خطا مواجه میشود.
اکثر کاربران بدون توجه و خواندن موارد این صفحه گزینه نصب (Install) را میزنند.این مجوزهایی که مشاهده میکنید نیاز به تایید شما برای دسترسی ندارند و فقط به صورت یک اعلان مجوزهای دسترسی اپلیکیشن به قسمتهای مختلف گوشی را به شما نشان میدهد.
برخی از این مجوزهای دسترسی ممکن است از نظر امنیتی برای شما مشکل ایجاد کنند. پس به این دسترسی ها توجه کنید و دسترسیهای خطرناک که ممکن است برای شما مشکل ایجاد کنند را بشناسید.
برخی از مجوزهای رایج در اپلیکیشن :
–Internet Permission: برنامه موبایل برای ارتباط و خواندن اطلاعات از اینترنت نیاز به این مجوز دارد و معمولا در کنار این مجوز، Network State Permission و Wifi State Permission نیز هستند.
-Vibrate Permission: گاهی در برنامه از امکان لرزش یا ویبره استفاده میشود. که برای این کار اپ نیاز به مجوز Vibrate دارد.
-WAKE_LOCK Permission: این مجوز هم برای جلوگیری از به خواب رفتن صفحه نمایش هنگام اجرای اپلیکیشن استفاده میشود.
مجوزهایی که از نظر امنیتی ممکن است مشکلساز باشند:
-Read And Modify Your Contacts: این مجوز از این جهت مشکل ساز است که میتواند به تمام اطلاعات مخاطبین گوشی دسترسی داشته باشد.در اپ های اجتماعی، مدیریت SMS و موارد مشابه،وجود این دسترسی لازم هست ولی در برنامه های دیگر نیازی به این مجوز نیست.
–SMS Permission: وجود این مجوز در اپ برای کاربران ممکن است هزینه داشته باشد.از نظر امنیتی هم اپلیکیشن به پیامهای ارسالی و دریافتی شما میتواند دسترسی داشته باشد.
برخی اپ ها برای اعتبار سنجی نیاز به ارسال SMS دارند.همچنین اپلیکیشنهای ارسال پیام معمولا این دسترسی را دارند اگر اپی هیچ نیازی به این مجوز ندارد از نصب آن خودداری کنید و در اپ هایی هم که این مجوز را دارند کمی تفکر کنید که به چه دلیل این مجوز را گذاشتهاند.
-Phone Status And Identity Permissions: این مجوز به اطلاعات مهمی مثل شماره IMEI گوشی شما دسترسی پیدا میکند.
اگر به عنوان سفارش دهنده اپ، مجوزی در اپ میبینید که وجودش الزامی نیست و از نظر امنیتی مشکل ساز است حتما توسعه دهنده اپلیکیشن را در جریان بگذارید.
اگر به عنوان کاربر، از یک اپ استفاده میکنید و مجوزهای مشکلساز مشاهده میکنید از نصب آن خودداری کنید.
اگر به عنوان توسعه دهنده، اپلیکیشن میسازید نکات امنیتی استفاده از Permission ها را حتما در نظر داشته باشید.
معمولا مارکتها هم اپلیکیشنهایی که مجوز مشکل ساز دارند را برای انتشار نمیپذیرند.
توجه داشته باشید که هر کدام از این مجوزها در صورتی که اپلیکیشن واقعا به آنها نیاز دارد مشکلی ندارد.مثلا در اپلیکیشن مدیریت SMS مجوز دسترسی به SMS باید وجود داشته باشد ولی اگر همین مجوز دسترسی در یک اپلیکیشن بازی باشد باید به آن توجه ویژهای کرد.
۲- کنترلهای سمت سرور
اگر اپلیکیشن به سرور متصل است نکات امنیتی سمت سرور باید رعایت شده باشند.سرور محلی است که اطلاعات شما در آنجا ذخیره میشوند و از آنجا اپلیکیشن را مدیریت میکنید.
مثلا در سیستم اپساز برای ذخیره اطلاعات و مدیریت، یک پنل تحت وب در اختیار شما قرار داده میشود که نکات امنیتی در آن کاملا رعایت شده است. همچنین برای امنیت بیشتر میتوانید روی سرور شخصی اپلیکیشن بسازید.
همچنین شما با سیستم اپساز میتوانید اپ را روی سرور شخصی خودتان بسازید تا مدیریت بهتر و امنیت بیشتری داشته باشد.
۳- Encryption
اطلاعات مهم مثل رمز عبور باید به صورت رمزنگاری شده در دیتابیس ذخیره شوند.این موضوع در Back End توسط برنامه نویس سرور انجام شده است.
امیدواریم با خواندن این مقاله آگاهی بیشتری از موضوع امنیت در اپ ها کسب کرده باشید و به نکات گفته شده توجه ویژه ای کنید.