「CPU に対するサイドチャネル攻撃」に関する覚え書き

no extension

脆弱性の内容

投機的実行機能やアウトオブオーダー実行機能を持つ CPU に対してサイドチャネル攻撃を行う手法が報告されている。 攻撃手法としては “Meltdown ” と “Spectre ” の2つがあるようだ。

想定される影響としては

ユーザ権限で実行中のプロセスから、カーネルメモリの情報を取得される可能性があります。
Spectre 攻撃に関しては、細工された Javascript コードによって、Javascript からは取得できないはずの web ブラウザプロセス中のデータを取得可能であると報告されています。
via CPU に対するサイドチャネル攻撃

とのこと。

影響度(CVSS)

CVSSv3 基本評価値 4.7 (CVSS:3.0/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:N/A:N)

基本評価基準 評価値
攻撃元区分(AV) ローカル(L)
攻撃条件の複雑さ(AC) 高(H)
必要な特権レベル(PR) 低(L)
ユーザ関与レベル(UI) 不要(N)
スコープ(S) 変更なし(U)
情報漏えいの可能性(機密性への影響, C) 高(H)
情報改ざんの可能性(完全性への影響, I) なし(N)
業務停止の可能性(可用性への影響, A) なし(N)

CVSS については解説ページを参照のこと。

一般的にサイドチャネル攻撃は条件の複雑さから影響度が低く見積もられる。 この脆弱性は2017年春頃からベンダ企業などには知らされていたが,2018年早々にリークされ批判を浴びている模様。

(2018-01-10 追記: 機密性への影響が「低」から「高」へ格上げ)

影響を受ける製品

  • プロセッサとしては Intel, AMD, ARM の各製品が影響を受けるとされている
    • Intel については1995年以降に製造された Itanium/Atom を除くプロセッサが対象
    • AMD や ARM については影響度を調査中
  • Meltdown についてはExploit Code が公開されており Windows および Linux 環境で動作する
    • ただし AMD, ARM については,公開されているコードでは動作しないらしい?
    • Xen PV などによる仮想化マシンは影響を受ける
    • Docker, LXC, OpenVZ などのコンテナ・ソリューションは影響を受ける
  • Spectre については各種 Web ブラウザが影響を受ける

対策・回避策

根本的な対策はプロセッサを含めた ハードウェア, ファームウェア, OS を一新するしかないが,プロセッサの再設計と製造には数年かかると言われ現実的ではない。 当面の緩和措置として対応するのであれば,今のところソフトウェア側で行うことになる。 ただしソフトウェア側で対策するとなるとパフォーマンスが犠牲にならざるを得ない。

ブックマーク

なお、“Meltdown”“Spectre”脆弱性のパッチはウイルス対策ソフトとの互換性問題を抱えている。先にウイルス対策ソフトをアップデートして、互換性が取れた旨をレジストリの特定エントリーにマーキングしないと“Windows Update”から更新プログラムを受信できない場合があるので注意したい。
via Microsoft、2018年1月のセキュリティ更新プログラムを公開