ハードウェアセキュリティの最新動向

2019年に公表されたMDS(マイクロアーキテクチャデータサンプリング)と呼ばれる脆弱性の特徴として、正しいものはどれか。

  1. A分岐予測器をわざと誤って学習させ、被害者のプログラムに、範囲の外にある配列の要素を投機的に読ませて秘密を取り出す
  2. BDRAMの同じ行を短い時間に何度も活性化して、隣の行のセルの電荷を失わせ、ほかのプロセスやカーネルのデータのビットを反転させる
  3. CラインフィルバッファなどCPUの中のバッファに一時的に置かれた、ほかの処理のデータを、一時的に実行された命令が受け取ってしまう
答えと解説を見る

正解:C. ラインフィルバッファなどCPUの中のバッファに一時的に置かれた、ほかの処理のデータを、一時的に実行された命令が受け取ってしまう

MDSは、RIDL、Fallout、ZombieLoadなどの名前で公表された一連の過渡的実行攻撃です。影響を受けたCPUでは、読み込みが例外などで取り消される場合に、キャッシュではなく内部のバッファに残っていた別のプロセスやカーネルのデータが、一時的に実行される後続の命令に渡ることがあり、それをキャッシュのサイドチャネルで取り出せました。攻撃者は読む番地を選べませんが、繰り返し観測して秘密を集められます。対策として、特権を切り替えるときに内部のバッファを消す機能がマイクロコードの更新で加えられましたが、SMTで同じコアを同時に使う別のスレッドからは切り替えなしに観測されるので、信頼できない相手とコアを共有しないことも必要になりました。

  • A. Spectre(境界チェックを回避する型)の説明です。
  • B. ロウハンマーの説明です。
  • C. 正しい。キャッシュではなく、内部のバッファにあるデータが漏れるのが特徴です。
この分野を解く 分野ページへ

ハードウェアセキュリティの最新動向の参考書を探す PR

Amazonの検索結果へのリンクです。Amazonのアソシエイトとして、半導体教室は適格販売により収入を得ています。

ハードウェアセキュリティの最新動向のほかの問題

  1. 間接分岐の予測を悪用するSpectreの変種(分岐ターゲットインジェクション)への対策である、retpolineとIBRSの説明の組み合わせとして、正しいものはどれか。
  2. ある処理は、投機的実行への対策を入れる前に10秒かかり、その間にシステムコールを500万回呼んでいた。対策を入れると、システムコール1回あたりの処理時間が0.4 µsから0.6 µsに増え、それ以外の部分の時間は変わらないとする。処理全体の時間の増加の割合はどれか。
  3. 格子に基づく耐量子計算機暗号では、次数 n = 256 の多項式の掛け算を何度も行う。係数どうしをすべて掛け合わせる素朴な方法では約 n² 回、数論変換(NTT)を使う方法では約 n log₂ n 回の掛け算が必要とすると、NTTを使うことで掛け算の回数がおよそ何分の1になるかとして、最も近いものはどれか。
  4. ML-KEM-768の公開鍵は1,184バイト、暗号文は1,088バイトで、楕円曲線の鍵交換X25519の公開値は32バイトである。ML-KEM-768の公開鍵の大きさが、X25519の公開値の何倍かとして、正しいものはどれか。
  5. ML-KEMのカプセル化の解除では、受け取った暗号文を秘密鍵で復号した結果から暗号文をもう一度作り、受け取った暗号文と一致するかを比べる。この部分の実装の注意として、正しいものはどれか。