روایتی متفاوت از حادثه سنبرناردینو اینبار با دستگاهی اندرویدی
پس از کش و قوسهای فراوان، بالاخره موضوع بازکردن قفل آیفون 5c فرد تروریست حاضر در واقعه سنبرناردیینو خاتمه یافت. در این بین، FBI از حضور طرف ثالثی استفاده کرد تا فرایند رمزگشایی دادههای آیفون مورد نظر انجام شود.
با این وجود، پرسشی که مطرح میشود آن است که اگر به جای آیفون شرکت اپل، یک دستگاه اندرویدی نقش اصلی را در این رویداد ایفا میکرد آیا همچنان امکان استفاده از چنین راهکاری وجود داشت؟ با هدف یافتن پاسخ این پرسش، بررسی مستندات و مدارک مربوط به سیستم رمزگذاری سیستمعامل اندروید در دستور کار وبسایت Theconversation قرارگرفته که خواندن آن خالی از لطف نخواهد بود. به این منظور، بررسی اهداف مورد نظر FBI بهمنظور استخراج دادهها توسط متخصصین این وبسایت در اولویت قرار گرفته است. در این راستا، جدا از اینکه اکوسیستم اندروید، بسته به برند تولید کننده دستگاه همراه، تفاوتهای فنی را به همراه خواهد داشت، استفاده از راهکارهایی مانند بهروزرسانی از راه دور بهمنظور بازکردن قفل رمزگذاری دادهها (موردی که FBI از انجام آن روی آیفون 5c ناتوان بود) نیز مدنظر قرار گرفته است.
راهکارهای ساده
رمزگذاری دادهها روی گوشیهای هوشمند به کلیدی نیاز دارد که دستگاه با ترکیب رمز ویژه بازکردن قفل گوشی (در صورتی که این گذرواژه توسط کاربر فعال شده باشد) که در واقع معمولا کدعبور چهار تا شش رقمی است در کنار عددی طولانی و پیچیده (که به طور اختصاصی به هر دستگاه مورد استفاده نسبت داده میشود) آن را ایجاد میکند. نفوذگران میتوانند بهطور مستقیم به شکستن این قفل اقدام کنند که فرایندی بسیار دشوار است و یا ترکیبی از کلمات عبور و اعداد مرتبط با دستگاه که مخفی بوده و حدس زدن آنها دشوار است را مورد آزمایش قراردهند.
اگرچه رمزگشایی این سیستم بسیار دشوار است اما در برخی موارد بهمنظور دسترسی به اطلاعات رمزگذاری شده دستگاههای اندرویدی، نیازی به شکستن رمز دادهها نبوده و راهحلهای سادهتری نیز وجود دارند. در ادامه به برخی از این راهکارها اشاره خواهیم کرد:
– نصب یک برنامه شخصیسازی شده بهمنظور استخراج دادههای مورد نظر از گوشی هدف یکی از راهکارهای موجود در این زمینه است. در مارس سال 2011 شرکت گوگل از راه دور اقدام به نصب برنامهای روی گوشیهای اندرویدی کرد که امکان پاکسازی گوشیهای آلوده به بدافزارها را فراهم میکرد. با این وجود هنوز مشخص نیست که آیا این راهکار همچنان قابل استفاده خواهد بود یا خیر؟!
– برنامههای زیادی وجود دارند که از سیستم Backup API اندروید استفاده میکنند. اطلاعات پشتیبانی شده در قالب این سیستم بهطور مستقیم از طریق دسترسی به قسمت مشخصی از وبسایت میزبان قابل دسترسی هستند.
– در صورتی که اطلاعات مورد نظر روی کارت حافظه جانبی ذخیره شده باشند این احتمال وجود دارد که فرایند رمزگذاری روی آنها انجام نشده باشد. این در حالی است که تنها نسخههای جدیدتر سیستمعامل اندروید امکان رمزگذاری کامل اطلاعات ذخیرهشده روی اسدی کارت را فراهم میکنند و تمامی برنامهها نیز فرایند رمزگذاری دادههای ذخیرهشده روی کارت حافظه جانبی را انجام نمیدهند.
– برخی از گوشیهای اندرویدی از سیستمهای تشخیص اثرانگشتی استفاده میکنند که امکان بازکردن قفل را از طریق استفاده از تصویر اثرانگشت مالک گوشی فراهم میکنند.
– برخی از کاربران با ایجاد تغییرات در سیستمعامل اندروید گوشی خود، دسترسی روت را برای آن فراهم میکنند که این امر نیز به نوبه خود امنیت گوشیهای اندرویدی را کاهش میدهد.
با این وجود، در صورتی که این گزینهها در دسترس نیستند، شکستن کد، تنها راه باقیمانده خواهد بود. با استفاده از روشی که Brute Force نامیده میشود میتوان فرایند بازکردن قفل گوشی را با امتحان کردن هر ترکیب ممکن از کلیدهای رمزگذاری (تمامی ترکیبهای کاراکتری ممکن) انجام تا نهایتا به ترکیب درست رسیده و قفل دستگاه باز شود.
آغاز حمله
دو نوع حمله Brute Force وجود دارد که یکی آفلاین و دیگری آنلاین است. از برخی جهات، حمله آفلاین تا حدودی مزایای بیشتری دارد. با کپیکردن دادههای موجود در دستگاه و انتقال آنها به رایانهای به مراتب قدرتمندتر، نرمافزارهای ویژه و راهکارهای دیگر را میتوان بهمنظور آزمایش ترکیبهای ممکن رمزگشایی به کار بست. با این وجود از آنجایی که این راهکار به امتحان کردن تمامی کلیدهای ممکن رمزگذاری نیاز دارد، این روند میتواند زمانبر و طاقتفرسا باشد.
بهمنظور امتحان کردن تمامی کلیدهای 128 بیتی AES، نیاز به امتحان کردن 10 به توان 38 ترکیب متفاوت خواهد بود که به میلیاردها سال صرف زمان با استفاده از ابر رایانهها نیاز خواهد داشت.
حدس زدن پینکد شش رقمی که تنها از اعداد تشکیل شده بهتنهایی، میلیونها گزینه را پیش روی شما قرار خواهد داد. این در حالی است که ترکیب این اعداد با نمایههای خاص مانند $ یا # صدها میلیارد گزینه را پیش روی شما قرار خواهد داد.
در قالب حمله آنلاین که به طور مستقیم روی گوشی اتفاق میافتد، کلید ویژه دستگاه برای سیستمعامل قابل خواندن بوده و همین امر، گزینههای موجود را تا حد زیادی محدود خواهد کرد.
با این وجود این امکان وجود دارد که گوشی بهنحوی پیکربندی شده باشد که در مقابل حملات آنلاین مقاومت کند. به عنوان مثال، گوشی میتواند با وارد کردن وقفههای زمانی میان کدهای عبور اشتباه و فراهم کردن امکانی برای وارد کردن مجدد رمز و یا حتی حذف دادهها پس از تعداد مشخصی آزمون و خطا، راهکاری دفاعی را ایجاد کند.
سیستمعامل iOS اپل از هر دو توانایی استفاده کرده تا بهطور خودکار وقفههای طولانی را ایجاد و به انتخاب کاربر، امکان پاککردن دادههای موجود روی دستگاه را پس از 10 بار حدس اشتباه گذرواژه فراهم کند.
حمله به یک دستگاه اندرویدی
وقتی نفوذگری تصمیم به حمله به یک گوشی اندرویدی قفل شده میگیرد چه اتفاقی میافتد؟ پیش از هر چیز باید درنظر داشت که شرکتهای مختلف از ترکیبهای متفاوتی در دستگاههای اندرویدی استفاده میکنند. گوشیهای سری نکسوس از تنظیمات استاندارد اندروید شرکت گوگل بهره میبرند. در این بررسی از نکسوس 4 مجهز به اندروید 5.1.1 که قابلیت رمزگذاری کامل فضای ذخیرهسازی در آن فعال شده استفاده گردید.
اندروید امکان استفاده از پین، گذرواژه و الگوهای ایجاد قفل را در کنار راهکارهای دیگر بهمنظور حفاظت از محتویات گوشی، به کاربر پیشنهاد میشود. با فعالکردن کد عبور، ما به طور تصادفی 5 بار رمز عبور را وارد کردیم. پس از این، اندروید پیغامی را مبنی بر لزوم ایجاد وقفه 30 ثانیهای برای استفاده از تکرارهای بعدی پیش روی ما قرار داد. بر خلاف آیفون، این وقفه با تکرارهای ناموفق بعدی، افزایش نیافت و پس از 40 تکرار ناموفق، همچنان شاهد نمایش پیغام 30 ثانیه وقفه، پس از هر 5 بار تکرار بودیم. این روند بارها و بارها ادامه یافت اما در نهایت پاک کردن دادهها انجام شد ( گوشیهای اندرویدی دیگر شرکتهای سازنده ممکن است بازه زمانی این وقفهها را مشابه با آنچه در iOS مشاهده میکنیم افزایش دهند).
این تاخیر زمانی، تاثیر زیادی در کاستن از سرعت حمله نفوذگران خواهد داشت. Brute Force در زمینه پین شش رقمی (یک میلیون ترکیب)، در بدترین حالت، تاخیر 69 روزه را به دنبال خواهد داشت. این در حالی است که اگر رمز عبور شش حرفی مورد استفاده قرارگرفته باشد، در بدترین حالت، تاخیر 58 ساله را شاهد خواهیم بود.
وقتی فرایند بالا را روی گوشی که خاموش شده و مجددا روشن شده بود تکرار کردیم، پیغامی برای راهاندازی مجدد گوشی پس از 10 بار تلاش ناموفق صادر شد. پس از 20 بار تلاش ناموفق و دو بار راهاندازی مجدد، اندروید شمارش معکوسی را برای به پایان رسیدن تلاشهای نافرجام و در نهایت پاک کردن اطلاعات شروع کرد. با ادامه دادن به تلاشها، پس از 30 تلاش ناموفق هشداری روی صفحه ظاهر و بازگشت به تنظیمات کارخانه و پاک شدن تمامی اطلاعات به وقوع پیوست.
برخلاف حملات آفلاین، در خصوص حملات آنلاین تفاوت مشهودی میان اندروید و iOS وجود دارد. در iOS پس از استفاده از شانسهای مشخص بهمنظور وارد کردن رمز، چه از قفل صفحهنمایش و چه در زمان راهاندازی، فرایند پاک شدن اطلاعات کاربر در صورتی که کاربر صراحتا این قابلیت را فعال کرده باشد انجام خواهد شد اما در اندروید، فرایند بوت همواره پس از تعداد مشخص تلاش ناموفق، اطلاعات کاربر را پاک میکند (اگرچه در نکسوس 4 امکان مشخص کردن محدودیت برای تعداد وارد کردن ناموفق رمز وجود ندارد). در هر دو سیستمعامل، گزینههایی برای مدیریت از راه دور دستگاه بهمنظور پاک کردن اطلاعات پس از تعداد نامشخص تلاش ناموفق وجود دارد.
استفاده از ابزارهای خاص
آیفون 5c دخیل در حادثه سنبرناردینو، گوشی کارفرمای یکی از تروریستها بوده و نرمافزار مدیریت دستگاه همراه (MDM) روی آن نصب بوده است و همین امر به شرکت سرویسدهنده امکان رهگیری و اجرای عملکردهای دیگر بهصورت کنترل از راه دور را میدهد. چنین برنامههایی معمولا به عنوان برنامه ناظر دستگاه، روی دستگاههای اندرویدی نصب شده و برای iOS نیز با بهرهگیری از برنامه پیکربندی اپل، مورد استفاده قرار میگیرند.
متخصصین وبسایت Theconversation، برنامه MDM شخصیسازی شده خود را برای دستگاههای اندرویدی توسعه دادند که امکان بازنشانی رمزعبور، آنهم بدون رضایت کاربر را میسر میسازد. این برنامه امکان بهروزرسانی کلیدهای رمزگذاری گوشی را نیز میسر میسازد تا امکان استفاده از رمز عبوری جدید بهمنظور بازکردن قفل گوشی وجود داشته باشد. در صورتی که فرد نفوذگر به کمک شرکتهای تولیدکننده گوشی همراه یا توسعهدهنده نرمافزار نیاز داشته باشد، اندروید چشمانداز گستردهتری را پیش روی او قرار میدهد.
جمعبندی نهایی
روی هم رفته، دستگاههای مجهز به دستگاههای اندروید یا iOS که از نسخههای جدید بهره میبرند، در صورت پیکربندی مناسب از سوی شرکت سازنده و کاربر، در مقابل حملات آفلاین ایمنی بالایی دارند اما نسخههای قدیمیتر ممکن است ضعفهایی در این زمینه داشته باشند.
در زمینه حملات آنلاین، با درنظر گرفتن پیکربندی مدیریت از راه دور، اندروید تنظیمات پیشفرض ایمنتری در حالت راهاندازی داشته اما دستگاههایی مانند نکسوس 4 امکان تنظیم بیشینه تعداد خطا در ورود گذرواژه را فراهم نمیکنند. دستگاههایی که از iOS بهره میبرند نیز چنین قابلیتهایی را دارند اما کاربر باید آنها را بهطور دستی فعال کند.
امنیت اندروید ممکن است بهواسطه استفاده از نرمافزارهای کنترل از راه دور به چالش کشیده شود که این تا حد زیادی به نرمافزار مورد استفاده بهمنظور حمله به دستگاه اندرویدی بستگی دارد. این در حالی است که FBI در پیادهسازی دسترسی به آیفون 5c با استفاده از روش بازنشانی گذرواژه به این روش ناموفق بوده است.
منبع : آی تی ایران