Skip to main content
QUICK REVIEW

[論文レビュー] Your Processor Leaks Information - and There's Nothing You Can Do About It

Qian Ge, Yuval Yarom|arXiv (Cornell University)|Dec 14, 2016
Security and Verification in Computing参考文献 41被引用数 12
ひとこと要約

この論文は、現代のx86およびARMプロセッサが、OSレベルのフラッシュメカニズムがあるにもかかわらず、キャッシュ、分岐予測器、プリフェッチャーなどのマイクロアーキテクチャ的タイミングチャネルを通じて、本質的に情報漏洩を起こしていることを示している。著者らは、すべての既知の緩和策を適用しても、依然として高容量のチャネルが残存することを示しており、現代の主流プロセッサが状態のパーティショニングやフラッシュのためのハードウェア支援がない限り、こうしたサイドチャネル攻撃から保護できないことを証明している。

ABSTRACT

Timing channels are information flows, encoded in the relative timing of events, that bypass the system's protection mechanisms. Any microarchitectural state that depends on execution history and affects the rate of progress of later executions potentially establishes a timing channel, unless explicit steps are taken to close it. Such state includes CPU caches, TLBs, branch predictors and prefetchers; removing the channels requires that the OS can partition such state or flush it on a switch of security domains. We measure the capacities of channels based on these microarchitectural features on several generations of processors across the two mainstream ISAs, x86 and ARM, and investigate the effectiveness of the flushing mechanisms provided by the respective ISA.We find that in all processors we studied, at least one significant channel remains. This implies that closing all timing channels seems impossible on contemporary mainstream processors.

研究の動機と目的

  • 現代のx86およびARMプロセッサ上でマイクロアーキテクチャ的タイミングチャネルを完全に閉じられるかどうかを調査すること。
  • キャッシュ、TLB、分岐予測器、プリフェッチャーなどの機能に起因するタイミングチャネルの容量を測定すること。
  • 既存のOSレベルのフラッシュメカニズムがこれらのチャネルを閉じる効果的かどうかを評価すること。
  • 既知の対策があっても依然として利用可能なマイクロアーキテクチャ的特徴を同定すること。
  • 現在のISAが安全なシステム設計に不十分であり、ハードウェア・ソフトウェア契約の拡張を提唱すること。

提案手法

  • x86およびARMプロセッサのすべての既知のキャッシングマイクロアーキテクチャ的特徴を標的としたコントロールドタイミングチャネルを実装した。
  • 複数のプロセッサ世代で、OSレベルのフラッシュメカニズムの有無にかかわらずチャネル容量を測定した。
  • 命令プリフェッチの挙動を分析し、残存チャネルの生成における役割を特定した。
  • 分岐ターゲットバッファおよび分岐履歴バッファが、持続的なタイミングチャネル源であることを評価した。
  • 信頼区間を用いたプローブ技術を用いてチャネル容量および残存漏洩を定量した。
  • wbinvdなどの既存のISAメカニズムの限界、特に選択的キャッシュフラッシュの欠如を評価した。

実験結果

リサーチクエスチョン

  • RQ1現代のx86およびARMプロセッサ上で、既知のOSレベルのフラッシュ技術を用いてマイクロアーキテクチャ的タイミングチャネルを完全に排除できるか?
  • RQ2すべての既知の緩和策を適用した後、現代のプロセッサ上で残存するチャネル容量はどの程度か?
  • RQ3分岐予測器やプリフェッチャーなどのマイクロアーキテクチャ的コンponentsは、フラッシュがあっても依然として利用可能か?
  • RQ4Iキャッシュおよび分岐履歴構造において、なぜ残存チャネルが持続するのか?
  • RQ5現在のISAは、履歴依存マイクロアーキテクチャ状態の安全なパーティショニングやフラッシュをどの程度サポートしているか?

主な発見

  • テストされたすべてのx86およびARMプロセッサにおいて、OSレベルの完全なフラッシュがあっても、少なくとも1つの顕著なタイミングチャネルが依然として動作している。
  • x86の分岐ターゲットバッファは、既存の技術では緩和できないタイミングチャネルを提供している。
  • x86の分岐履歴バッファおよび最近のARMプラットフォームでも、修正不能なタイミングチャネルを提供している。
  • x86およびARMの両方で、Iキャッシュの残存チャネルが観察され、これは命令プリフェッチに起因している。
  • 完全な緩和策を適用しても、SkylakeのTLBコントロールドチャネルは0.11ビットの残存容量を保持しており、ベースラインは0.06ビットである。
  • 本研究の結論として、すべてのマイクロアーキテクチャ的タイミングチャネルを完全に閉じられる既知のメカニズムは存在せず、現在の主流プロセッサは機密作業負荷に対して本質的に不安全である。

より良い研究を、今すぐ始めましょう

論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。