ده خطر امنیتی در مورد گوشی‌های هوشمند

چهارشنبه ۲۳ تیر ۱۳۹۵
sharif-cert, apa, ذخیره داده به‌صورت ناامن, كنترل‌های ضعیف از سمت سرور, حفاظت ناكافی لایه انتقال, ریق از جانب كلاینت, ف مجوز و احراز اصالت, مدیریت نادرست لایه جلسه, تصمیمات امنیتی از طریق ورودی‌های نامطمئن, نشت داده از كانال جانبی, شكستن رمزنگاری, افشای اطلاعات حساس
مرکز آپا شریف
SUT-APA-LOGO
چکیده:
در این مقاله 10 خطر امنیتی مربوط به دستگاه‌های قابل‌حمل عنوان شده است. دانستن این خطرات می‌تواند شما را در حفاظت از داده‌های حساس خود و توسعه‌دهندگان برنامه كاربردی را نسبت به ایمن‌سازی برنامه‌هایشان كمك نماید.

مقدمه

این روزها زیرساخت‌های فناوری اطلاعات و ارتباطات روند پیشرفت و توسعه را به‌سرعت طی می‌كنند و به‌تبع آن كاربران نیز از بستر موجود به‌ویژه اینترنت و دیگر فناوری‌های ارتباطی بهره‌مند خواهند شد. به همین خاطر تمایل افراد نسبت به بهره‌مندی از همراه بانك‌ها و تجارت الكترونیك رو به افزایش است. با این وجود راه برای افراد سودجو باز خواهد بود. كافی است كاربران گوشی‌های هوشمند موارد امنیتی و هشدارهای داده شده را نسبت به افزایش امنیت گوشی هوشمند خود در نظر داشته باشند. در ادامه 10 خطر امنیتی مربوط به دستگاه‌های قابل‌حمل عنوان شده است. دانستن این خطرات می‌تواند شما را در حفاظت از داده‌های حساس خود و توسعه‌دهندگان برنامه كاربردی را نسبت به ایمن‌سازی برنامه‌هایشان كمك نماید.

خطر امنیتی اول – ذخیره داده به‌صورت ناامن

ذخیره داده به‌صورت ناامن می‌تواند منجر به از دست رفتن داده‌های كاربر به هنگام گم‌شدن گوشی همراه گردد. گاهی اوقات ما از یك دستگاه برای استفاده چند كاربر استفاده می‌كنیم و در صورت نصب یك برنامه كاربردی ناامن در دستگاه، تمام كاربران در معرض خطر قرار خواهند گرفت. در اینجا داده‌هایی را كه در دستگاه اندرویدی ذخیره می‌شوند و به‌صورت بالقوه در معرض خطر قرار خواهند گرفت معرفی می‌كنیم:

خطر امنیتی دوم – كنترل‌های ضعیف از سمت سرور

سرورهایی كه برنامه كاربردی شما باید به آن دسترسی داشته باشد نیازمند یكسری فاكتورهای امنیتی است تا مانع از دستیابی كاربران غیرمجاز به داده كاربر اصلی شوند. در صورت عدم تأمین كنترل در سمت سرور و امكان دسترسی برنامه كاربردی شما به آن‌ها، داده‌های شما در معرض خطر قرار خواهد گرفت.

خطر امنیتی سوم – حفاظت ناكافی لایه انتقال

به هنگام طراحی یك برنامه كاربردی برای گوشی همراه، در زمان اجرا، این برنامه كاربردی داده‌ها را از طریق یك سرور كلاینت جابه‌جا خواهدكرد. در واقع این نوع از داده‌ها از طریق شبكه و اینترنت منتقل خواهند شد. اگر كدنویسی این برنامه كاربردی ضعیف باشد و نتواند فاكتورهای امنیتی را برآورده نماید "عوامل تهدید" می‌توانند با استفاده از تكنیك‌هایی، داده‌های حساس را به هنگام عبور از خطوط ارتباط مشاهده نمایند. عوامل تهدید شامل موارد زیر خواهند بود:
  • كاربران محلی در شبكه شما (نظارت Wi-Fi)
  • حامل‌ها یا دستگاه‌های شبكه (روترها، دكل‌های مخابراتی، پروكسی‌ها و غیره)
  • بدافزارهایی كه از قبل روی گوشی كاربر وجود داشته‌اند.

خطر امنیتی چهارم– تزریق از جانب كلاینت

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

خطر امنیتی پنجم– ضعف مجوز و احراز اصالت

برنامه‌های كاربردی و سیستم‌هایی كه به آن‌ها متصل هستید باید به بهترین شكل از نظر تفویض مجوز و فرآیند احراز اصالت محافظت شوند. این كار موجب می‌شود تا (سیستم‌ها، كاربران و دستگاه‌ها) برای انتقال داده در زمان فعالیت برنامه كاربردی دارای اختیار و مجوز قانونی باشند و در صورت عدم وجود چنین شرایطی سیستم‌ها، كاربران و دستگاه‌های غیرمجاز توانایی این كار را نداشته باشند و مسدود شوند.

خطر امنیتی ششم – مدیریت نادرست لایه جلسه

ممكن است برای شما هم اتفاق افتاده باشد كه در حین بررسی حساب بانكی خود از طریق كامپیوتر، كاری پیش‌آمده باشد و میز كامپیوتر خود را ترك كنید و پس از بازگشت با پیغام " زمان جلسه به اتمام رسیده است – لطفاً دوباره وارد شوید" روبرو شوید. این یك نمونه خوب از مدیریت جلسه است. در واقع شما در یك مدت‌زمان مشخص در صورت عدم فعالیت به‌صورت خودكار از سیستم خارج خواهید شد. این كار باعث می‌شود تا تهدیداتی از قبیل جاسوسی از كامپیوتر شما و مشاهده اطلاعات حساب بی‌نتیجه باقی بماند. این مورد و سایر موارد مدیریت جلسه باید در مورد برنامه‌های كاربردی كه دسترسی به داده‌های حساس را دارند اعمال گردد.

خطر امنیتی هفتم – تصمیمات امنیتی از طریق ورودی‌های نامطمئن

شاید فكر كنید ورودی‌هایی از قبیل كوكی‌ها، متغیرهای محیطی و فرم‌های مخفی موجود در گوشی شما غیرقابل تغییر و تنظیم مجدد هستند، اما این یك تصور كاملاً اشتباه است! یك مهاجم می‌تواند این نوع از ورودی‌ها را تغییر دهد و نكته مهم اینجاست كه این تغییرات ممكن است قابل‌تشخیص هم نباشند. زمانی كه تصمیمات امنیتی از قبیل احراز اصالت و نوع مجوزها بر اساس مقادیر این دست از ورودی‌ها اتخاذ و ساخته می‌شوند بنابراین مهاجمان نیز می‌توانند امنیت نرم‌افزارها را دور بزنند. بدون رمزگذاری مناسب، بررسی جامعیت یا دیگر مكانیسم‌ها هر ورودی كه سرچشمه خارجی داشته باشد نمی‌تواند قابل‌اعتماد باشد.

خطر امنیتی هشتم – نشت داده از كانال جانبی

در رمزنگاری – استراتژی‌های متنوعی در رمزگذاری مورداستفاده قرار می‌گیرند. حمله كانال جانبی: حملاتی كه به‌منظور به دست آوردن اطلاعات از طریق اجرای فیزیكی سیستم رمزگذاری صورت می‌پذیرند بیشتر از حملات brute force یا پیدا كردن نقاط ضعف موجود در الگوریتم رمزنگاری باشد. بررسی دقیق ازنظر چگونگی انتقال داده و زمان و مكان انتقال آن توسط مهاجمان می‌تواند منجر به شناسایی و بهره‌برداری از حفره‌های امنیتی گردد.

خطر امنیتی نهم – شكستن رمزنگاری

سیستم‌های رمزگذاری دائماً در حال تغییر و تحول هستند زیرا آن‌ها همیشه رمزگشایی و یا شكسته می‌شوند. نسبت به قدرت، پایا بودن و عدم شكسته شدن الگوریتم رمزنگاری كه از آن استفاده می‌كنید اطمینان حاصل كنید. نقاط ضعف یك الگوریتم را می توان با استفاده از ابزارها و تكنیك‌هایی كه نیازمند تحلیل دستی و با مشاركت انسان است، انجام داد. این تكنیك‌ها شامل آزمون‌های نفوذ، مدل كردن تهدیدات و ابزارهای تعاملی است و به كاربر اجازه ثبت و تنظیم یك جلسه فعا ل را می‌دهد.

خطر امنیتی دهم – افشای اطلاعات حساس

از بین ۹ مورد گفته شده، این مورد از اهمیت بیشتری برخوردار است. زمانی كه برنامه‌های كاربردی، سیستم‌ها و الگوریتم‌های رمزنگاری ساخته می‌شوند یا توسط شركت‌ها مورداستفاده قرار می‌گیرند، هك و یا شكسته خواهند شد، در این زمان داده شما می‌تواند در معرض خطر قرار گیرد. هنگامی‌كه داده‌های حساس فاش شوند، افراد سودجو می‌توانند این داده‌ها را در پایگاه‌های داده و سیستم‌های خود ذخیره كنند و به حساب‌های كاربری، كارت‌های اعتباری، نام‌های كاربری، گذر‌واژه‌ها و بسیاری دیگر از داده‌های حساس شما دسترسی داشته باشند. جستجوی داده به‌منظور شناسایی آسیب‌پذیری‌هایی كه از نقص موجود در برنامه‌های كاربردی و نوع خدمات شركت‌ها منجر می‌شود، شما را در برابر این دست از خطرات مصون نگاه خواهد داشت.