این روزها زیرساختهای فناوری اطلاعات و ارتباطات روند پیشرفت و توسعه را بهسرعت طی میکنند و بهتبع آن کاربران نیز از بستر موجود بهویژه اینترنت و دیگر فناوریهای ارتباطی بهرهمند خواهند شد. به همین خاطر تمایل افراد نسبت به بهرهمندی از همراه بانکها و تجارت الکترونیک رو به افزایش است. با این وجود راه برای افراد سودجو باز خواهد بود. کافی است کاربران گوشیهای هوشمند موارد امنیتی و هشدارهای داده شده را نسبت به افزایش امنیت گوشی هوشمند خود در نظر داشته باشند.
در ادامه 10 خطر امنیتی مربوط به دستگاههای قابلحمل عنوان شده است. دانستن این خطرات میتواند شما را در حفاظت از دادههای حساس خود و توسعهدهندگان برنامه کاربردی را نسبت به ایمنسازی برنامههایشان کمک نماید.
خطر امنیتی اول – ذخیره داده بهصورت ناامن
ذخیره داده بهصورت ناامن میتواند منجر به از دست رفتن دادههای کاربر به هنگام گمشدن گوشی همراه گردد. گاهی اوقات ما از یک دستگاه برای استفاده چند کاربر استفاده میکنیم و در صورت نصب یک برنامه کاربردی ناامن در دستگاه، تمام کاربران در معرض خطر قرار خواهند گرفت. در اینجا دادههایی را که در دستگاه اندرویدی ذخیره میشوند و بهصورت بالقوه در معرض خطر قرار خواهند گرفت معرفی میکنیم:
- نامهای کاربری
- توکنهای احراز اصالت
- گذرواژهها
- کوکیها
- دادههای موقعیت مکانی
- UDID/EMEI، نام دستگاه، نام شبکه متصل شده
- اطلاعات شخصی: DoB، آدرس، دادههای کارتهای اعتباری
- دادههای برنامه کاربردی
- لاگهای ذخیره شده برنامه کاربردی
- اطلاعات دیباگ
- پیامهای بهدستآمده از برنامه کاربردی
- تاریخچه تراکنشها
خطر امنیتی دوم – کنترلهای ضعیف از سمت سرور
سرورهایی که برنامه کاربردی شما باید به آن دسترسی داشته باشد نیازمند یکسری فاکتورهای امنیتی است تا مانع از دستیابی کاربران غیرمجاز به داده کاربر اصلی شوند. در صورت عدم تأمین کنترل در سمت سرور و امکان دسترسی برنامه کاربردی شما به آنها، دادههای شما در معرض خطر قرار خواهد گرفت.
خطر امنیتی سوم – حفاظت ناکافی لایه انتقال
به هنگام طراحی یک برنامه کاربردی برای گوشی همراه، در زمان اجرا، این برنامه کاربردی دادهها را از طریق یک سرور کلاینت جابهجا خواهدکرد. در واقع این نوع از دادهها از طریق شبکه و اینترنت منتقل خواهند شد. اگر کدنویسی این برنامه کاربردی ضعیف باشد و نتواند فاکتورهای امنیتی را برآورده نماید "عوامل تهدید" میتوانند با استفاده از تکنیکهایی، دادههای حساس را به هنگام عبور از خطوط ارتباط مشاهده نمایند.
عوامل تهدید شامل موارد زیر خواهند بود:
- کاربران محلی در شبکه شما (نظارت Wi-Fi)
- حاملها یا دستگاههای شبکه (روترها، دکلهای مخابراتی، پروکسیها و غیره)
- بدافزارهایی که از قبل روی گوشی کاربر وجود داشتهاند
خطر امنیتی چهارم– تزریق از جانب کلاینت
برنامههای کاربردی اندروید از جانب کلاینت دانلود و اجرا خواهند شد. یعنی کد برنامه کاربردی روی دستگاه کاربر قرار خواهد گرفت. مهاجمان میتوانند با بارگذاری حملات سادهی "متن محور" را در هر منبع داده تزریق نمایند، این منابع میتوانند فایلها یا خود برنامههای کاربردی باشند. حملات تزریق ازجمله تزریق SQL روی دستگاههای کلاینت میتواند در صورت وجود چندین حساب کاربری روی یک برنامه کاربردی یا یک دستگاه به اشتراک گذاشته شده تشدید پیدا کنند.
خطر امنیتی پنجم– ضعف مجوز و احراز اصالت
برنامههای کاربردی و سیستمهایی که به آنها متصل هستید باید به بهترین شکل از نظر تفویض مجوز و فرآیند احراز اصالت محافظت شوند. این کار موجب میشود تا (سیستمها، کاربران و دستگاهها) برای انتقال داده در زمان فعالیت برنامه کاربردی دارای اختیار و مجوز قانونی باشند و در صورت عدم وجود چنین شرایطی سیستمها، کاربران و دستگاههای غیرمجاز توانایی این کار را نداشته باشند و مسدود شوند.
خطر امنیتی ششم – مدیریت نادرست لایه جلسه
ممکن است برای شما هم اتفاق افتاده باشد که در حین بررسی حساب بانکی خود از طریق کامپیوتر، کاری پیشآمده باشد و میز کامپیوتر خود را ترک کنید و پس از بازگشت با پیغام " زمان جلسه به اتمام رسیده است – لطفاً دوباره وارد شوید" روبرو شوید. این یک نمونه خوب از مدیریت جلسه است. در واقع شما در یک مدتزمان مشخص در صورت عدم فعالیت بهصورت خودکار از سیستم خارج خواهید شد. این کار باعث میشود تا تهدیداتی از قبیل جاسوسی از کامپیوتر شما و مشاهده اطلاعات حساب بینتیجه باقی بماند.
این مورد و سایر موارد مدیریت جلسه باید در مورد برنامههای کاربردی که دسترسی به دادههای حساس را دارند اعمال گردد.
خطر امنیتی هفتم – تصمیمات امنیتی از طریق ورودیهای نامطمئن
شاید فکر کنید ورودیهایی از قبیل کوکیها، متغیرهای محیطی و فرمهای مخفی موجود در گوشی شما غیرقابل تغییر و تنظیم مجدد هستند، اما این یک تصور کاملاً اشتباه است! یک مهاجم میتواند این نوع از ورودیها را تغییر دهد و نکته مهم اینجاست که این تغییرات ممکن است قابلتشخیص هم نباشند. زمانی که تصمیمات امنیتی از قبیل احراز اصالت و نوع مجوزها بر اساس مقادیر این دست از ورودیها اتخاذ و ساخته میشوند بنابراین مهاجمان نیز میتوانند امنیت نرمافزارها را دور بزنند.
بدون رمزگذاری مناسب، بررسی جامعیت یا دیگر مکانیسمها هر ورودی که سرچشمه خارجی داشته باشد نمیتواند قابلاعتماد باشد.
خطر امنیتی هشتم – نشت داده از کانال جانبی
در رمزنگاری – استراتژیهای متنوعی در رمزگذاری مورداستفاده قرار میگیرند. حمله کانال جانبی: حملاتی که بهمنظور به دست آوردن اطلاعات از طریق اجرای فیزیکی سیستم رمزگذاری صورت میپذیرند بیشتر از حملات brute force یا پیدا کردن نقاط ضعف موجود در الگوریتم رمزنگاری باشد.
بررسی دقیق ازنظر چگونگی انتقال داده و زمان و مکان انتقال آن توسط مهاجمان میتواند منجر به شناسایی و بهرهبرداری از حفرههای امنیتی گردد.
خطر امنیتی نهم – شکستن رمزنگاری
سیستمهای رمزگذاری دائماً در حال تغییر و تحول هستند زیرا آنها همیشه رمزگشایی و یا شکسته میشوند.
نسبت به قدرت، پایا بودن و عدم شکسته شدن الگوریتم رمزنگاری که از آن استفاده میکنید اطمینان حاصل کنید. نقاط ضعف یک الگوریتم را می توان با استفاده از ابزارها و تکنیکهایی که نیازمند تحلیل دستی و با مشارکت انسان است، انجام داد. این تکنیکها شامل آزمونهای نفوذ، مدل کردن تهدیدات و ابزارهای تعاملی است و به کاربر اجازه ثبت و تنظیم یک جلسه فعال را میدهد.
خطر امنیتی دهم – افشای اطلاعات حساس
از بین 9 مورد گفته شده، این مورد از اهمیت بیشتری برخوردار است.
زمانی که برنامههای کاربردی، سیستمها و الگوریتمهای رمزنگاری ساخته میشوند یا توسط شرکتها مورداستفاده قرار میگیرند، هک و یا شکسته خواهند شد، در این زمان داده شما میتواند در معرض خطر قرار گیرد. هنگامیکه دادههای حساس فاش شوند، افراد سودجو میتوانند این دادهها را در پایگاههای داده و سیستمهای خود ذخیره کنند و به حسابهای کاربری، کارتهای اعتباری، نامهای کاربری، گذرواژهها و بسیاری دیگر از دادههای حساس شما دسترسی داشته باشند.
جستجوی داده بهمنظور شناسایی آسیبپذیریهایی که از نقص موجود در برنامههای کاربردی و نوع خدمات شرکتها منجر میشود، شما را در برابر این دست از خطرات مصون نگاه خواهد داشت.