ارایه یک حمله زمانی جدید بر روی پردازنده ARM و پیادهسازی عملی آن بر روی برد Raspberrypi3
نویسندگان
1 استادیار، گروه امنیت شبکه و رمز نگاری، پژوهشکده فضای مجازی دانشگاه شهید بهشتی
2 دانشجوی کارشناسی ارشد، مخابرات امن و رمزنگاری، دانشگاه شهید بهشتی، تهران،
doi
چکیده
دسته مهمی از حملات کانال جانبی از این حقیقت استفاده میکنند که حافظه نهان منجر به تغییرات زمانی در اجرای الگوریتمهای رمزنگاری و در نتیجه نشت اطلاعات میشود. علیرغم آنکه حملات کانال جانبی مبتنیبر وجود حافظه نهان به علت کارایی زیاد، از مهمترین و پرکاربردین حملات کانال جانبی محسوب میشوند، نسبت به سایر حملات کانال جانبی کمتر مورد مطالعه قرار گرفتهاند. بر همین اساس تحقیقات گستردهای توسط جامعه رمزنگاری در حوزه حملات کانال جانبی مبتنیبر وجود حافظه نهان صورت گرفته است. تمرکز تحقیقات صورت گرفته عمدتا بررسی امنیت اجرای الگوریتمهای رمزنگاری توسط پردازندههای اینتل و پنتیوم بوده است که با توجه به ساختار متفاوت حافظه نهان در پردازندههای مختلف، قابل تعمیم به پرازندههای پرکاربرد دیگر، نظیر ARM نیست. در پاسخ به این چالش، تحقیقات جدید به اعمال حملات کانال جانبی مبتنیبر حافظه نهان بر روی پردازندههای انواع تلفنهای همراه و بردهای کاربردی دیگر از جمله پردازندههای ARM، معطوف شده است. متفاوت بودن ساختار حافظه نهان و عدم پشتیبانی از بعضی دستورات مورد نیاز جهت اجرای حملههای مبتنیبر حافظه نهان، اجرای این دسته از حملات را بر روی پردازندههای ARM دشوار کرده است. در این مقاله ما برای اولین بار به بررسی اعمال حمله کانالجانبی زمانی مبتنیبر حافظه نهان با استفاده از رویداد تصادم بر روی یکی از پردازندههای ARM میپردازیم. حمله ارایهشده در این مقاله، از نوع حملات کاربردی time-driven است که در آن مهاجم تنها باید زمان اجرای عملیات رمزنگاری را اندازهگیری کند و برخلاف حملات access-driven، مهاجم نیازی به دسترسی به حافظه نهان قربانی را ندارد. همچنین حمله ارائهشده را با استفاده از یک برد پراستفاده در صنعت با نام Raspberrypi3 که مجری سامانهعامل رزبین است، پیادهسازی کردیم که نتایج نشاندهنده صحت حمله ارائه شده است.