[論文レビュー] ARMageddon: Last-Level Cache Attacks on Mobile Devices
本論文は、ARM Cortex-Aモバイルプロセッサにおける最初のアクセスベースのクロスコアキャッシュ攻撃であるEvict+Reloadを紹介し、非ルート化されたデバイスでも一般のサイドチャnel攻撃を可能にする。これにより、数百万台の市販スマートフォンにおいて、タッチスクリーン入力パターンや暗号化処理のタイミングといったキャッシュベースのサイドチャネル漏洩を悪用できることが示された。
In the last 10 years cache attacks on Intel CPUs have gained increasing attention among the scientific community. More specifically, powerful techniques to exploit the cache side channel have been developed. However, so far only a few investigations have been performed on modern smartphones and mobile devices in general. In this work, we describe Evict+Reload, the first access-based cross-core cache attack on modern ARM Cortex-A architectures as used in most of today’s mobile devices. Our attack approach overcomes several limitations of existing cache attacks on ARM-based devices, for instance, the requirement of a rooted device or specific permissions. Thereby, we broaden the scope of cache attacks in two dimensions. First, we show that all existing attacks on the x86 architecture can also be applied to mobile devices. Second, despite the general belief these attacks can also be launched on non-rooted devices and, thus, on millions of off-the-shelf devices. Similarly to the well-known Flush+Reload attack for the x86 architecture, Evict+Reload allows to launch generic cache attacks on mobile devices. Based on cache template attacks we identify information leaking through the last-level cache that can be exploited, for instance, to infer tap and swipe events, inter-keystroke timings as well as the length of words entered on the touchscreen, and even cryptographic primitives implemented in Java. Furthermore, we demonstrate the applicability of Prime+Probe attacks on ARM Cortex-A CPUs. The performed example attacks demonstrate the immense potential of our proposed attack techniques.
研究の動機と目的
- x86アーキテクチャとARMモバイルアーキテクチャの間のキャッシュサイドチャネル攻撃のギャップを埋めること。
- 従来x86システムに限定されていたキャッシュ攻撃が、最新のARMベーススマートフォンにも適応可能であることを実証すること。
- モバイルデバイス上でルートアクセスや特別な権限を必要としていた過去の制限を克服すること。
- 非ルート化、市販のモバイルデバイスにおいても最後段階キャッシュ(LLC)を用いたサイドチャネル攻撃が実現可能であることを示すこと。
- 実際のモバイルワークロード、特にユーザー入力や暗号化処理を含む、キャッシュベースのサイドチャネル攻撃の実用性を検証すること。
提案手法
- x86からARM Cortex-AアーキテクチャへのEvict+Reload技術の適応により、クロスコアキャッシュサイドチャネル攻撃を実現すること。
- 最後段階キャッシュ(LLC)を通じた情報漏洩を特定・悪用するためにキャッシュテンプレート攻撃を用いること。
- 正確なタイミング測定によるキャッシュアクセス監視を実施し、機密操作を推定すること。
- ARM Cortex-A CPU上でPrime+Probe攻撃が実現可能であることを実証することにより、キャッシュベースのサイドチャネル分析を可能とすること。
- CPUコア間で共有される最後段階キャッシュを活用し、共存するプロセスのアクセスパターンを監視すること。
- タッチスクリーン入力タイミングの検出や暗号化プリミティブの実行といった、実世界のシナリオへの応用を実施すること。
実験結果
リサーチクエスチョン
- RQ1x86からARM Cortex-AモバイルプロセッサにEvict+Reloadのようなアクセスベースのキャッシュサイドチャネル攻撃を成功裏に移植可能か?
- RQ2特別な権限がなくても、非ルート化されたモバイルデバイス上でどの程度キャッシュサイドチャネル攻撃を実行できるか?
- RQ3モバイルデバイスにおける最後段階キャッシュアクセスパターンから、どのような機密情報が推定可能か?
- RQ4ARMベースのモバイルシステムにおいて、Prime+ProbeおよびEvict+Reload技術の有効性はどの程度か?
- RQ5タイピングやスワイプといった実世界のユーザー操作が、最後段階キャッシュサイドチャネル漏洩から逆算可能か?
主な発見
- Evict+Reloadは、最新のARM Cortex-Aモバイルプロセッサ上で成功裏に実装・実証され、クロスコアキャッシュサイドチャネル攻撃を可能にした。
- 攻撃は非ルート化デバイスでも動作し、数百万台の市販スマートフォンに適用可能である。
- 最後段階キャッシュアクセスパターンから、キーストローク間隔、単語長、スワイプ/タップイベントといった機密情報が推定可能である。
- Javaで実装された暗号化プリミティブは、提案手法によるキャッシュサイドチャネル分析に対して脆弱である。
- Prime+Probe攻撃もARM Cortex-A CPU上で適用可能であり、キャッシュベースのサイドチャネル攻撃の範囲を拡大している。
- 本研究は、最後段階キャッシュサイドチャネル攻撃がx86システムに限定されるものではなく、モバイルプラットフォームに対しても実在の脅威であることを確認した。
より良い研究を、今すぐ始めましょう
論文設計から論文執筆まで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。