[論文レビュー] Prime+Probe 1, JavaScript 0: Overcoming Browser-based Side-Channel Defenses
この論文は、JavaScriptベースの防御(完全なスクリプトブロッキングを含む)を回避するCSSおよびHTMLでの実装が可能な、最初のブラウザベースのサイドチャnel攻撃を示している。Intel、AMD、Apple M1、Samsung Exynosチップ上で、アーキテクチャに依存しないキャッシュベースのウェブサイトファングプリントを高精度で実現した。Chrome Zero、DeterFox、Torブラウザの保護をも回避した。
The "eternal war in cache" has reached browsers, with multiple cache-based side-channel attacks and countermeasures being suggested. A common approach for countermeasures is to disable or restrict JavaScript features deemed essential for carrying out attacks. To assess the effectiveness of this approach, in this work we seek to identify those JavaScript features which are essential for carrying out a cache-based attack. We develop a sequence of attacks with progressively decreasing dependency on JavaScript features, culminating in the first browser-based side-channel attack which is constructed entirely from Cascading Style Sheets (CSS) and HTML, and works even when script execution is completely blocked. We then show that avoiding JavaScript features makes our techniques architecturally agnostic, resulting in microarchitectural website fingerprinting attacks that work across hardware platforms including Intel Core, AMD Ryzen, Samsung Exynos, and Apple M1 architectures. As a final contribution, we evaluate our techniques in hardened browser environments including the Tor browser, Deter-Fox (Cao el al., CCS 2017), and Chrome Zero (Schwartz et al., NDSS 2018). We confirm that none of these approaches completely defend against our attacks. We further argue that the protections of Chrome Zero need to be more comprehensively applied, and that the performance and user experience of Chrome Zero will be severely degraded if this approach is taken.
研究の動機と目的
- 微細アーキテクチャ的サイドチャネル攻撃に必要な最小限のブラウザ機能を特定すること。
- Chrome Zero、DeterFox、Torブラウザなどのブラウザ側防御の有効性を評価すること。
- ハードウェア固有の微細アーキテクチャ的詳細に依存しないサイドチャネル技術を開発すること。
- JavaScriptが完全に無効化されている場合でも、キャッシュベースのサイドチャネル漏洩が継続することを実証すること。
提案手法
- CSSトランジションと外部DNSサーバーを介したタイミングベースのプローブを用いたCSS Prime+Probe攻撃を開発。
- 協力的なDNSサーバーを用いてプローブの遅延を遠隔で測定し、JavaScriptタイマーに依存しないようにした。
- DNSクエリを介してプローブ結果を送信するための文字列ベースの符号化方式(StringおよびSock)を採用。
- 異なるウェブサイトにおけるプローブ遅延分布の分析を通じてウェブサイトファングプリントを実施。
- Intel Core、AMD Ryzen、Apple M1、Samsung Exynosの多様なアーキテクチャで攻撃を検証。
- 制御されたトレースデータセットを用いて、Chrome Zero、DeterFox、Torブラウザなどの硬化されたブラウザ環境における耐性を評価。
実験結果
リサーチクエスチョン
- RQ1JavaScriptが完全に無効化された状態でも、ブラウザ上で微細アーキテクチャ的サイドチャネル攻撃を実行可能か?
- RQ2サイドチャネル攻撃に不可欠なブラウザ機能は何か?また、どの機能は排除可能か?
- RQ3多様なCPU微細アーキテクチャにわたって、サイドチャネル攻撃をアーキテクチャに依存しない形で実現可能か?
- RQ4Chrome Zero、DeterFox、Torブラウザのような硬化されたブラウザ環境は、こうした攻撃を効果的に防止できるか?
- RQ5JavaScriptを一切使用せずに、CSSとHTMLのみでウェブサイトファングプリントを実現可能か?
主な発見
- CSS Prime+Probe攻撃は、JavaScriptを一切使用せずにサイドチャネル漏洩を成功させ、DeterFoxではトップ1正答率66%、トップ5正答率88%を達成した。
- Torブラウザではトップ1正答率20%、トップ5正答率49%を達成し、それぞれベースラインの1%および5%を著しく上回った。
- Apple M1、AMD Ryzen、Samsung Exynos、Intel Coreプロセッサの全アーキテクチャで、ハードウェア固有の変更なしに攻撃が有効であった。
- Chrome Zeroのタイマー制限は攻撃を阻止できず、技術的手段がJavaScriptのタイミングAPIを完全に回避していたため。
- DeterFoxの決定論的タイミングモデルも、タイミング測定が外部のDNSを介して行われていたため、攻撃を阻止できなかった。
- 本研究は、微細アーキテクチャリソースの共有が継続する限り、現在のブラウザ側対策ではサイドチャネル漏洩を十分に防止できないことを確認した。
より良い研究を、今すぐ始めましょう
論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。