ارایه‌ یک حمله‌ زمانی جدید بر روی پردازنده‌ ARM و پیاده‌سازی عملی آن بر روی برد Raspberrypi3

نوع مقاله: مقاله پژوهشی

نویسندگان

1 دانشجوی کارشناسی ارشد، مخابرات امن و رمزنگاری، دانشگاه شهید بهشتی، تهران،

2 استادیار، گروه امنیت شبکه و رمز نگاری، پژوهشکده فضای مجازی دانشگاه شهید بهشتی

چکیده

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

کلیدواژه‌ها


[1]       D. J. Bernstein, “Cache-timing attacks onAES,” 2005.

[2]          J. Bonneau and I. Mironov, “Cache-collision timing attacks against AES,” In International Workshop on Cryptographic Hardware and Embedded Systems, Springer, pp. 201-215, 2006.##

[3]          E. Tromer, D. A. Osvik, and A. Shamir, “Efficient cache attacks on AES, and countermeasures,” Journal of Cryptology, vol. 23, no. 1, pp. 37-71, 2010.##

[4]          Y. Yarom and K. Falkner, “FLUSH+ RELOAD: A High Resolution, Low Noise, L3 Cache Side-Channel Attack,” In USENIX Security Symposium, pp. 719-732, 2014.##

[5]          D. Gruss, R. Spreitzer, and S. Mangard, “Cache Template Attacks: Automating Attacks on Inclusive     Last-Level Caches,” In USENIX Security Symposium, pp.   897-912, 2015.##

[6]          D. Gruss, C. Maurice, K. Wagner, and S. Mangard, “Flush+ Flush: a fast and stealthy cache attack,” In International Conference on Detection of Intrusions and Malware, and Vulnerability Assessment, Springer, pp.  279-299, 2016.##

[7]          A. Bogdanov, T. Eisenbarth, C. Paar, and M. Wienecke, “Differential cache-collision timing attacks on AES with applications to embedded CPUs,” In Cryptographers’ Track at the RSA Conference, Springer, pp. 235-251, 2010.##

[8]          M. Weiß, B. Heinz, and F. Stumpf, “A cache timing attack on AES in virtualization environments,” In International Conference on Financial Cryptography and Data Security, Springer, pp. 314-328, 2012.##

[9]          R. Spreitzer and T. Plos, “On the Applicability of Time-Driven Cache Attacks on Mobile Devices (Extended Version⋆),” 2013.## 

[10]        M. Lipp, D. Gruss, R. Spreitzer, C. Maurice, and S. Mangard, “ARMageddon: Cache Attacks on Mobile Devices,” In USENIX Security Symposium, pp. 549-564, 2016.##

[11]  D. Gruss, C. Maurice, and S. Mangard, “Rowhammer. js: A remote software-induced fault attack in javascript,” In International Conference on Detection of Intrusions and Malware, and Vulnerability Assessment, Springer, pp.  300-321, 2016.##

[12]      M. Lipp, M .Schwarz, D.Gruss, T. Prescher, W. Haas, S. Mangard, P. Kocher, D. Genkin, Y. Yarom, M. Hamburg, Meltdown, arXiv, 2018.##