راهکاری برای اصلاح خرابی های ناشی از رمزنگاری
"لیف ریج" هنرمند، هکر و روزنامه نگار برلینی است. او با نام @wiretapped در توئیت پست میگذارد اما تا زمانی که توئیتر معلق کردن اکانت ها را متوقف نکند، صبر میکند.
کلیک - در سال ۲۰۱۴ زمانی که در سرمقاله روزنامه واشنگتن نیوز نوشته شده بود "شاید شرکتهای گوگل و اپل با تمام هوشمندی خود بتوانند نوع دیگری از کلیدهای طلایی امنیتی را اختراع کنند که تنها موقعی بکار گرفته میشوند که درخواست یک جستجو مورد پذیرش واقع میشود"، اینترنت آن ها را به استهزاء گرفت. بسیاری از مردم به زحمت میتوانند توضیح دهند که حتی در صورتی که یک توافق گسترده ای در خصوص اینکه چه شخص و یا دولت های ذی صلاحی میتواتند از این قابلیت استفاده نمایند، باز هم نمیتوان مطمئن شد که از این قدرت عظیم به دست افراد نادرست نیافتد.
این واقعیت غم انگیز را بخوانید تا ببینید در حال حاضر در چه شرایطی زندگی میکنیم:
پرسش: هر بخش از نرم افزاری که مجهز به قابلیت به روز رسانی میباشد، از جمله هر سیستم عامل محبوب، چه چیزهایی را با هم به اشتراک دارند؟
پاسخ: کلیدهای زرین امنیتی، رمز نگاری نقاط خرابی که هر بسته ی بروز رسانی نرم افزاری مخربی میتواند با استفاده از آنها، کل سیستم را به کنترل خود در آوردآورد.
من این اصطلاحات را این گونه تعریف میکنم: وقتی می گویم"آپدیتهای زیان آور سیستم"، منظورم این است که کسی میتواند با به کار بردن یک سری حقه و کلک، باعث شود نسخه نامعتبری از نرم افزار بر روی کامپیوتر شما نصب شود، که هدف آن این بوده که کامپیوتر کارهایی را انجام میدهد که شما نمیخواهید. وقتی می گویم "آپدیتهای زیان آور هدفمند"، منظورم این است که تنها اهداف مورد نظر مهاجم این بروز رسانی ها را دریافت میکنند، در نتیجه احتمال اینکه کسی متوجه وجود این بروز رسانی های مخرب باشد کم خواهد شد. به منظور اجرای یک بروز رسانی نرم افزاری مخرب و هدفمند، یک مهاجم به دو چیز نیاز دارد احتیاج دارد:
۱-در موقعیتی قرار بگیرد که بتواند یک به روز رسانی را انجام دهد.
۲- بتواند نرم افزار آسیب دیده را متقاعد کند که این بروز رسانی مخرب، یک بروز رسانی معتبر میباشد.
و در نهایت، وقتی می گویم "سیستم به صورت کامل تحت کنترل در آمده است" منظورم این است که مهاجم، تمام اختیاراتی که یک برنامه ای که مورد هدف بروز رسانی ها قرار گرفته اند در اختیار دارد را در دست خواهد گرفت. در مورد سیستم عامل، مهاجم میتواند هربرنامه نصب شده روی کامپیوتر را از بین ببرد و تمامی کلید های رمز نگاری و یا سایر داده های رمز گشائی شده ای که اپلیکشن به آنها دسترسی دارد را بدست آورد.
بسیاری از افراد هشیاری که درباره تقاضای روزنامه واشنگتن پست درباره "کلید زرین امنیتی" بحث میکنند، فکر میکنند درباره نوع قدیمی پشتیبان صحبت میکنند، اما برای من یکی که واضح است که منظور نویسندگان آن سر مقاله دقیقاً چه بوده است و متوجه آن تفاوت بودهاند.
اما از دید یک مهاجم، هر قابلیت دارای یک سری مزایاست. قابلیت قبلی باعث میشود که بتوان ارتباطات رمز نگاری شده ای که به صورت غیرفعال جمع آوری شده اند را همراه با سایر داده های رمز نگاری شده ای که بدست آمده اند را رمز گشائی کرد . ظرفیت جدید هم وقتی میتواند استفاده شود که شرایط ویژه ای برای انجام یک حمله فعال وجود داشته باشد، اما وقتی این شرایط وجود داشته باشد این ظرفیت میتواند بیش از پیش به دادههای رمز نگاری شده، دسترسی پیدا کند. هر داده ای که بر روی دستگاه وجود دارد میتواند از میدان خارج شود، از جمله کلیدهای پرمز نگاری و دادههای جدیدی که میتوان آنها را از میکروفونهای نصب شده، دوربینها، و سایر دستگاههای جانبی بدست آورد.
بسیاری از پروژههای نرم افزاری در طی سال های اخیر شروع به بررسی هویت و اعتبار بروز رسانی های خود نموده اند. اما حتی این پروژهها هم که برای دههها در راستای انجام شان تلاش شده است، اغلب دارای نقاطی مجزا از نقص و ویرانی هستند.
در برخی از سیستمها تعدادی کلید وجود دارد که اگر هر کدام شان به خطر بیفتد، احتمال وقوع یک حمله ممکن میشود. در موارد دیگر، این ممکن است از اثراتی ناشی شود که از دو یا حتی سه کلید ضروری بوجود میآیند، اما وقتی تمامی این کلیدها توسط شرکتی یکسان (یا حتی فردی یکسان) کنترل میشوند، سیستم هنوز هم دارای نقاط نقص است.
نسخه ی ۸ سیستم عامل دبیان: معتبرترین نسخه آماده نصب لینوکس، از سال ۱۹۹۳ میلادی دستخوش تغییرات بزرگی بوده است.
سیستم بحث برانگیز "systemd"یک سیستم عامل است که به خاطر ثباتش مشهور است.
این مشکل تقریباً در تمامی سیستمهای به روز رسانی امروزی وجود دارد، حتی سیستم عامل مورد علاقه خود من، دبیان هم این مشکل را دارد. اگر از دبیان یا مشتقات آن مانند اوبانتو استفاده میکنید، میتوانید ببینید چند مشکل در مکانیزم اعتبار سنجی آپدیت خود با این فرمان دارید:
Sudo apt-key list|grep pub|wc-Iwc-I
برای کامپیوتری که من در حال نوشتن بر روی آن هستم، جواب nine است. زمانی که من فرمان به روزرسانی apt-get را اجرا میکنم، هر شخصی که دارای یکی از این ۹ کلیدی که بین من و سرورها وجود دارند باشد، میتوانند نرم افزارهای خطرناکی را برایم بفرستند و من هم آنها را بعنوان نرم افزارهای روت نصب کنم.
چگونه به اینجا رسیدیم؟ چگونه افراد خوش نیت سیستمهایی اینقدر آسیب پذیر با این همه نقص میسازند؟
من فکر میکنم که دلیل این اتفاق سادگی و غرور باشد. این افراد شاید فکر میکنند میتوانند کلیدهای ایمن را در برابر حملات واقعی درست کنند و احتمال این را در نظر نمیگیرند که دولتها وادارشان میکنند از این کلیدها برای انجام بروزرسانی های خطرناک استفاده کنند.
خوشبختانه، خبرهای خوبی رسیده است. اخیراً FBI نشان داده است که این فرضیه چندان خوب نبوده است، یعنی افرادی که گفتهاند برای مدتی طولانی باید نقص ها را حذف کنیم نمیتوانند بی جهت کنار گذاشته شوند.
اگر کمپانی اپل به تروریستها کمک کند و FBI مخالف آنها باشد...ما طرفدار کدام خواهیم بود؟
صفحه روزنامه: کدام یک درست است؟ درواقع٫٫٫طرفداری از هر دو گروه شاید اشتباه باشد.
درباره ویژگیهای اختصاصی موقعیت FBI-اپل چیز زیادی نخواهم نوشت، چون قبلاً در مبحث اکانت ها در این باره با جزئیات زیادی نوشته شده است. مهمترین چیزی که باید به یاد داشته باشیم این است که FBI میخواهد کمپانی اپل به آنها یک آپدیت علامت دهنده دهد که یک ویژگی آیفون را از کار بیندازد و بعد از تعداد مشخصی تلاش برای حدس یک PIN، دادهها را پاک کند. در مورد آیفونهایی که PIN کد کوتاهی دارند این کار بطور موثر باعث شکستن رمزها میشود چون فضای کلید کوچکی را میتواند به سرعت جستجو کرد.
(بر روی سیستم عامل دبیان من، چنین ویژگی وجود ندارد. اگر کسی به هارد درایور رمز نگاری شده ی من دسترس داشته باشد، میتواند به راحتی اطلاعات دیسکم را بخواند. اما خوشبخاته رمزهای سری دیسک هرکسی بر روی کامپیوتر دارای صفحه کلید، قوی تر از PIN های کوتاه است. اگر یک مهاجم بتواند کامپیوتر مرا جوری دستکاری کند که امکان اجرای کدی دلخواه بر روی آن بوجود بیاید، با وجودی که دیسک رمز گشائی شده است، کلید میتواند از خطر در بیاید و طول عبارت رمزی دیسک نیز نامرتبط خواهد بود).
زمانی که کمپانی اپل میگوید FBI سعی کرده ما را مجبور کند که برای محصولات مان یک نقطه آسیب پذیر در پشتی بسازیم، معنی حرف شان این است که در واقع FBI سعی کرده مجبورشان کند از آسیب پذیر در پشتی استفاده نماییم که قبلاً در محصولات شان وجود داشته است.
(درواقع FBI همچنین از آنها خواسته است نرم افزار جدیدی را برنامه نویسی کنند که چندان مرتبط هم نیست، زیرا نمی توانند به کس دیگری پول بدهند تا اینکار را انجام دهد. مسئله این است که کمپانی اپل میتواند نرم افزاری بسازد که هیچکس نمیتواند مشابه آن را بسازد).
آیا منطقی است که این نقاط نقص مجزا را به عنوان آسیب پذیری در پشتی در نظر بگیریم؟
من فکر میکنم که خیلی از افراد موافقند که این سیستمهای صنعتی-استاندارد برای تضمین اعتبار آپدیت نرم افزار، شایستگی در پشتی بودن را ندارند، شاید به خاطر اینکه وجودشان مخفی و پنهانی نیست. اما کمپانی اپل وقتی خودش از عبارت "در پشتی" استفاده میکند، باعث میشود از معنی نقطه مجزای پنهانی نقصش این سوء تعبیر به وجود بیاید که دقیقاً چیزی است که FBI میخواهد.
کمپانی اپل ممکن است بتواند بر این نزاع بوجود آمده با FBI پیروز شود، اما واقعیت این است که ممکن است وسایلی را از دست بدهد. تصور کنید که اگر یک سازمان قاتل و مجرم میخواست به دادههای روی یک آیفون دارای PIN دست پیدا کند چه میشد. هر اتفاقی که میافتاد این سازمان میتوانست افرادی را پیدا کند که میدانند تکنولوژی چگونه کار میکند و در نتیجه راهی پیدا میکردند تا کشف رمز امکان پذیر شود. اگر افراد با انگیزه تصمیم بگیرند به کلید طلایی امنیتی سترسی پیدا کنند، دسترسی به آن تاحدی خطرناک خواهد بود.
من امیدوارم که تقاضای FBI از کمپانی اپل هشداری باشد برای بسیاری از افرادی که در زمینه زیرساخت های توزیع نرم افزارهای محبوب، مسئول هستند. انتظار دارم که در آینده ای نه چندان دور، حداقل برای بسیاری از برنامهها، مهاجمان اینترنتی که میخواهند آپدیتهای اجرایی را مورد هدف قرار دهند، نتوانند این کار را بدون گروهی از افراد اصلی که در حوزهی قضایی قانونی فعالیت دارند، انجام دهند. تعدادی از پروژههای در دست انجام که میتوانند به کسب این هدف کمک کنند عبارتاند از پروژه DeDiS Cothority و پروژه Notary.
عدم وجود نقاط نقص باید یک امر ضروری برای هر مکانیزم توزیع نرم افزار جدیدی باشد که امروزه به کار گرفته میشود.
منبع: arstechnica